D3DModelRipper – Extracting Models From Directx9 Games

[Intro]

While there are tools out there that do this sort of thing, I couldn’t find the source code for any of them.  So I put together this library as a way of knowing how it goes down.  I gotta say 3d graphics is not my thing in the least, so putting this together was both challenging and fun.

[Usage]

To use the library, run your desired game, open up the cmd line, go to your exectuable directory and type in: Injector.exe “EXE Name” d3d9.dll PrimCount NumVerts.

Example:

Injector.exe “Slender – The Eight Pages.exe” d3d9.dll 2136 1469

The above command will pull the geometry for one of the trees in the Slender forest and dump into a file called model.obj in your Slender executable folder.

If you do not know how to get the primcounts and vertnums for the geometry you want check this other tool out.

The resulting file is in obj format.  This is probably the simplest format out there for representing 3d geometry, and most 3d modeling software is able to recognize it.

[Screenshots]

slender_done

Slenderman Model in 3dsmax

slender_tree1

Tree from the Slenderman Forest In 3dsmax

slender_textured

Slenderman Retextured

[Release]

Github Repo

Full Project With Source

One Response to D3DModelRipper – Extracting Models From Directx9 Games

  1. […] want to see a working project with source that implements what has been discussed here, checkout this project.  I might also put together something for directx10 and 11, and OpenGL in the near […]

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>