Changeset 479 for trunk/src/gfx/skeletal_mesh.cc
- Timestamp:
- 10/30/15 15:02:06 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/gfx/skeletal_mesh.cc
r477 r479 15 15 void nv::skeletal_animation_entry::update_skeleton( skeleton_instance& data, uint32 a_ms_time ) const 16 16 { 17 float fframe = ( a_ms_time * 0.001f ) * m_fps; 18 uint32 frame = uint32( math::floor( fframe ) ); 19 float reminder = fframe - static_cast<float>( frame ); 17 float fframe = ( a_ms_time * 0.001f ) * m_fps; 18 float nframe = nv::floor( fframe ); 20 19 uint32 duration = get_frame_count(); 21 20 if ( duration == 0 ) 22 21 { 23 frame = get_start_frame(); 24 fframe = static_cast<float>( frame ); 22 fframe = static_cast<float>( get_start_frame() ); 25 23 } 26 else if ( frame >= duration )24 else if ( nframe >= duration ) 27 25 { 28 26 if ( is_looping() ) 29 { 30 frame = frame % duration; 31 fframe = static_cast<float>( frame ) + reminder; 32 } 27 fframe = nv::fmodf( fframe, nv::f32( duration ) ); 33 28 else 34 { 35 frame = get_end_frame(); 36 fframe = static_cast<float>( frame ); 37 } 29 fframe = static_cast<float>( get_end_frame() ); 38 30 } 39 31
Note: See TracChangeset
for help on using the changeset viewer.