Page 1 of 2

Axelay scroll proof of concept

Posted: Sat Feb 25, 2012 10:31 am
by Shiru
Just made this small demo (video) that shows Axelay-like scrolling to prove the fact that SNES does not use Mode 7 to do this to some people who had doubts about my explaination how this actually works. No source code is provided because it is really crude (in C), made in no time just to get something working, and because I'm pretty sure everyone here know how to implement this anyway. Maybe the demo could be handy to someone in similar situation, or just as a confirmation that there is no problem to implement this on SMD.

Posted: Sat Feb 25, 2012 11:50 am
by Stef
The effect is very smooth, and on both planes ! Well done :)

Posted: Sat Feb 25, 2012 2:23 pm
by djcouchycouch
nice!

Posted: Sat Feb 25, 2012 2:36 pm
by sega16
Genesis does what Nintendo does
Nice work and I assume it is just an hblank raster

Posted: Sat Feb 25, 2012 3:03 pm
by Shiru
Yes, technically it is very simple - vertical scroll position modified every scanline using hblank interrupt and a precalculate table of offsets to create 'perspective' (i.e. just scroll_y+table[scanline]).

Posted: Sat Feb 25, 2012 5:29 pm
by sega16
That is what I assumed it was I relay think this could be used for something cool.

Posted: Sat Feb 25, 2012 5:47 pm
by HardWareMan
Same effect on "Blue Sky" logo in "Vectorman" and sky in "High Seas Havoc" title screen. Nothing special. :3

Posted: Sun Feb 26, 2012 1:40 pm
by ob1
Great.
Even though you say the effect is easily achieved, the fact is : you get what the game, graphically, was about. And that is good.

Kudos to you.

Posted: Sun Feb 26, 2012 2:39 pm
by ammianus
Interesting effect

Posted: Mon Mar 26, 2012 7:15 am
by Fonzie
Quite cool :)
One thing however, do you get any CPU time left during VACTIVE? That was always the issue I got with making rasters. And a shooter need a lot of collide computations, life is unfair!

Posted: Wed Mar 28, 2012 12:01 pm
by Shiru
I honestly don't know. I'm sure that there still could be enough time for game logic if it is all done properly, i.e. interrupt handler not in C etc. SNES is much slower, but manages to run the game well enough, I don't think SMD will be less capable in this case.

Posted: Thu Apr 05, 2012 7:59 am
by tomaitheous
Heh. Chris Covell made an Axelay demo too, a few years back. You can see it in the video here:
http://www.youtube.com/watch?v=f-YSnIDsz5U
(starting at 9:50)

Posted: Thu Apr 05, 2012 9:28 am
by Shiru
Funny thing that even the announcement in the video states that it is Mode7, although it isn't.

Posted: Thu Apr 05, 2012 8:40 pm
by andlabs
I'm guessing more people will recognize it by calling it "mode 7" even though it's not what it actually is. I've been on your side of the fence too :/

Posted: Sun Apr 15, 2012 1:41 am
by Oerg866
I tried something like this before as the concept behind it is quite interesting.

I am figuring out the math right now to make an universal scaling thing that scales a image to x lines using HBLANK routines :)