While doing some work on MMORPG Tycoon 2 today, I decided that I wanted to look at version 1.1 again, for comparison. Took me a while to get the project to build (in part because I’ve switched the way that I build SDL and its related libraries, and in part because it’s just such an old project file).
Observations:
- VectorStorm’s built-in glow shader was really nice back then. Substantially prettier than the current one (which was because I knew that it was drawing against black, so I could really pump up the glow without worrying about blowing out the color). Might have to do another pass of tuning to the glow effect; see if I can’t recapture some of that beauty.
- The VectorStorm library back then hadn’t even considered that someday somebody might want a window >2048 pixels talls. (Works properly in the current version of the library)
I’m thinking about reviving some of the original intro sequence for MMORPG Tycoon 2. But it’s going to be awkward to do; it’s using so much of the fanciful, absurd functionality which I so loved in the original VectorStorm engine; things like hardware-accelerated cellophane layers and display list shaders… things that the new, modern engine simply can’t support, now that it’s gotten all serious and optimised for real performance.
Been thinking about maybe writing a quick compatibility layer so I can bring those “shaders” back into use. Or alternately, I could turn them into proper real shaders. But I’d need to think about how to do that. Rendering lines in OpenGL is really slow, and last time I tried it, I got all sorts of artifacts when sending them through a shader pipeline. Would be good to convert the lines into something else, really. Drawing them as really thin rectangles would probably be substantially faster than asking OpenGL to draw lines. But that means I’d need to change the size of the rectangles as they move close or far from the camera… it’s all awkward. Need to think it over some more.