FWGS / xash3d-fwgs

Xash3D FWGS engine.
1.52k stars 226 forks source link

Inclusion of cross-platform ZHLT compile tools? #18

Closed noodlecollie closed 5 years ago

noodlecollie commented 5 years ago

I'm probably going to swap my own fork from the original Xash3D engine to this one, so that I have the opportunity of adding stuff upstream that would be more useful here than in the other engine.

My first question is: would a cross-platform set of compilation tools be considered valuable? I've found a set of the ZHLT compile tools that compiles successfully for me on Linux: https://github.com/tyabus/zhlt-linux

I'm probably going to be adding these to my own fork because, in my seemingly eternal pursuit of importing Nightfire maps, it's proving a better course of action to recompile existing maps with a slightly modified textures lump than to attempt to convert compiled BSPs to be compatible with Half-Life. I wanted to check here first, in case they'd be a useful addition upstream. It would require me learning how to use Waf, though.

nekonomicon commented 5 years ago

ZHLT has improved fork by chinese developer - VHLT Also, Unkle Mike working on own VHLT and ZHLT forks - UMHLT and P2ST

a1batross commented 5 years ago

UMHLT is recommended one, from Unkle Mike, as supports new extended BSP.

Using waf is simple. Read waf --help. It just requires Python and that's all.

noodlecollie commented 5 years ago

OK, if Unkle Mike has his own repo for the compile tools then I guess they're best kept out of this one.

Is there any documentation for the extended BSP format? From the code I understand that there are more clip node lumps, but I don't know if there are other differences as well. The modifications I'll need to make for my own fork are to support texture paths of at least 64 characters, as Nightfire textures are kept on-disk. If I can do that by using the extended format alone then I'll see if I can put a pull request into the compile tools repo to add that functionality. If not then I'll create my own fork to use a slightly modified version of the BSP.

a1batross commented 5 years ago

No, he doesn't use Git or any other VCS. Pure fork is located in FWGS/UMHLT, only Linux makefiles are added.

BSP30 extensions are increased clipnode limits, lightmap resolution doesn't depend on texture resolution, per-vertex lighting and so on. Some features were implemented in UMHLT, but other only in closed-source P2ST. I don't know Unkle Mike's plans on opensourcing P2ST.

noodlecollie commented 5 years ago

OK, it's probably best if I keep my changes to my own fork in that case. Thanks for the info!