   Pandasoft .X exporter tripling MAX bone count?
  Anyone know why the Pandasoft .X Exporter is tripling the bone count of our MAX models?We're using version 4.6.61.0 and the default options.Thanks!   
  ...anybody?   ;  not exporting to a strip ?   ;  Could you please elaborate?   ;  A triangle list is when you just list the triangles one by one.  A triangle strip works by just adding one more vertex.  There are also triangle fans, where each triangle shares the first vertex.for example...list:Triangle 1 -> a, b, cTriangle 2 -> d, e, fTriangle 3 -> g, h, iTriangle 4 -> j, k, lTriangle 5 -> m, n, oStrip:Triangle 1 -> a, b, cTriangle 2 -> b, c, dTriangle 3 -> c, d, eTriangle 4 -> d, e, fTriangle 5 -> e, f, gFan:Triangle 1 -> a, b, cTriangle 2 -> a, c, dTriangle 3 -> a, d, eTriangle 4 -> a, e, fTriangle 5 -> a, f, gLet me guess; you learned models before you learned primitives, right?  (not that there is anything wrong with that, I just started simple and worked my way up and it seemed like a good idea at the time...)   ;  The issue is with bones being duplicated by 3x; it doesn't have anything to do with polys.You've lost me :)   ;  I was just explaining the difference between lists and strips and fans, the bug with the bones is an interesting enigma...When you say it creates three times as many bones, can you elaborate?Are some of the subsets being allocated more than one bone or are there multiple bones on the same vertices?  How is the hierarchy being affected?  Is it creating three skeletons or what?   ;  Yes, models with bones or biped is often exported with more frames than actually defined. But you can remove unused frames easily. Remove frames that has no name, no meshContainer and no child.D3DXFRAME->Name == NULLD3DXFRAME->pMeshContainer == NULLD3DXFRAME->pFrameFirstChild == NULLbut dont' forget to "relink" the hierarchy if this frame have some siblings. This action can remove half of all bones and animations still plays perfectly.   ;  Try this routinevoid RemoveUnusedFrames (D3DXFRAME_DERIVED &pFrame){static D3DXFRAME_DERIVED *pParentFrame = NULL;D3DXFRAME_DERIVED *pSibling, *pChild;pSibling = (D3DXFRAME_DERIVED*)pFrame.pFrameSibling;pChild = (D3DXFRAME_DERIVED*)pFrame.pFrameFirstChild;if ((pFrame.Name == NULL) && (pFrame.pMeshContainer == NULL))if ((pChild == NULL) && (pParentFrame != NULL)){pParentFrame->pFrameFirstChild = pFrame.pFrameSibling;delete &pFrame;}// recursion for siblingsif (pSibling)RemoveUnusedFrames ((D3DXFRAME_DERIVED&)*pSibling);// recursion for childsif (pChild){pParentFrame = &pFrame;RemoveUnusedFrames ((D3DXFRAME_DERIVED&)*pChild);}};  Well, here's a snippet from the log file.This model actually only has 52 or so bones in 3DS Max, but the exorter states it has 158...[6/13/2006 10:40:47 AM] **************** Dump bones for Model.X ****************[6/13/2006 10:40:47 AM] Num bones = 158[6/13/2006 10:40:47 AM] Bone 0: Name='Bone0'[6/13/2006 10:40:47 AM] Bone 1: Name='Particle_View_01', Parent=0 (Bone0)[6/13/2006 10:40:47 AM] Bone 2: Name='Bip01', Parent=0 (Bone0)[6/13/2006 10:40:47 AM] Bone 3: Name='', Parent=2 (Bip01)[6/13/2006 10:40:47 AM] Bone 4: Name='Bip01_Pelvis', Parent=2 (Bip01)[6/13/2006 10:40:47 AM] Bone 5: Name='', Parent=4 (Bip01_Pelvis)[6/13/2006 10:40:47 AM] Bone 6: Name='Bip01_Spine', Parent=4 (Bip01_Pelvis)[6/13/2006 10:40:47 AM] Bone 7: Name='', Parent=6 (Bip01_Spine)[6/13/2006 10:40:47 AM] Bone 8: Name='Bip01_Spine1', Parent=6 (Bip01_Spine)[6/13/2006 10:40:47 AM] Bone 9: Name='', Parent=8 (Bip01_Spine1)[6/13/2006 10:40:47 AM] Bone 10: Name='Bip01_Spine2', Parent=8 (Bip01_Spine1)[6/13/2006 10:40:47 AM] Bone 11: Name='', Parent=10 (Bip01_Spine2)[6/13/2006 10:40:47 AM] Bone 12: Name='Bip01_Spine3', Parent=10 (Bip01_Spine2)[6/13/2006 10:40:47 AM] Bone 13: Name='', Parent=12 (Bip01_Spine3)[6/13/2006 10:40:47 AM] Bone 14: Name='Bip01_Neck', Parent=12 (Bip01_Spine3)[6/13/2006 10:40:47 AM] Bone 15: Name='', Parent=14 (Bip01_Neck)[6/13/2006 10:40:47 AM] Bone 16: Name='Bip01_Head', Parent=14 (Bip01_Neck)[6/13/2006 10:40:47 AM] Bone 17: Name='', Parent=16 (Bip01_Head)[6/13/2006 10:40:47 AM] Bone 18: Name='Bip01_HeadNub', Parent=16 (Bip01_Head)[6/13/2006 10:40:47 AM] Bone 19: Name='', Parent=18 (Bip01_HeadNub)