Ignore:
Timestamp:
10/30/15 15:02:06 (10 years ago)
Author:
epyon
Message:
  • resource system cleanups
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gfx/skeletal_mesh.cc

    r477 r479  
    1515void nv::skeletal_animation_entry::update_skeleton( skeleton_instance& data, uint32 a_ms_time ) const
    1616{
    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 );
    2019        uint32 duration = get_frame_count();
    2120        if ( duration == 0 )
    2221        {
    23                 frame  = get_start_frame();
    24                 fframe = static_cast<float>( frame );
     22                fframe = static_cast<float>( get_start_frame() );
    2523        }
    26         else if ( frame >= duration )
     24        else if ( nframe >= duration )
    2725        {
    2826                if ( is_looping() )
    29                 {
    30                         frame  = frame % duration;
    31                         fframe = static_cast<float>( frame ) + reminder;
    32                 }
     27                        fframe = nv::fmodf( fframe, nv::f32( duration ) );
    3328                else
    34                 {
    35                         frame  = get_end_frame();
    36                         fframe = static_cast<float>( frame );
    37                 }
     29                        fframe = static_cast<float>( get_end_frame() );
    3830        }
    3931
Note: See TracChangeset for help on using the changeset viewer.