Friday, August 10, 2007

Another Confession - Exclusion Zones

An overlay DSF can define exclusion zones - rectangles where scenery from lower priority DSFs is not shown. Exclusion zones are organized by entity type - that is, you must make a separate exclusion zone for objects vs. forests.

The problem with exclusion zones in X-Plane 860 is that the implementation of exclusion zones isn't quite right for lines and areas.

Essentially any element of a DSF is zero, one or two dimensional:
0d - Points (objects, very small facade objects).
1d - Lines (beaches, roads, large facades with no roofs, bezier lines and bezier object chains).
2d - Areas (large facades with roofs, bezier pavement, forests)

The problem is that X-Plane eliminates any entity if and only if one or more of its vertices intersects an exclusion zone.

This can be wrong in two ways:
- If an entity intersects the exclusion zone, it is deleted entirely, rather than having the exclusion zone subtracted.
- If an entity surrounds or goes through an exclusion zone without a vertex being in the zone, it is left alone.

No comments: