Hi - first post, with a whole bunch of questions...

Ask anything your want about Megadrive/Genesis programming.

Moderator: BigEvilCorporation

cdoty
Very interested
Posts: 117
Joined: Wed Nov 29, 2006 2:54 pm
Location: Houston, TX
Contact:

Post by cdoty » Thu Sep 20, 2007 3:54 am

This should be possible on a Genesis. You have to lay out the tiles so you can treat the display as a bitmap with a weird pixel layout. A lot of Mode 7 style games only have the lower 1/3 to 1/2 of the screen show the floor. The rest could be a scrolling tilemap. The rotation values are only calculated for the 4 points on the screen, and interpolated down the left and right edge (if I remember correctly) using a DDA line routine. It can all be done in fixed point math. On the Genesis, you could treat both nibbles of the pixel as one big pixel, or even a 2x2 pixel group to futher improve performance. You would want to use rasters to change the color palette on the floor. And, you would probably have to use two different tilemaps, and sets of tiles, to allow for double buffering. I don't think this routines would run anywhere near 30 or 60 fps.

Scaling stuff on the ground, such as trees, is going to be very difficult, unless you have a bunch of prescaled sprites. You probably could use the interpolated values to find the location of objects on the screen, based on their position on the ground.

I did something like this years ago on a 486-33. It was fairly taxing on that system.

Another idea would be to use a normal nibble pixel layout, and find a way to DMA the graphics into the correct Genesis format (using the address increment register). That would be roughly 9.5k to 12k per screen used in ram, and you would need two. This is for a 256x75 or 320x75 area.

skroooagh
Interested
Posts: 11
Joined: Sat Jul 07, 2007 1:42 pm

Post by skroooagh » Tue Sep 25, 2007 3:14 am

Whoa, thanks for bumping this thread! A timely reminder that I really need to lift my game, heh, I've learned so little since I made this thread (spent most of the time "researching" by playing my old Genny games for four months:?)

Just for reference, here are a couple of videos featuring games with the effect I'd like to attempt on Megadrive:

Tekken Advance:
http://www.youtube.com/watch?v=feAWdXVvc0U

Mortal Kombat: Tournament Edition
http://www.youtube.com/watch?v=vBr4uuHvxHk

(now, keep in mind that these games were designed for the tiny resolution of the GBA screen, so that combined with crappy Youtube decoding means the graphics look a lot worse than they actually are)

Basically, I don't want the camera to zoom in/out as the characters move away from each other, I don't need the fancy shadows/reflective floors, I don't need the ring boundaries, basically just a floor that turns when the character steps so as to simulate movement on a different axis.

All I'm aiming for at this stage is a scrolling background, the two fighters, and this floor, perhaps with the capability of projectiles. Like I posted originally, I'm sure I could get this working to a degree on SNES, and maybe even on Mega-CD (as far as I know it has some sort of legit mode 7 capabilities?), but getting something like this on MD would really be great.

If not, I have a few other ideas up my sleeve... I just have to stop dreaming and start working already. Bah!

skroooagh
Interested
Posts: 11
Joined: Sat Jul 07, 2007 1:42 pm

Post by skroooagh » Mon Jan 14, 2008 6:52 am

*BUMP* for a question I now have...

I've seen games for GBC that use a pre-rendered FMV-style background to create the illusion of 3D and I'm wondering how feasable this would be for Megadrive. I'm guessing this is how the special stages in Sonic 2 are rendered, yes? How many frames of background animation do you think could realistically fit on a cart, with the appropriate compression/tile-mapping in play?

Thanks!

Post Reply