//----------------------------------------------------------------------------- // Name: CBipedAnimInstance::GetAnimIndex() // Desc: Returns the index of an animation set within this animation instance's // animation controller given an animation set name. //----------------------------------------------------------------------------- DWORD CXFileAnimInstance::GetAnimIndex( char sString[] ) { HRESULT hr; LPD3DXANIMATIONCONTROLLER pAC; LPD3DXANIMATIONSET pAS; DWORD dwRet = ANIMINDEX_FAIL; m_pAI->GetAnimController( & pAC ); for( DWORD i = 0; i < pAC->GetNumAnimationSets(); ++ i ) { hr = pAC->GetAnimationSet( i, & pAS ); if( FAILED( hr ) ) continue; if( pAS->GetName() && !strncmp( pAS->GetName(), sString, min( strlen( pAS->GetName() ), strlen( sString ) ) ) ) { dwRet = i; pAS->Release(); break; } pAS->Release(); } pAC->Release(); return dwRet; }