Users browsing this thread: 4 Guest(s)
How to rip models from Unreal Engine
#1
Hello everyone!
I've played the PC game "Alice Madness Returns" lately, and as i love the visual style, i'd like to export some of the models from the game, for archival purposes. I saw that the lovely DemonBoy and TheMaddog (both don't seem to be around here anymore, sadly) already submitted a couple of models, but not all of them. I'm very new to ripping models, and as i'm struggling a bit for now, I'd like to ask if someone as some advices or tutorials that could help me?
So the game is based on the Unreal Engine (3 or earlier, as the game uses .psk and .pskx files). So i used Umodel to export a bunch of various assets from the game files, but i have no idea what to do next. I have .spk files that are (please correct me if i'm wrong) the model files, the .png files that are obviously textures, and .txt files that are, I suppose, used to apply the textures on the models, but I don't know how to make all of those into a coherent whole that would allow the complete, textured model to be visualized. 
Could someone advice me on this, or redirect me to where i could find some answers?
Thanks in advance y'alls!

Edit : so the models submitted by the users mentioned above (thanks again to them) have a .mtl file, which is suppose is precisely what i'm searching for : a file containing the information about how the textures are supposed to be applied on the model (am i right)? So how can i generate one from the files i extracted from the game? Mus i somehow covert them from the txt file or are they a completely different matter?
Reply
Thanked by:
#2
Are the models for the game that were uploaded here in a .OBJ format? If they were, the .MTL file was automatically generated when they exported the file as an .OBJ

I don't know a lot about ripping Unreal Engine models either, but what I'd recommend is finding a Blender addon that lets you import the models in the .SKP (which is SketchUp based on what I googled) format. I think you can also try finding an addon for Blender that allows you to import the .psk files if the models you want are individually contained in those types of files?
Reply
Thanked by:
#3
Hey! Thank you for your answer! So yes, the models already submitted contain .png texture files, an .obj, and a .mtl file. At least one also has a .DAE file, I haven't taken a look at that one yet. So I have good reasons to believe the submitters converted those from .psk (which is a format unrelated to sketchup if i understood things correctly) and the associated files into an .obj file. I dug a little into the .mtl file and found the following mention : "3ds Max Wavefront OBJ Exporter v0.97b - ©2007 guruware", so i suppose it's the software they used to convert them (captain obvious, I know). But I have no idea what file(s) went into making the .mtl file, and if i can make a similar conversion with blender.

I don't know if this will help, but the files i extracted from the game contain the following :
- "Animset" folder, containing, i assume, informations about animation. I suppose i can skip those
- "MaterialInstanceconstant" folder, containing .mat and .props.txt files. I don't know what those are
- "SkeletalMesh3" folder, containing .psk and .props.txt files. The .psk is the 3d model
- "Texture2D" folder, containing, you guessed it, the textures under .png form.

And I don't really know which of the .mat and .props.txt files are relevant, and how to mix them into a .mtl file. I didn't check if i can covert the .psk into .obj with blender, but that's an issue for later.

Anyone got any advice for me on this?
Reply
Thanked by:
#4
Okay, so after some digging I found answers for most of my questions, so I'll add it here for archival purposes.
It turns out that the .psk format is very specific to Unreal Engine, and the only instance where that format is useful is for working with the Unreal Developer Kit (UDK). It can be imported into Blender using an add-on, but it has limited usefulness, for example it was complicated to add textures and the models had really sharp edges, which they are not supposed to have. So it turns out there is an option in Umodel, the assets exporter for unreal engine games made by Gildor, to export them in .gltf format. That format works better with Blender, so I advice to take this one.
Exporting in .gltf doesn't produce an "Animset" folder, all animation information is stored inside the model. I didn't find how to exploit them though.
And so, applying the textures on the models in Blender is relatively easy. You just have to select what you want to texture, the texture you want to be applied, and poof, it works. There is no additional info to add, so the .mat and .props.txt files i mentioned have other functions.
So there are three images for every texture : one with DM in the name, one with NM, and one with SM. DM means Diffuse Map, and is the main texture, NM means Normal Map, and is used for details, and SM means Specular Map, which is used, I believe, for shading. Applying the Normal and Specular map is a bit more technical, so I advice checking the tutorial here https://www.youtube.com/watch?v=W-uYPiRcqAk&t=2s "Blender Cycles, Diffuse, Normal, Specular maps" (it uses an older version of Blender so not everything is up to date, but it's quite useful), and https://www.youtube.com/watch?v=ETMoOhAgXiY&t=45s "Beginner's Guide to Nodes in Blender" with the same warning than above (all of his videos are very interesting for modeling in Blender btw).
Blender uses by default "relative path" meaning that the folders can be renamed, shared and all without breaking the links between the models and the textures, which is quite useful. Don't forget textures must be kept with the .gltf for them to be applied later, they are not stored inside the file.
I didn't find yet what the .mat and .props.txt files are used for, I suspect it has to deal with details on shading (what amount of shading is applied to such texture, for example) but I'm not sure at this point.
Here it is, what i found so far! I feel like i learned quite a bunch, even though it's likely anecdotical next to everything there is to know
Reply
Thanked by:


Forum Jump: