What's the technique that FF8 uses to render polygons onto bitmaps?

Started by
12 comments, last by DMINATOR 19 years, 3 months ago
In the FF7, FF8, and FF9 games, there are bitmap backgrounds in which 3d polygonal chracters interact and move around. Is there a name to that technique? [Edited by - Basic_314 on January 5, 2005 8:27:37 PM]
Advertisement
They're probably not static bitmaps per se, but bitmaps but overlaid with extra information that the game developers probably added on with custom in-house editors; information such as collision data, etc.
I eat heart attacks
I'd just call it rendering to a texture. I don't recall a catchy name for it. I guess that doesn't mean there isn't one, though :o)
Harry.
The old resident evil games used this method as well. It seems to be that they take a simplified mesh from the original 3d scene and move around that. The bitmapped backgrounds are just drawn over in layers.
I believe that the bitmaps are drawn with a z-buffer, so that it overlaps appropriately with the 3D characters. I'm not sure how this is implemented, however.

Edit: This came from one of my books that was commenting on "Grim Fandango", a game that uses a technique that may be the same as used by FF.

"The 3D characters could walk behind objects in 3D sets, which could be achieved easily as layered sprites but with today's hardward a pre-rendered depth buffer would be a better choice. Modern art tools like 3D Studio Max give artists the option of rendering the depth buffer along with the RGB channels, so generating this data is a piece of cake."

(Taken from Game Coding Complete by Mike McShaffry)

Hope that helps.
Thanks;
I'll look more into that.

I'll post back.
Yeah, the Microsoft program 3D Movie Maker did that effect. Here's an example of what the effect looks like:
Background image:


Objects are correctly covered up by it, even though it's a 2D bitmap:


The key to this effect is this, the ZBMP:


The ZBMP is saved along with the background image (MBMP), and when the scene is loaded, the ZBMP is written to the ZBUFFER before (3D) rendering starts.
3DMM is a software renderer (so it works differently than modern stuff), but in OpenGL, I'd do it like this:

1. Disable depth testing.
2. glDrawPixels of the background image (format=GL_RGB)
3. glDrawPixels of the ZBMP (format=GL_DEPTH_COMPONENT)
4. Enable depth testing
5. Draw 3D objets.

Dunno how fast that'd be, glDrawPixels isn't exactly a speed demon.

As for a name, I've not heard a name for this technique. Maybe something like "Pre-Rendered backgrounds with ZBuffer".
well, I know for sure Final Fantasy games did not use 3d data to the extent that 3D Movie Maker does, but they use collision data that the engine uses to decide what objects get rendered first, etc.
I eat heart attacks
Dunno about that, I've not had the chance to pull apart a Final Fantasy game yet.
An alternate method comes to mind:
1. Draw the 2D background with glDrawPixels (depth=off)
2. Render a simplified 3D version of the background with color-writing off but depth testing on.
3. Render 3D objects. (color=on, depth=on)

It would probably be faster on modern hardware (where glDrawPixels isn't fast), but harder to make (you can't just export RGB+Depth images)
By the way, TravisWells, do you have 3DMM?

And, will it only run on Windows 95?

I'll be back.

This topic is closed to new replies.

Advertisement