GoldSrc Map2Prop is a tool for converting .rmf and .jmf files, as well as .obj files exported from the Steam version of J.A.C.K, to goldsrc .smd file that can then be compiled into a goldsrc format studio model without the hassle of using an 3D editor.
It has come to my attention that Windows Defender will flag the executable as a trojan. It seems to be a common issue with the bundler I used, and could also be due to me not having used code signing on it yet. I'm working on fixing the latter. (I'm just a webdev who's just starting out making desktop apps, still got a lot of figuring out to do!)
All I can do is promise I haven't put anything nasty in my code, but you should of course not blindly trust a stranger on the internet.
If you're unsure, just come back later when the issue is hopefully fixed. 🙂
No installation required, simply extract the .7z archive into your folder of choice.
Map2Prop is currently only supported on Windows.
Linux support is planned for a future release.
How to use
For most basic use you just need to ensure all required textures are in the same folder as the project file, or make use of automatic .wad extraction (explained further down). Then simply drag your project file onto the executable.
You may also use the CLI interface. Run
to list all available options.
Map2Prop is able to read and extract textures from .wad packages found in a
or by command line, from a game/mod defined in
, or within the project file's directory, prioritised in that order. The application will automatically do this for all texture files not found within the project file's directory.
Smooth shading and the angle threshold for smoothing can be set in
and/or command line, but may also be set by suffixing the file name with
is the optional parameter for angle threshold. Leaving out the threshold parameter or setting it to zero will smooth all edges of the model.
will have smooth shading applied to all edges less than 60° apart.
Neither input format does any "inside face" culling. I'm not talking about backface culling, but rather the faces inside of objects.
I recommend covering all unseen faces (as well as any other faces you want to skip) with NULL texture as these will be stripped out during the process.
Why is the Sven Co-op studiomdl.exe required for compilation?
The reason for requiring the Sven Co-op studiomdl.exe
for compiling these models is because of how map textures work, i.e. they may tile or otherwise extend beyond the UV bounds. Legacy studiomdl.exe compilers will clamp UV coordinates which is no good for this. Don’t worry, the compiled model will still work perfectly fine in vanilla Half-Life.
Issues / bugs
Please post any issues/bugs you find as a comment here or as a private message to me. 🙂
I'm currently investigating a small discrepancy in the UV map. So far it looks to me it's just a rounding error or floating point precision error, but won't know for sure until I find the cause of it.
Thanks to Captain P for showing me the .rmf/.jmf parsing code from MESS!
Many thanks goes out to the kind people who helped me test this program and provide useful feedback and suggestions during its alpha stage:
- SV BOY