DescentDevelopers / Descent3

Descent 3 by Outrage Entertainment
GNU General Public License v3.0
2.86k stars 245 forks source link

Windows x64 build #354

Closed pzychotic closed 4 months ago

pzychotic commented 4 months ago

Pull Request Type

Description

Getting this out as a starting point for a possible Windows x64 build.

So far my local tests in Singleplayer work fine. I haven't tried any Multiplayer.

Quick summary:

Cut corners:

Open questions:

Known Issue:

Checklist

Lgt2x commented 4 months ago

Hey, that looks promising! Just so you know, we will be working on replacing DirectX with SDL2 on Windows just like Linux and MacOS do, so don't spend too much effort on the DirectX code

pzychotic commented 4 months ago

Hey, that looks promising! Just so you know, we will be working on replacing DirectX with SDL2 on Windows just like Linux and MacOS do, so don't spend too much effort on the DirectX code

Thanks for the heads-up on DirectX stuff. I wasn't planning spending time on it, just replaced the SDK for the x64 support to get the current stuff to compile and run.

MaddTheSane commented 4 months ago
  • I had to load the new d3-win.hog last so the x64 DLLs from it will be found before the x86 DLLs from the original game data:pzychotic@435b1f4

    • Shouldn't this also be done for Linux/Mac?

Maybe for Linux, but macOS can have multiple architectures in one binary.

JeodC commented 4 months ago

I can't review further, other than verifying it works in windows, but I'd like to note that as pzychotic nicely explained, this pull will resolve the outstanding multiplayer issues.

pzychotic commented 4 months ago

We need additionally mention somewhere that we use static DirectX libraries (and here issue about licensing them with GPLv3 code).

These are not static libraries, these are just the link libs needed by the linker to resolve the symbols to the DLLs.