Advertisement
expired6978

Geomxfrm

Feb 21st, 2015
263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.63 KB | None | 0 0
  1. NiTransform GetGeometryTransform(NiGeometry * geometry)
  2. {
  3.     NiTransform transform = geometry->m_localTransform;
  4.     NiSkinInstance * dstSkin = niptr_cast<NiSkinInstance>(geometry->m_spSkinInstance);
  5.     if (dstSkin) {
  6.         NiSkinData * skinData = dstSkin->m_spSkinData;
  7.         if (skinData) {
  8.             transform = transform * skinData->m_kRootParentToSkin;
  9.  
  10.             for (UInt32 i = 0; i < skinData->m_uiBones; i++) {
  11.                 NiAVObject * bone = dstSkin->m_ppkBones[i];
  12.                 if (bone->m_name == BSFixedString("NPC Head [Head]").data) {
  13.                     transform = transform * skinData->m_pkBoneData[i].m_kSkinToBone;
  14.                     break;
  15.                 }
  16.             }
  17.         }
  18.     }
  19.  
  20.     return transform;
  21. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement