MCPcopy Create free account
hub / github.com/carbonengine/trinity / ExtractTrackMask

Method ExtractTrackMask

trinity/Tr2GrannyAnimationLayer.cpp:951–992  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

949
950
951void Tr2GrannyAnimationLayer::ExtractTrackMask( const Tr2GrannyAnimation* grannyAnimation, const char* name )
952{
953 // cannot assert cmf/granny here, init is called after this function!
954
955 if( grannyAnimation->IsUsingCMF() )
956 {
957 m_trackMaskName = name;
958
959 auto skeleton = grannyAnimation->GetSkeleton();
960
961 if( !skeleton )
962 {
963 return;
964 }
965
966 m_boneMask = cmf::ExtractBoneWeights( *skeleton, m_trackMaskName );
967 }
968#if WITH_GRANNY
969 else
970 {
971 m_trackMaskName = name;
972 if( !m_trackMask )
973 {
974 return;
975 }
976
977 granny_extract_track_mask_result etmr = GrannyExtractTrackMask(
978 m_trackMask,
979 m_boneCount,
980 GrannyGetSourceSkeleton( m_modelInstance ),
981 name,
982 0.0f,
983 false );
984 if( etmr == GrannyExtractTrackMaskResult_NoDataPresent )
985 {
986 CCP_LOGNOTICE( "Tr2GrannyAnimationLayer: Track mask not found." );
987 }
988
989 return;
990 }
991#endif
992}
993
994void Tr2GrannyAnimationLayer::RemoveBone( const Tr2GrannyAnimation* grannyAnimation, const char* name )
995{

Callers 1

Calls 2

IsUsingCMFMethod · 0.45
GetSkeletonMethod · 0.45

Tested by

no test coverage detected