Package pyffi :: Package formats :: Package nif :: Class NifFormat :: Class _NiGeometryData
[hide private]
[frames] | no frames]

Class _NiGeometryData

source code

                  object --+                    
                           |                    
      utils.graph.DetailNode --+                
                               |                
          utils.graph.GlobalNode --+            
                                   |            
object_models.xml.struct_.StructBase --+        
                                       |        
                     NifFormat._NiObject --+    
                                           |    
                          NifFormat.NiObject --+
                                               |
                                              NifFormat._NiGeometryData
Known Subclasses:

Mesh data: vertices, vertex normals, etc.
Nested Classes [hide private]

Inherited from object_models.xml.struct_.StructBase: __metaclass__

Instance Methods [hide private]

Inherited from NiObject: apply_scale, find, find_chain, is_interchangeable, tree

Inherited from NiObject (private): _validateTree

Inherited from object_models.xml.struct_.StructBase: __init__, __str__, deepcopy, fix_links, get_attribute, get_basic_attribute, get_detail_child_names, get_detail_child_nodes, get_global_child_nodes, get_global_display, get_hash, get_links, get_refs, get_size, get_strings, get_template_attribute, read, replace_global_node, set_attribute, set_basic_attribute, set_template_attribute, write

Inherited from utils.graph.GlobalNode: get_global_child_edge_types, get_global_iterator

Inherited from utils.graph.DetailNode: get_detail_child_edge_types, get_detail_display, get_detail_iterator

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __subclasshook__

Class Methods [hide private]

Inherited from object_models.xml.struct_.StructBase: get_games, get_versions

Class Variables [hide private]
  _attribute_list = [<pyffi.object_models.xml.StructAttribute ob...
  _attrs = [<pyffi.object_models.xml.StructAttribute object at 0...
  _games = {}
  _has_links = True
  _has_refs = True
  _is_template = False
  _names = ['unknown_int', 'num_vertices', 'keep_flags', 'compre...

Inherited from object_models.xml.struct_.StructBase: arg

Properties [hide private]
  additional_data
Unknown.
  bitangents
Bitangent vectors.
  bs_num_uv_sets
Bethesda's version of this field for nif versions 20.2.0.7 and up.
  center
Center of the bounding box (smallest box that contains all vertices) of the mesh.
  compress_flags
Unknown.
  consistency_flags
Consistency Flags
  has_normals
Do we have lighting normals? These are essential for proper lighting: if not present, the model will only be influenced by ambient light.
  has_uv
Do we have UV coordinates?Note: for compatibility with NifTexture, set this value to either 0x00000000 or 0xFFFFFFFF.
  has_vertex_colors
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.
  has_vertices
Is the vertex array present? (Always non-zero.)
  keep_flags
Used with NiCollision objects when OBB or TRI is set.
  normals
The lighting normals.
  num_uv_sets
The lower 6 (or less?) bits of this field represent the number of UV texture sets.
  num_vertices
Number of vertices.
  radius
Radius of the mesh: maximal Euclidean distance between the center and all vertices.
  tangents
Tangent vectors.
  unknown_13_shorts
Unknown, always 0?
  unknown_int
Unknown identifier.
  uv_sets
The UV texture coordinates.
  vertex_colors
The vertex colors.
  vertices
The mesh vertices.

Inherited from object: __class__

Class Variable Details [hide private]

_attribute_list

Value:
[<pyffi.object_models.xml.StructAttribute object at 0x2dd11d0>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd1f10>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dcce50>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dcccd0>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd9610>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd9650>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd9750>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd9a90>,
...

_attrs

Value:
[<pyffi.object_models.xml.StructAttribute object at 0x2dd11d0>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd1f10>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dcce50>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dcccd0>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd9610>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd9650>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd9750>,
 <pyffi.object_models.xml.StructAttribute object at 0x2dd9a90>,
...

_names

Value:
['unknown_int',
 'num_vertices',
 'keep_flags',
 'compress_flags',
 'has_vertices',
 'vertices',
 'num_uv_sets',
 'bs_num_uv_sets',
...

Property Details [hide private]

additional_data

Unknown.
Get Method:
<functools.partial object at 0x2de1418>
Set Method:
<functools.partial object at 0x2de1470>

bitangents

Bitangent vectors.
Get Method:
<functools.partial object at 0x2ddbc00>

bs_num_uv_sets

Bethesda's version of this field for nif versions 20.2.0.7 and up. Only a single bit denotes whether uv's are present. For example, see meshes/architecture/megaton/megatonrampturn45sml.nif in Fallout 3.
Get Method:
<functools.partial object at 0x2ddb890>
Set Method:
<functools.partial object at 0x2ddb8e8>

center

Center of the bounding box (smallest box that contains all vertices) of the mesh.
Get Method:
<functools.partial object at 0x2ddbcb0>
Set Method:
<functools.partial object at 0x2ddbd08>

compress_flags

Unknown.
Get Method:
<functools.partial object at 0x2ddb4c8>
Set Method:
<functools.partial object at 0x2ddb520>

consistency_flags

Consistency Flags
Get Method:
<functools.partial object at 0x2de1310>
Set Method:
<functools.partial object at 0x2de1368>

has_normals

Do we have lighting normals? These are essential for proper lighting: if not present, the model will only be influenced by ambient light.
Get Method:
<functools.partial object at 0x2ddb998>
Set Method:
<functools.partial object at 0x2ddb9f0>

has_uv

Do we have UV coordinates?Note: for compatibility with NifTexture, set this value to either 0x00000000 or 0xFFFFFFFF.
Get Method:
<functools.partial object at 0x2ddb838>
Set Method:
<functools.partial object at 0x2ddb7e0>

has_vertex_colors

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.
Get Method:
<functools.partial object at 0x2ddbf70>
Set Method:
<functools.partial object at 0x2ddbfc8>

has_vertices

Is the vertex array present? (Always non-zero.)
Get Method:
<functools.partial object at 0x2ddb5d0>
Set Method:
<functools.partial object at 0x2ddb628>

keep_flags

Used with NiCollision objects when OBB or TRI is set.
Get Method:
<functools.partial object at 0x2ddb3c0>
Set Method:
<functools.partial object at 0x2ddb418>

normals

The lighting normals.
Get Method:
<functools.partial object at 0x2ddbaa0>

num_uv_sets

The lower 6 (or less?) bits of this field represent the number of UV texture sets. The other bits are probably flag bits. For versions 10.1.0.0 and up, if bit 12 is set then extra vectors are present after the normals.
Get Method:
<functools.partial object at 0x2de1158>
Set Method:
<functools.partial object at 0x2de11b0>

num_vertices

Number of vertices. For NiPSysData this is max particles.
Get Method:
<functools.partial object at 0x2ddb2b8>
Set Method:
<functools.partial object at 0x2ddb310>

radius

Radius of the mesh: maximal Euclidean distance between the center and all vertices.
Get Method:
<functools.partial object at 0x2ddbdb8>
Set Method:
<functools.partial object at 0x2ddbe10>

tangents

Tangent vectors.
Get Method:
<functools.partial object at 0x2ddbb50>

unknown_13_shorts

Unknown, always 0?
Get Method:
<functools.partial object at 0x2ddbec0>

unknown_int

Unknown identifier. Always 0.
Get Method:
<functools.partial object at 0x2ddb1b0>
Set Method:
<functools.partial object at 0x2ddb208>

uv_sets

The UV texture coordinates. They follow the OpenGL standard: some programs may require you to flip the second coordinate.
Get Method:
<functools.partial object at 0x2de1260>

vertex_colors

The vertex colors.
Get Method:
<functools.partial object at 0x2de10a8>

vertices

The mesh vertices.
Get Method:
<functools.partial object at 0x2ddb6d8>