FF6-style overworld
Displaying 1-16 of 16 total.
1
Technetium
|
I guess it is a little bit subtle in this picture, but the map is skewed to a trapezoid shape with appropriate scaling of tiles towards the top of the screen.
I also added some lighting at the top of the screen, and some randomized clouds.
The whole thing looks better when moving, as the clouds move, the water is animated, and the 3D effect is much more obvious. There is a little tiny bit missing in the upper right corner, but it's minor and I'm not going to get around to fixing it right away. The animation is, as you might expect, a little bit choppy. There is a lot being done every retrace.
Posted on 2005-05-25 23:30:37
|
Gayo
|
What'd you do? I thought about doing this sometime by taking each line and stretching it as appropriate, but that would probably be even slower.
Posted on 2005-05-26 01:14:09
|
Ness
|
Heh, I was trying to figure out the same kind of thing, but all I got was the Terranigma underworld effect. Unless your game happens on the inside of an infinitely long cylinder, it's not of to much use.
Posted on 2005-05-26 09:46:38 (last edited on 2005-05-26 09:57:38)
|
anonymous
|
that's pretty awesome. How are you achieving the lighting and shadowing of the clouds? And is it running fast enough to see practical use in something?
Posted on 2005-05-26 20:57:57
|
anonymous
|
this is basil, by the way
Posted on 2005-05-26 20:58:38
|
Technetium
|
You don't need to scale every line. It's close enough doing every 8 pixels of height. I will say again, though, that it is still fairly slow (probably around 8-10 frames/second).
The clouds are just greyscale images which are placed with additiveblit (the shadows are the same image done using subtractiveblit). The lighting towards the top of the image is just another gradient placed with additiveblit.
It uses a big-ass nested loop to redraw a portion of the map from about 200 pixels above the screen to near the bottom of the screen, and about 176 pixels beyond either side of the screen. Fortunately, Verge3 does not generate an error when you try to draw tiles that are out of the map's dimensions. It is then scaled by row (after using grabregion to break it into 8-pixel rows) so that the top row is equal to the screen width, and the bottom row is about twice the screen width. For the height of each row it uses a linear function (y/4 + 1, in this case) to define the height of each row and at what point to draw specific rows. To avoid that 'inside a cylinder' look, you need to make sure that you are increasing the width of the row at the same rate you are increasing the height (to keep a constant slope). The variable that defines the height of the row is the same variable that determines the width.
Lots of trial and error (about 3 days straight in my case) also help. :-)
Posted on 2005-05-26 22:18:42
|
anonymous
|
When do we get to play with it?
-basil
Posted on 2005-05-27 05:47:39
|
Joewoof
|
Exactly. :)
Posted on 2005-05-28 02:34:10
|
Omni
|
I didn't get to say it earlier, but!
Congratulations to Technetium for making a raster scrolling map that doesn't suffer from what can only be described as the Slope Curve Curse.
EDIT: That looks so bloody awesome. As a side note, it'd probably be a ton faster in 320x240 rather than 640x480, right? :)
Posted on 2005-05-29 20:47:26 (last edited on 2005-05-29 20:48:14)
|
mcgrue
|
I have to say that that's a pretty damn swank screenshot. I can't wait to see it in action.
Posted on 2005-05-30 11:29:06
|
Technetium
|
Quote:Originally posted by Omni
EDIT: That looks so bloody awesome. As a side note, it'd probably be a ton faster in 320x240 rather than 640x480, right? :)
I would guess either twice or four times the framerate.
I'll probably just put together a demo using the sully world map since that is in 320x240 and I think most people are still developing Verge for that resolution.
Maybe in a few days, I guess.
Posted on 2005-05-30 15:48:59
|
Omni
|
What if you render the actual map in 320x240?
IE, use scaleblit to display the map on 640x480, but only use 320x240 real pixels to do so. It would mean half as less work (vertically speaking -- I doubt the speed increase gained by cutting pixels horizontally matters, as the big speed gain probably comes from half as less blit function calls, not the amount of data the blit processes) and would still work without changing the system resolution.
I think emulators like ZSNES run Mode7 by default in a less than high (640x480) resolution. It would be a quick and easy way to gain speed.
Posted on 2005-05-30 23:15:06
|
rpgking
|
Does Verge3 run on Direct3D(seeing as how DirectDraw has been dead for some time)?
If so, couldn't there be a built-in Direct3D mode7 effect...similar to the one andy/tSB made for ika using OpenGL? It would be much faster than any effect we can make using VC.
Posted on 2005-06-01 19:19:43 (last edited on 2005-06-01 19:20:43)
|
Omni
|
Oh, yeah, sure, maybe...while we're at it, we can expose all of Direct3D too :)
Posted on 2005-06-01 21:48:52
|
basil
|
Yeah, did you hear verge 4 is out? You can go download it at http://www.delorie.com/djgpp/
Posted on 2005-06-02 06:11:38
|
Omni
|
LOLOL
Posted on 2005-06-02 11:43:54
|