- Timestamp:
- 11/17/15 20:25:58 (10 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/nv/gfx/skeleton_instance.hh
r482 r483 84 84 const transform* transforms() const { return m_transforms.data(); } 85 85 size_t size() const { return m_transforms.size(); } 86 void assign( const data_node_list* node_data ); 87 void assign( const skeleton_transforms& other ); 88 void interpolate( const skeleton_transforms& a, const skeleton_transforms& b, float t ); 86 89 void animate_local( const mesh_nodes_data* node_data, const skeleton_binding& binding, float frame ); 87 90 void animate( const mesh_nodes_data* node_data, const skeleton_binding& binding, float frame, bool local = false ) -
trunk/nv/interface/scene_node.hh
r395 r483 81 81 list::const_iterator begin() { return m_children.cbegin(); } 82 82 list::const_iterator end() { return m_children.cend(); } 83 list& children() { return m_children; } 83 84 84 85 virtual ~scene_node() -
trunk/src/gfx/skeleton_instance.cc
r482 r483 60 60 if ( bones.size() != m_matrix.size() ) 61 61 m_matrix.resize( bones.size() ); 62 } 63 64 void nv::skeleton_transforms::assign( const data_node_list* node_data ) 65 { 66 NV_ASSERT( node_data, "!!!" ); 67 if ( m_transforms.size() != node_data->size() ) 68 m_transforms.resize( node_data->size() ); 69 for ( uint32 n = 0; n < node_data->size(); ++n ) 70 { 71 const data_node_info& info = (*node_data)[ n ]; 72 m_transforms[n] = transform( info.transform ); 73 } 74 } 75 76 void nv::skeleton_transforms::interpolate( const skeleton_transforms& a, const skeleton_transforms& b, float t ) 77 { 78 NV_ASSERT( a.size() == b.size(), "!!!" ); 79 if ( m_transforms.size() != a.size() ) 80 m_transforms.resize( a.size() ); 81 for ( uint32 n = 0; n < a.size(); ++n ) 82 { 83 m_transforms[n] = nv::interpolate( a.m_transforms[n], b.m_transforms[n], t ); 84 } 85 } 86 87 void nv::skeleton_transforms::assign( const skeleton_transforms& other ) 88 { 89 m_transforms.assign( other.m_transforms ); 62 90 } 63 91
Note: See TracChangeset
for help on using the changeset viewer.