TTimo / GtkRadiant

The open source, cross platform level editor for idtech games
http://icculus.org/gtkradiant/
Other
588 stars 156 forks source link

Add a 64 bit release line on Windows #116

Closed TTimo closed 11 years ago

TTimo commented 12 years ago

We may not need the editor itself in 64 bit, but we need for the tools (q3map2, lighting stage in particular).

If we restrict the transition to 64 bit to just what we need, shouldn't be too much of a hassle. There has been a 64 bit Linux version for a while now.

TTimo commented 11 years ago

Except we need x64 versions of all the dependent libraries, xml, png, jpeg, glib .. even for compiling just q3map2 ..

jdolan commented 11 years ago

Are the GtkRadiant builds done natively or xc?

We're cross-compiling Quake2World for 64bit Windows here: http://ci.quake2world.net

TTimo commented 11 years ago

Native compile .. there's a lot of dependencies .. all of the gtk+ stuff, png, jpg, xml etc. Trying to support Windows binaries through cross compile doesn't sound viable.

We've been using a pre-configured EC2 system to spit out Windows builds in the past, but I'm also looking at updating that.

jdolan commented 11 years ago

Q2W requires glib2, but mingw packages for it were readily available. I think the only thing we had to crutch up ourselves for XC was PHYSFS. Obviously not as deep a stack as Radiant, but ..just a thought..

Jay

TTimo commented 11 years ago

Decent progress on this. Grabbed x64 binaries for the latest gtk+, upgraded to a new jpeg9 with x64 binaries, now looking at a newer libxml2 with x64 binaries.

TTimo commented 11 years ago

Experimental x64 windows binary of q3map2: https://dl.dropboxusercontent.com/u/1529870/q3map2-x64-20130530.zip

Overall it looks like a full x64 GtkRadiant build would be possible. But mostly we're interested by just the compiler being 64 bit.

TTimo commented 11 years ago

The Windows x64 binary of q3map2 compiles q3dm7sample successfully. The projects have been updated so the binary goes to install/x64/q3map2.exe along with the dependent x64 DLLs.

The integration is still a problem though. The easiest is probably to add a set of BSP options on the Windows version that point to the x64 version. The problem is that Linux doesn't care, since it's a full x64 and not a 32 bit editor + 64 bit q3map2 binary.

image

TTimo commented 11 years ago

Obsidian recommended that we add a preference flag to select x64 q3map2 vs 32 bit q3map2. Changing the setting would require the project file to be regenerated, but that sounds like a good solution. Better than duplicating all the BSP command lists only for Windows.

The updated libraries are working well, putting together a new set of dependencies for GtkRadiant now, then will merge the MSVC2012 branch back to master.

TTimo commented 11 years ago

Next build will default to q3map2.exe x64 for Q3 and QL. Still have to do the preferences thing.

TTimo commented 11 years ago

Scratch that, I had time to work in the preferences toggle thing. Closing this! http://gtkradiant.s3-website-us-east-1.amazonaws.com/GtkRadiant-1.6.4-20130615.zip

0bsidian commented 11 years ago

Nice work! 64-bit option seems to be enabled by default (I'm guessing it autodetects). <3

TTimo commented 11 years ago

Nah actually it's just on by default. Autodetection would be nice I suppose. We'll have to document clearly to 32 bit users otherwise .. I'd be surprised if there are that many?

mrwonko commented 11 years ago

I'd be surprised if there are that many?

Actually chances are many of those still sticking to idTech 3 are on old hardware, right? Well, no way to know for sure, short of adding a hardware survey to radiant. :smile:

Acrobatc101 commented 11 years ago

Will this thing work for jk2\jk3 as well?

0bsidian commented 11 years ago

Yes. It works for any game that Q3Map2 supports.

Acrobatc101 commented 11 years ago

I'm testing this for jk2\jka.

When I double click the q3map2 icon it says "missing MSVCR220.dll" and won't start. any ideas?

Mateos81 commented 11 years ago

You need to install Visual C++ Redist x86 and x64: http://www.microsoft.com/en-gb/download/details.aspx?id=30679

0bsidian commented 11 years ago

Also, you can't just double-click on the Q3Map2 icon, it's a command-line program. You need to pass it parameters via GtkRadiant's build menu or with a batch file.