Back in 2016, we published an article stating that the future looked bright for Saturn and Dreamcast. One year has passed and 2017 seems to be one of the best years for the Dreamcast Scene. We got many indie releases and also some games back online. However, the SEGA Saturn didn’t get the same attention, but that could be changing.
If you are a SEGA fan, you probably heard about Sonic X-Treme; The game that was in all magazines back in the 90’s and had one of the biggest hypes but never got released. Through the years, some prototypes have been found. The first one was made using the NiGHT´s engine, the second (the most known) was the fisheye version and lastly the unseen POV build. All three were made using different technology and it clearly shows that SEGA was struggling to get a decent demo. However in 2017, a fan named Maxime built a demo that is superior to any prototype made by SEGA. It looked so good that it was presented in one of the biggest European events about retro gaming, Retro Barcelona.
The demo itself is available to anyone who wants to try it in an emulator or on the real hardware. SEGA Nerds, however, needed to know more, so we decided to go after the man who created the game: Maxime.
SEGA Nerds: Hi Maxime, first i’d like you to introduce yourself and tell me when have you played the SEGA Saturn first?
Maxime: I’m Maxime, from Montréal, Québec. I first played the SEGA Saturn in 1995 or early 1996 when I was still a kid, with my first game being VF1. I remember being amazed by Virtua Fighter‘s CD audio, which contrasted with Genesis and SNES games’ audio (as for the graphics, I remember my friends telling me how glitchy it looked)!
SEGA Nerds: I assume by the time that the SEGA Saturn was in the market you were very excited hoping Sonic X-Treme would be released, am I right?
Maxime: Yes, I was reading American game magazines and looking at pictures. I didn’t understand much English back then, but I really wanted a platformer on the Saturn. When NiGHTS came out, I was disappointed that it was mainly a 2D game. I got an N64 at Christmas that year, so I was too busy playing Super Mario 64 to remember about Sonic X-Treme. By the time Sonic Jam and Sonic R came out, the Saturn was pretty much dead where I live and it was really hard to buy new games, so I only played them several years later.
SEGA Nerds: Have you played the prototypes? Which of them do you think would have fit better for the final game?
Maxime: I played the prototypes, but they were disappointing. I do like the visuals in the boss engine version, but it’s hard to tell if the game would have been any good from such an early tech demo.
SEGA Nerds: How did you have the idea to start developing Sonic Z-Treme?
Maxime: I didn’t plan to make Sonic Z-Treme. At first, I justed fooled around Jo Engine and tried to put a 3d model in the 2D Sonic demo. After that, I just tried to put a 3D plane and a rotating camera. After that, I just imported a level from Mario 64 (without collision detection). Then I had a basic AABB collision detection function, so I needed a “blocky” level to test it, so Sonic X-Treme‘s levels were perfect for this. I quickly made a Jade Gully look-alike level in Blender and went from there. I planned to keep simple levels, with not too much geometry to make it easy on the hardware. But later on, Andrew75 shared with me the actual Jade Gully map, but it was way too complex for my engine, so I created a map converter tool (with .OBJ Wavefront files), map partition for culling, textures import and collision masks generation. I also had to load it from the disc, so I created a custom binary file format, and I had to make everything fit in RAM. Andrew75 also shared the biggest Sonic X-Treme map, Crystal Frost, to test with my map converter. I still have to take into account texture coordinates during the conversion to fix issues. So yeah, Sonic Z-Treme is pretty much an accident, lol.
SEGA Nerds: I’ve tested your prototype version 0.035 and it looks amazing, Do you intend to finish the game (Please say ‘yes’)? If yes, how many levels do you think will be in the final version?
Maxime: Right now, I’m working really hard on improving the visibility culling to improve performance and have a better drawing distance, but it’s quite complicated. I’m also working on auto generating LOD quads to push the draw distance much further, but it’s also complicated. Another feature I’m working on is transparency using VDP2’s color palette for objects fade-in/out (like in Sonic R), which I got semi-working already. I also want to use the SCU DSP and made (little) progress on that front, but it’s still a long shot. All of this while also aiming for stable 60 FPS, which is what I currently get around 95% of the time, with some slowdowns in busy areas. I’m using SGL for graphics, but I’m not sure if I’ll have to fully write my own 3D implementation, which of course would take a long while, so I have no idea when the game will be finished.
SEGA Nerds: Is your intention to recreate all the Sonic X-Treme levels on Sonic Z-Treme?
Maxime: Right now, for the maps, I’m using Project AXSX’s maps that I converted for my engine. As for the amount of maps, I don’t know yet, but I’ll make sure to publish my map converter tool. I might also make some fully free-roaming “adventure” maps (à la Sonic Jam/Project Condor), but I’m not holding my breath as I have many many many things to do first.
SEGA Nerds: Are there other people helping you? If yes could you tell us what is the role of each one?
Maxime: It’s mainly a solo job so far. Of course, the maps are from Project AXSX and are auto-converted with my tool. I’m also often talking with Dany (who’s active in the Jo Engine forum), who’s a real programmer (unlike me), and he often gives me coding tips.
SEGA Nerds: Is it difficult to develop for the SEGA Saturn? The demo is already looking amazing, do you think is it possible to improve even more?
Maxime: Considering I had no past experience with C and game making, it’s very hard, but I don’t think it would be that hard for a real programmer using SGL and/or Jo Engine. Right now, I’m not making full use of the hardware, so it amazes me how much further the Saturn can be pushed. Very few games made use of the SCU DSP, many games made poor use of the Slave CPU and didn’t make a good enough use of the VDP2. Oddly enough, just by looking at Sonic X-Treme maps you can tell they that never had the Saturn hardware in mind, with maps being very poor candidates for VDP2 3d planes (unlike Sonic Jam and Sonic R). But even with VDP1 heavy games, the Saturn is very powerful, as long as you keep in mind that the VDP1 is slower than the PS1 GPU. One easy way to compensate this is to use the VDP2 color palette to draw sprites (which allows extra effects using the VDP2), use a software mipmapping solution (and/or lower quality textures) and use larger quads (which aren’t as bad as large triangles with the PS1). Even a game like Quake or Duke Nukem 3D on Saturn, two of the most impressive Saturn games, all had 64×64 4 bpp textures, which put heavy strain on the VDP1. With 32×32 textures, I’m sure these games could hit a stable 30 FPS. I managed to import Quake maps into my engine, so I’ll be able to test it.
SEGA Nerds: How long time did you take to develop the demo you have now? And how long do you think it will take to develop the full game?
Maxime: Too long! For the full game, I don’t know, I keep improving my engine for better graphics and performance, so it might take a while. I’m spending maybe 95% of my time on the engine and less than 5% on the actual game, so I’ll have to focus on the gameplay later on.
SEGA Nerds: Tell us where can we find more about your project?
Maxime: I upload videos on my YouTube channel once in a while. I’m also posting updates in several forums, including the Jo engine forum.
Thanks!