What is the difference between static meshes and regular 3D models. I am very new to game development, and I am using UDK (Unreal Development Kit).
According to UDN's page on static meshes:
"A Static Mesh is a piece of geometry that consists of a set of polygons which can be cached in video memory and rendered by the graphics card."
There really isn't much of a difference, other than that static meshes as UDK understands them are stored inside a package, (often if not always) associated with a material and a collision mesh, and usually have LODs which are themselves separate "regular 3d models" (though these can be automatically generated by Simplygon from inside the UDK static mesh editor).
I suspect you're asking "How can I import my 3d model into UDK, and use it as a static mesh?" in which case, there are a number of ways. The basic rundown is:
- Find a plugin for your 3D package that supports exporting ASE or FBX format.
- Import your ASE/FBX into a package as a static mesh.
- If necessary, associate a material and collision mesh with it.
Of course, there are finer details to consider regarding UV setup for Lightmass, smoothing groups, etc., but those will all depend on your 3d authoring tool.
If you're just getting started, I would recommend taking a look at 3dbuzz' "Creating a Simple Level" video series. It requires (free) registration, but they cover all the highlights of what goes into using your assets in the UDK.
"Static" in "static mesh" doesn't mean "doesn't move" – it can be moved, rotated, retextured and scaled (even disproportionally) in realtime. The "static" only refers to the fact that it can't be animated, that is, the relative positions of the vertices are fixed. Hence, static meshes are useful for displaying pieces of architecture that don't move at all or might move as a whole, but they're no good for displaying players, whose bodies need to bend and change shape.
Static meshes are cached into video memory, and so can be displayed many times with little extra overhead. Static meshes are a list of vertices stored once in the video memory (as opposed to "once per frame"), so drawing many copies of one static mesh is a relatively simple operation. When the static mesh is to be displayed on the screen, the engine only has to tell the video card where (and at which size, rotation, and with which textures) to do it.
There is a difference to be made between "static mesh resources", as seen in the browser, which are stored like textures; and "static mesh actors" which are placed into a map. Don't confuse meshes with actors. A mesh (static or otherwise) is just the visual representation of an actor. For instance, weapon pickups display a static mesh in UT2003 as long as they're just waiting to be picked up over their spawn point.
Basically, they're cheaper to draw if you say that they don't animate.