Module ssbh_lib::formats::mesh[][src]

Expand description

The Mesh format stores the geometric data used for model rendering. These files typically use the “.numshb” suffix like “model.numshb”. This includes attribute data such as position and normals, vertex skinning, and bounding volume information. Mesh files are linked with Skel and Matl files using a Modl file.

Structs

BoundingInfo
BoundingSphere
BoundingVolume

A region of 3d space that contains a set of points. This is equivalent to an axis-aligned bounding box (abbreviated AABB) for the XYZ axes.

Mesh

The vertex buffers and associated geometric data for a mesh. Compatible with file version 1.8 and 1.10.

MeshAttributeV8
MeshAttributeV10
MeshBoneBuffer
MeshObject

A vertex collection identified by its name and sub_index. In addition to organizing the model into logical components, material and rigging data are assigned per MeshObject.

MeshRiggingGroup

Vertex skinning data for the vertices for the MeshObject determined by mesh_object_name and mesh_object_sub_index.

OrientedBoundingBox
RiggingFlags
VertexWeightV8
VertexWeightV10

The element type for vertex rigging data stored in version 1.10 byte buffers.

Enums

AttributeDataType

The data type and component count for the attribute’s data. This determines the stride and offset between attributes.

AttributeDataTypeV8

The data type and component count for the attribute’s data. This determines the stride and offset between attributes.

AttributeUsageV8

Determines how the attribute data will be used by the shaders. Attributes with an identical usage should each have a unique sub_index.

AttributeUsageV10

Determines how the attribute data will be used by the shaders. Attributes with an identical usage should each have a unique sub_index. Starting with Mesh version 1.10, Smash Ultimate also considers name and attribute_names when determing the usage in some cases.

DrawElementType

Possible values for draw_element_type.

MeshAttributes
RiggingType

Possible values for rigging_type.

VertexWeights