Jump to content
  • Advertisement
Sign in to follow this  
The Pentium Guy

LoadHeirarchyFromFile crashes on some comptuers but not others!

This topic is 4836 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

What the hell? LoadHeirarchyFromFile works perfectly fine on my dad's 2 integrated graphics computers, and my 9800Pro computer, but NOT on my friend's Geforce2, and my other friend's MX460 (both nVidia graphics cards). They both have up-to-date drivers, and I even tried Omega drivers on their systems. Hell, I gave them a sample where the animated mesh is not created nor rendered and it works perfectly fine. Error: Error in the application. -2147467259 (E_FAIL) at Microsoft.DirectX.Direct3D.Mesh.LoadHierarchyFromFile(String filename, MeshFlags options, Device device, AllocateHierarchy allocHierarchy, LoadUserData userDataLoader) Can someone please tell me what's going on? The code, the exe's, the folder, the filepaths are exactly the same - I verified. The DirectX, Direct3D, Direct3dX dlls are exactly the same (all are from the August 2005 9.0C update). Edit: Code is here:
    Dim animRootFrame As AnimationRootFrame 
    Sub New(ByVal filesrc As String) //fileSRC is the path to the mesh
        Dim alloc As New AllocateHierarchyDerived() 
        animRootFrame = Mesh.LoadHierarchyFromFile(filesrc, MeshFlags.Managed, GameClass.dxDevice, alloc, Nothing) //Crashes right here.
    End Sub
Thanks, -The Pentium Guy

Share this post


Link to post
Share on other sites
Advertisement
The code is probably failing in a method of your AllocateHierarchy class, most likely CreateMeshContainer. Are you using indexed blending? My guess is that it's failing because the maximum bone influences per vertex for your mesh is too high for GeForce2 to handle.

One possible solution would be to use software or mixed vertex processing when you create your Direct3D device.

Share this post


Link to post
Share on other sites
Yeah that worked. Mixed doesn't work though (some parts of the mesh appear fubar'd) Now is there any way to be able to use the Hardware device? What would I do for this?


-The Pentium Guy

Share this post


Link to post
Share on other sites
If you use mixed, try calling IDirect3DDevice9::SetSoftwareVertexProcessing to explicitly set vertex processing to software when rendering the skinned mesh. You can use hardware vertex processing for other rendering.

Share this post


Link to post
Share on other sites
Quote:
Original post by jacklin
If you use mixed, try calling IDirect3DDevice9::SetSoftwareVertexProcessing to explicitly set vertex processing to software when rendering the skinned mesh. You can use hardware vertex processing for other rendering.


Sounds like an excellent command. Thanks for that.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!