NMS:Reference Guides/GEOMETRY

From STEP Modding Wiki
BannerLogo
Game Structure // GEOMETRY

GEOMETRY Files

GEOMETRY files, usually in the form NAME.GEOMETRY.MBIN.PC are MBIN files containing 3D model data. The Blender Import Plugin is responsible for writing all data here, rather than doing so manually and as such, the GEOMETRY file is usually left untouched. An empty SCENE will work but still require an empty GEOMETRY file. On the other hand, No Man's Model Viewer is also capable of reading these files as well as exporting to a more usable *.obj file.

In the VertexLayout and SmallVertexLayout there are a number of VertexElement nodes. Each node corresponds to a set of data in the VertexStream and SmallVertexStream. An important value in this data is the SemanticID. It can take a number of values, which dictate how the geometry data is to be read/packed.

SemanticID
  • 0 - Vertices - packed using the opengl format code 5131 (IEEE half-float)
  • 1 - UV's - packed using the opengl format code 5131 (IEEE half-float)
  • 2 - Normals - packed using the opengl format code 36255 (INT_2_10_10_10_REV)
  • 3 - Tangents - packed using the opengl format code 36255 (INT_2_10_10_10_REV)
  • 4 - Bitangents - packed using the opengl format code 5121 (GL_HALF_NV or GL_UNSIGNED_BYTE ?)
  • 5 - Blend Indices - packed using the opengl format code 5121 (GL_HALF_NV or GL_UNSIGNED_BYTE ?)
  • 6 - Blend Weights - packed using the opengl format code 5131 (IEEE half-float)