Sunday, October 10, 2010

Coping With Variable Rendering Options In X-Plane 10

X-Plane 10 will have rendering options for global illumination and global shadows. This leaves one question: what if the user has these features disabled?

The plan for version 10 is this: the OBJ file format will have some extensions to allow conditional commands based on rendering settings. A few notes on these conditional commands:
  • They will only be based on rendering settings.
  • They will be evaluated once when the object is loaded. (If rendering settings change, the object will be reloaded.)
The idea is to be able to change which lit texture you use or remove a set of shadow polygons depending on rendering settings.

The conditionals are evaluated once at load time so that the object can be fully optimized based on the particular set of conditionals used. For example, if your drop shadow (with ATTR_poly_os) is fully removed at load time (because global shadows are on) your object now has fewer attributes, which is good for frame-rate.

This is very different from ANIM_hide. The hide animation may or may not hide depending on datarefs; to keep this fast, you cannot "hide" an attribute, only triangles. This means you "pay" for your atttributes no matter what.

The motivation for both designs is this: if the set of attributes in a file never changes (e.g. they are either conditionally removed at file load once, or they are always present regardless of animation) then we can optimize the attributes of an object once knowing how they relate to each other, to create the leanest, meanest OBJ.

3 comments:

Dirk Hohndel said...

Ok, enough of the teasing... this all sounds so amazing - I can't wait to get my hands on the first alpha. Heck, PRE-alpha.

So... before Christmas? First half of '11? Before the next Olympics? This decade?

Just checking

Unknown said...

what? no caustics? no refraction, diffraction, DoF or indirect illumination? ;-)

Seriously, it sounds great, can't wait.

(as long as toon-rendering is not an option, that is...)

cheers
peter

Jim Dalgleish said...

Thanks for being so open about the development of X-Plane 10 Ben. It's nice to hear about the "human-ness" of the process, and to hear from somebody else's perspective other than Austin's.

Just out of curiosity, will the clouds and/or environment effects (rain/snow) be able to pick up lighting as a function of the new global illumination, such as landing lights, strobes, beacons or nav lights when flying in IMC, especially at night?

Cheers,
Jim