NIF Objects | Compound Types | Enum Types | Basic Types | File Versions
| Name | Type | Description |
|---|---|---|
| From NiObject | ||
| From NiGeometryData | ||
| Group ID | int | Always zero. |
| Num Vertices | ushort | Number of vertices. |
| Num Vertices | ushort | Number of vertices. |
| BS Max Vertices | ushort | Bethesda uses this for max number of particles in NiPSysData. |
| Keep Flags | byte | Used with NiCollision objects when OBB or TRI is set. |
| Compress Flags | byte | Unknown. |
| Has Vertices | bool | Is the vertex array present? (Always non-zero.) |
| Vertices | Vector3 | The mesh vertices. |
| Vector Flags | VectorFlags | |
| BS Vector Flags | BSVectorFlags | |
| Material CRC | uint | |
| Has Normals | bool | Do we have lighting normals? These are essential for proper lighting: if not present, the model will only be influenced by ambient light. |
| Normals | Vector3 | The lighting normals. |
| Tangents | Vector3 | Tangent vectors. |
| Bitangents | Vector3 | Bitangent vectors. |
| Center | Vector3 | Center of the bounding box (smallest box that contains all vertices) of the mesh. |
| Radius | float | Radius of the mesh: maximal Euclidean distance between the center and all vertices. |
| Unknown 13 shorts | short | Unknown, always 0? |
| Has Vertex Colors | bool | Do we have vertex colors? These are usually used to fine-tune the lighting of the model. Note: how vertex colors influence the model can be controlled by having a NiVertexColorProperty object as a property child of the root node. If this property object is not present, the vertex colors fine-tune lighting. Note 2: set to either 0 or 0xFFFFFFFF for NifTexture compatibility. |
| Vertex Colors | Color4 | The vertex colors. |
| UV Sets | TexCoord | The UV texture coordinates. They follow the OpenGL standard: some programs may require you to flip the second coordinate. |
| Consistency Flags | ConsistencyType | Consistency Flags |
| Additional Data | Ref<AbstractAdditionalGeometryData> | Unknown. |
| From NiParticlesData | ||
| Has Radii | bool | Is the particle size array present? |
| Radii | float | The individual particle sizes. |
| Num Active | ushort | The number of active particles at the time the system was saved. This is also the number of valid entries in the following arrays. |
| Has Sizes | bool | Is the particle size array present? |
| Sizes | float | The individual particle sizes. |
| Has Rotations | bool | Is the particle rotation array present? |
| Rotations | Quaternion | The individual particle rotations. |
| Has Rotation Angles | bool | Are the angles of rotation present? |
| Rotation Angles | float | Angles of rotation |
| Has Rotation Axes | bool | Are axes of rotation present? |
| Rotation Axes | Vector3 | Axes of rotation. |
| Has Texture Indices | bool | |
| Num Subtexture Offsets | uint | How many quads to use in BSPSysSubTexModifier for texture atlasing |
| Num Subtexture Offsets | byte | 2,4,8,16,32,64 are potential values. If "Has" was no then this should be 256, which represents a 16x16 framed image, which is invalid |
| Subtexture Offsets | Vector4 | Defines UV offsets |
| Aspect Ratio | float | Sets aspect ratio for Subtexture Offset UV quads |
| Aspect Flags | ushort | |
| Speed to Aspect Aspect 2 | float | |
| Speed to Aspect Speed 1 | float | |
| Speed to Aspect Speed 2 | float | |
| From NiRotatingParticlesData | ||
| From NiParticleMeshesData | ||
| Unknown Link 2 | Ref<NiAVObject> | Refers to the mesh that makes up a particle? |