Page last updated: 05/01/2010
Pete Baron talks about work on Starglider 2... "There's not much of a story for SGII the whole thing was a bit of a disaster and the project only lasted for 6 months (compared with 12 months for Salamander and almost 18 for Myth!). It was another contract that Jacqui Lyons (my agent) offered me towards the end of development of Myth and I overlapped the two projects for a couple of months - Jez Sans was very keen for me to get started right away and was willing to accept that I couldn't give it 100% attention until Myth was finished. At the start I was promised all sorts of help with the maths and getting high speed 3D graphics going on the C64 (I was obviously somewhat skeptical of doing this game on a machine with a 1MHz processor!) but they pulled the spec in to 'wire frame' and with the offer of loads of good algorithms I thought it should be doable. Unfortunately in the beginning the only really useful thing I got from them was an equation that permits fast approximations to a square-root... useful but on it's own not enough to make the game particularly fast or smooth. So I was pretty much on my own with some books about 3D programming (remember back then the internet wasn't around, nowadays I'd just go online and get a thousand articles about 3D optimisation!). About 3/4 of the way through the project, Jez called me in-house to see the latest demo and finally get me hooked up with one of their 3D whizz-kids. It was a very dissappointing experience for both sides... Jez thought the demo was too primitive looking and wanted more polys on-screen, further draw distance, and smoother motion; while I discovered that this whizz-kid was straight out of Uni and didn't have a clue about machine language optimisation - I spent a very dull 2 hours explaining why using matrices would be slower than the code I had written already (if you use matrices you end up doing multiply by 1 and multiply by 0 a lot, whereas if you unroll the logic you can just skip all those pointless operations whenever the values are fixed in either matrix). After I finally convinced him (by making the change he was nagging for, summing clock ticks, then comparing with my previous code which was about 15% faster) he didn't have any other suggestions. From then on the project was on pretty thin ice. I couldn't find any way of increasing the detail without making the game unbearably slow, and Jez was stuck on the idea that some of his guys could show me tricks - but they just weren't delivering. I plodded on for the sake of getting the game out of my way. I was already starting to think about future projects - Myth was long gone and the money for SGII was ridiculously poor. Jez hired Bob to do the loading screen which came out superbly... I really will have to try to recover that for you when I get back to NZ. Finally I just went in at the end of the contract and said, 'here it is - it's finished'. All the game elements were complete and it was playable... it looked pretty basic, and didn't move very smoothly because I had to compromise on the frame rate vs draw distance. At about this time that solid fill 3D game came out for the C64 - 'space pirates' or 'predator' (Andrew: SPACE ROGUE by Origin?) or something like that... I played it and was blown away... I'm still not sure what they did to make it so smooth - I had a feeling that they used dynamic character mapped graphics instead of the bitmap mode, which would give them extremely fast fills for large flat areas - but SGII was written for bitmap mode and it was too late for such a major change. Jez of course points at that and says 'we have to go solid or we won't sell any'. Once again I'm in a room with some of his top guys telling me to try this and that - they showed me how to do solid 3D using horizontal fill lines so I take that algorithm and away I go to spend a week squeezing clock-ticks out of the inner loops and setting up self-modifying exit points so it can straight-line blit arbitrary length horizontal lines at the maximum possible speed. In the end we had a solid 3D version of the game which only lost 3 FPS over the wire-frame version - but it was still too much; the game went from being 'a bit clunky' to being nearly unplayable. Telecomsoft(?) pulled the plug and that was the end of that. The best bit of the project for me was learning how to do 3D graphics at a time when not many games programmers had a clue. The worst bit was spending an extra week on it above and beyond the contract terms, and then they didn't even pay the final invoice!" Pete Baron. |
||