There was a surprising amount of work which went into making VectorStorm 64-bit compatible, but it’s all in place now, at last.
Not that I’m planning to have my games use more than 4 gigabytes of memory any time soon. But having larger registers to play with does give some big performance wins, especially with the amount of memory copying that we do, managing renderable geometry buffers.
And I’ve spent most of today tracking down why, as part of this 64-bit project, suddenly all my textures were coming through differently than I expected. Eventually tracked it down to a change in SDL_Image, which I use for loading textures (the change was only on the Mac side of the library, which explains why it wasn’t affecting my Win32 builds). VectorStorm is now working with a patched version of that library. (Hopefully that patch will be rolled into the next version of SDL_Image, which will be 1.13, I imagine)
Coupled with all this was discovering quite a lot of rendering logic bugs which (if I’m being honest with myself) I have no clue how they were working before. Right now, I suspect that “sheer luck” is the answer. But all is good now. And now that I’ve reclaimed performance again, it’s time to get back to implementing game mechanics. The screenshots I post will be much more interesting soon, I promise!