Quantcast

Results 1 to 10 of 10

Thread: 2D background scaling/rotation (not 3D!)

  1. #1
    urusei yatsura Master of Shinobi lumclaw's Avatar
    Join Date
    Jul 2010
    Posts
    1,362
    Rep Power
    16

    Default 2D background scaling/rotation (not 3D!)

    I'm struggling to find information about Saturn's real-world capability at rotating 2D layers.
    As distinct from 3D. Discussion of polygons is topic derailing, this will be the last you hear of it.

  2. #2
    Mega Driven Raging in the Streets cleeg's Avatar
    Join Date
    Oct 2010
    Location
    Outer Space 2
    Age
    40
    Posts
    3,129
    Rep Power
    56

    Default

    Zyrobs, where art thou? Do you mean the way in which it rotates the ground layers in, say, Panzer Dragoon?

  3. #3
    urusei yatsura Master of Shinobi lumclaw's Avatar
    Join Date
    Jul 2010
    Posts
    1,362
    Rep Power
    16

    Default

    Quote Originally Posted by cleeg View Post
    Zyrobs, where art thou? Do you mean the way in which it rotates the ground layers in, say, Panzer Dragoon?
    Maybe. More like the Sonic CD special stages. To my knowledge one of Sega's few (if only?) in house uses of the effect made famous by F-Zero.

  4. #4
    Master of Shinobi
    Join Date
    Jul 2006
    Location
    Birmingham, UK
    Age
    37
    Posts
    1,175
    Rep Power
    31

    Default

    You'll be wanting to search for the VDP2 manual. From a quick perusal it looks like the Saturn has six background layers plus one used for colour calculations and one which is used for background colour if no other layers are displayed in front of it. Of those layers two can be scaled and rotated, two can be scaled, scrolled, and used for line-scroll effects, but not rotated, and two can only be scrolled.

    So, for "mode 7" type effects, it looks like the Saturn can display two rotatable layers at once (a floor and a ceiling, for example), but if I'm reading things correctly it can't display any of the other scrollable background layers if both rotation layers are used. Also, one layer can't use the same image data as the other.

    Anyone with more experience with the system can feel free to correct me.

  5. #5
    Raging in the Streets Sik's Avatar
    Join Date
    Jan 2011
    Posts
    3,106
    Rep Power
    61

    Default

    Note that ceiling and floor don't necessarily have to overlap (meaning they can use the same layer in theory).

    Butů yeah it's a lot more complex than that, since you have to also tell the VDP2 how to spend its budget for memory accesses, and that influences how far you can push it. Also if I recall correctly a scaling layer is limited to at most shrinking to 0.25x (VDP2 runs out of memory bandwidth if you try smaller). In fact you can free up some memory cycles by limiting the shrinking to 0.5x instead.

    I suppose that two mode 7-like layers + the polygons from VDP1 would be an oversimplified summary if you take it to its limit (note that VDP1's layer always comes for free, since the VDP1 passes its output directly to the VDP2 instead of being treated like a VRAM access, and VDP1 has its own separate VRAM too). In practice you'll more likely see only one rotating layer being used so the remaining ones can be used for less flashy purposes (and VDP1 can easily make up for the limitations, unlike what you have e.g. on the SNES or GBA).

  6. #6
    WCPO Agent
    Join Date
    Sep 2012
    Posts
    912
    Rep Power
    25

    Default

    The VDP2 has:
    - a single background colour
    - a line colour, you change it per lines to make gradients and whatnot
    - two backgrounds with scaling, linescroll, rowscroll, and bitmap modes (NBG0, NBG1)
    - two backgrounds limited to scrolling, tilemaps, and 256 colours max (NBG2, NBG3)
    - one background that can rotate and scale freely and has 2 planes (RBG0)
    - one background that can rotate and scale freely but can't do bitmaps and only has one plane (RBG1), and if you turn it on, you disable NBG0 to 3.

    So at most you have 5 backgrounds, plus a gradient behind everything.
    Only NBG0, RBG0, and RBG1 can do 24-bit colour. NBG1 is maxed at 15bit, NBG2-3 is 8bit.

    For the RBG0 "planes", you can set up two sets of transformation matrixes. That means you can have one half of the screen transform in some way, and the one half in a different way. So you can do two mode 7 planes, as long as they never intersect. And since the two planes are handled in hardware, you can rotate them in any way. The last two levels in Radiant Silvergun are the best examples, you have an infinite ground plane and an infinite skybox, using different graphics, which meet in the horizon - and it's just one background. Panzer Dragoon, Last Bronx, and Sonic Jam also did this.

    The second rotating screen, RBG1, is not as useful because it has only one set of matrix coordinates, and you give up 4 scrolling backgrounds to use it. I know only one game that used it, Scorcher.

    You can also replace NBG1 (I think) with a 24-bit external screen input. Those bits are mapped to both cart slots. The MPEG card uses it, but you could also put it in the main cart slot. If you can get the power usage low enough, you could make a Megadrive converter cart by having a cart containing the full MD hardware, hooked up to the external video input pins, and a bootrom to handle inputs.

    The rotating backgrounds also can't do hi-res, and they are limited to one direction when doing mosaic effect.

  7. #7
    WCPO Agent
    Join Date
    Sep 2012
    Posts
    912
    Rep Power
    25

    Default

    Quote Originally Posted by Sik View Post
    Note that ceiling and floor don't necessarily have to overlap (meaning they can use the same layer in theory).

    Butů yeah it's a lot more complex than that, since you have to also tell the VDP2 how to spend its budget for memory accesses, and that influences how far you can push it. Also if I recall correctly a scaling layer is limited to at most shrinking to 0.25x (VDP2 runs out of memory bandwidth if you try smaller). In fact you can free up some memory cycles by limiting the shrinking to 0.5x instead.

    I suppose that two mode 7-like layers + the polygons from VDP1 would be an oversimplified summary if you take it to its limit (note that VDP1's layer always comes for free, since the VDP1 passes its output directly to the VDP2 instead of being treated like a VRAM access, and VDP1 has its own separate VRAM too). In practice you'll more likely see only one rotating layer being used so the remaining ones can be used for less flashy purposes (and VDP1 can easily make up for the limitations, unlike what you have e.g. on the SNES or GBA).
    NBG0-1 is limited to 1/4th to 256x scaling. RBG0-1 is unlimited.

    RBG0-1 allows for 4 times larger graphics to be loaded (16 planes vs 4 on NBG0-3).

    The most you can pull out of the VDP2 is either two non-intersecting mode 7 grounds plus a third that can go over/under the other two, plus polygons, plus line colour. Or two non-intersecting mode 7 grounds, plus 2 scaling backgrounds, plus 2 scrolling backgrounds, plus polygons, plus the line colour. The second configuration was far more popular as it had more backgrounds, even if it was less useful for 3d.
    It's why Virtua Fighter 2 had so ghastly backgrounds, you could see that the fight took place in a 3d arena suspended over two bitmaps. Last Bronx "fixed" it by having the bitmaps saved as super wide panorama shots, which made them look much better.

    The main issue IMO was that on the VDP1 side, you were limited in interacting with the VDP2. You could either only do VDP2 interaction, OR hardware shading+polygon transparency. And going hi-res locked out the latter.

    If the RBG1 could do two transformation matrixes, then you could've gone so crazy with 3d effects...

  8. #8
    Raging in the Streets Team Andromeda's Avatar
    Join Date
    Jul 2010
    Location
    Wales, UK
    Posts
    4,544
    Rep Power
    50

    Default

    Quote Originally Posted by Silanda View Post

    So, for "mode 7" type effects, it looks like the Saturn can display two rotatable layers at once (a floor and a ceiling, for example), but if I'm reading things correctly it can't display any of the other scrollable background layers if both rotation layers are used.
    Street Racer does that, but the game never seems to get any credit. Despite it being some of the best use of the VDP II
    Panzer Dragoon Zwei is
    one of the best 3D shooting games available
    Presented for your pleasure

  9. #9
    Raging in the Streets Team Andromeda's Avatar
    Join Date
    Jul 2010
    Location
    Wales, UK
    Posts
    4,544
    Rep Power
    50

    Default

    Speaking of which here a nice video of the game and how the VDP 2 support made the game look far far superior to the PS
    Last edited by Team Andromeda; 02-13-2019 at 09:24 AM.
    Panzer Dragoon Zwei is
    one of the best 3D shooting games available
    Presented for your pleasure

  10. #10
    WCPO Agent
    Join Date
    Sep 2012
    Posts
    912
    Rep Power
    25

    Default

    It also uses background blending to simulate fog and make the polygon popup smoother. And the static background uses the line screen for a gradient, plus 2-3 sprites (since the VDP2 is fully occupied just doing the ground and sky). Surprisingly complex for such a simple game, I thought only Sonic R used the background blend for popup.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •