>> Monday, January 7, 2008
While busy on Connaone CD-i, Rastersoft today reveals an early demo of a racing game on CD-i rendering in a mode-7 engine. Another option according to Rastersoft would be a pseudo-3D fighting game similar to Ballz. It's really amazing. The camera pans left, right and forward. Even at this early stage of development the movement is quite elegant. I'm guessing it doesn't need the DVC unless it's simply using the expanded memory that CD-i Emulator offers. This is Mode-7 programming in effect on CD-i! Usually associated with games on the SNES including Super Mario Kart, Chrono Trigger and F-Zero. A strict definition of Mode-7 is a simple texture mapping graphics mode that allows a background layer to be rotated and scaled. By modifying the scaling and positioning of the layer on a scanline-by-scanline basis a simple perspective effect can be applied, transforming the layer into a 2D horizontal texture-mapped plane that trades height for depth. In short it looks 3-Dimensional! A demo is now available from Rastersoft at this link.
Charles: "I wanted to try something a 'little more challenging' for the CDi, so I came up with the idea of trying to do a Mode 7 style racing game. I've been working on it for about 3 week, in my 'limited' spare time over the holidays. I started with a C version running under windows, and optimized that with fixed point math and table lookups. I then converted it to x86 assembly language, and moved it over to the FM Towns. The next version was the X68000 version, since it used a 68000 and was easy to debug using MESS (http://www.mess.org). The X68000 version was then ported to the CDi. Yep multiplayer, using half of the screen for each player, should be possible. It would be slightly slower than a single player version, but futher optimization will help with that. No, there's no need for the DVC. The graphic tiles, for this version, take up 56k, and the course map takes up 16k, which will be reduced to 8k shortly. There is still plenty of memory for compiled game sprites and a scrolling background. I might be able to use it to preload more of the data, if it's available or something." For now, the need for alternate scan lines is a necessary evil to make this work. Charles: "It's an attempt to lighten the load on the cpu. It only has to do half of the work each time. It shouldn't be alternating though. it should be consistently only drawing every other line (and every other pixel)."
Credits to Rastersoft