The Rendering Engine

This pages shows off "some" of the technical side of Future Pinball, specifically the
Reflection Rendering Engine which provides real time playfield reflections (objects off the glossy playfield) aswell as glass reflections (the backglass off the playfield glass).

In This Example I am using the Williams Pinball "Black Knight 2000" which was released in 1989 by Williams Electronic Games, Inc.
(All Graphics are copyrighted by WMS Gaming)

I chose this example as it's a real world example of a complex multilevel playfield design and shows off some of the complexity required of the rendering.

Although this page only shows off 10 pictures there are more rendering passes than
shown here but that would get a bit too technical.

First the "Reflections" of objects sitting on a Surface (marked as being reflective) are rendered. Each Surface is done one at a time (in height order)
and the reflection texels are clipped to the surface outline.

The Texture of each Surface is then blended over the reflection data. At this point any light inserts have been cut out of the rendering process.

The "Reflections" of all the main playfield objects are then drawn.

The Main Playfield Texture is then Blended in
(again any light inserts have been cut out of the render output)

Any Opaque (ie not Transparent) Sufaces and Guides are then Drawn

All Light Inserts and then Rendered onto the Scene.
These have to be blended in so any reflection texels shine though.

The Rest of the Playfield objects (including the ball) are then rendered into the scene.
Objects (such as the wire guides) can be Sphere Mapped to allow for Dynamic
Texturing for a true metal look

Any Transparent Objects are then Blended in (with some funky Z-Buffering). In this example only the inlane middle plastics are transparent

Light Halos (Optional) are then overlayed over the Render Output which gives the impression of much better lighting effects

The Glass Overlay is then drawn aswell as any backglass objects
which reflect off the glass.


Future Pinball © 2008 Christopher Leathley - BSP Software Design Solutions