Changeset 597

Show
Ignore:
Timestamp:
07/04/08 14:30:11 (5 months ago)
Author:
phill
Message:

o Root matrix hackery.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/morph-targets/libx42/anim-skin.c

    r593 r597  
    203203                if( inf->bone != X42_MODEL_BONE ) 
    204204                        affine_mul( infs + i, boneMats + inf->bone, &inf->meshToBone ); 
     205                else if( x42->header.runFlags & X42_RF_ROOT_MATRIX ) 
     206                        affine_mul( infs + i, &x42->rootMatrix, &inf->meshToBone ); 
    205207                else 
    206208                        affine_cpy( infs + i, &inf->meshToBone ); 
  • branches/morph-targets/libx42/platform/x86-64/anim-skin.c

    r593 r597  
    798798                        m = &tmp; 
    799799                } 
     800                else if( x42->header.runFlags & X42_RF_ROOT_MATRIX ) 
     801                { 
     802                        affine_mul( &tmp, &x42->rootMatrix, &inf->meshToBone ); 
     803                        m = &tmp; 
     804                } 
    800805                else 
    801806                        m = &inf->meshToBone; 
  • branches/morph-targets/libx42/pose.c

    r593 r597  
    535535                x42->header.runFlags |= X42_RF_ROOT_MATRIX_BAKED; 
    536536 
    537                 for( g = 0; g < x42->header.numVerts; g++ ) 
     537                for( g = 0; g < x42->header.numGroups; g++ ) 
    538538                { 
    539539                        const x42group_t *grp = x42->groups + g; 
     
    722722                if( t->bone != X42_MODEL_BONE ) 
    723723                        affine_mul( o, bm + t->bone, &t->tagMatrix ); 
     724                else if( x42->header.runFlags & X42_RF_ROOT_MATRIX ) 
     725                        affine_mul( o, &x42->rootMatrix, &t->tagMatrix ); 
    724726                else 
    725727                        affine_cpy( o, &t->tagMatrix );