eXistence / fhDOOM

Modernized DOOM3/idTech4 engine: ported to modern OpenGL (core profile), enhanced visual effects, improved performance, improved editor, more to come

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

32-bitness

volumetricsteve opened this issue · comments

What I thought was a bug was just 32-bit dependencies. Is there a compelling reason we're stuck with 32-bit code? Has any attempt been made to bring the 32-bit deps up to 64?

I know for a game the argument is often made 'it doesn't matter' but being able to compile on 64-bit pure systems would be really nice. It's less about the feature and more about the utility of it, but it would also be awesome to have a doom 3 level that spanned more than 4GB of assets.

Dependencies are not the issue. Compiling everything for 64bit and linking against 64bit libraries is easy. You just have to fix every single compiler error and warning that comes up, but that is still the easy part (and i already did that on an experimental 64bit branch).

The bigger issue is that the code (silently!) assumes at various places that pointers are 32bit. Everything compiles fine, but as soon as that code is executed bad stuff happens (usually the game crashes immediately, but that doesn't have to be the case)

I do all my linux work on 64bit versions of ubuntu, and installing additional 32bit versions of all required libraries is very easy (setup_ubuntu.sh takes care of that for me).

As mentioned before i already started to port fhDOOM to 64bit, but other things became more important. Having a 64bit build does have its benefits and finishing the 64bit port is still on my ToDo list, but priority is low.

My primary target platform is windows and since fhDOOM compiles and runs just fine on linux in 32bit (and memory usage is not even close to 4GB), there are no compelling reasons for me to make this a priority now.