<\/a>So here’s something new. It’s been annoying me for ages that I couldn’t make a 64-bit version of MMORPG Tycoon 2. \u00a0Or any VectorStorm game, for that matter. \u00a0Well, that ends today.<\/p>\nThere was a surprising amount of work which went into making VectorStorm 64-bit compatible, but it’s all in place now, at last.<\/p>\n
Not that I’m planning to have my games use more than 4 gigabytes of memory any time soon. \u00a0But 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.<\/p>\n
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. \u00a0Eventually 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). \u00a0VectorStorm is now working with a patched version of that library. \u00a0(Hopefully that patch will be rolled into the next version of SDL_Image, which will be 1.13, I imagine)<\/p>\n
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. \u00a0Right now, I suspect that “sheer luck” is the answer. \u00a0But all is good now. \u00a0And now that I’ve reclaimed performance again, it’s time to get back to implementing game mechanics. \u00a0The screenshots I post will be much more interesting soon, I promise!<\/p>\n","protected":false},"excerpt":{"rendered":"
So here’s something new. It’s been annoying me for ages that I couldn’t make a 64-bit version of MMORPG Tycoon 2. \u00a0Or any VectorStorm game, for that matter. \u00a0Well, that ends today. 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…<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":""},"categories":[24,25,3],"tags":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/po9WK-CK","_links":{"self":[{"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/posts\/2402"}],"collection":[{"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/comments?post=2402"}],"version-history":[{"count":0,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/posts\/2402\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/media?parent=2402"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/categories?post=2402"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/tags?post=2402"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}