The buzz is building over X-Plane® 10 and we’re all eagerly looking forward to its new features. One of these looks like it is going to affect the OpenSceneryX library in a big way: The new X-Plane® global lighting model. When global lighting is enabled, X-Plane® will dynamically shed light, not just from the sun and landing lights (as X-Plane® 9) but also from other light sources. In addition, it will also generate dynamic shadows from all these light sources.
This affects OpenSceneryX in two ways: Firstly, a lot of the existing objects in the library include faked shadows, created by flat surfaces placed on the ground with a texture that looks like a shadow. Secondly, a number of objects have LIT (night) textures that contain simulated spill lighting effects as if there was a light shining on the texture.
Both these hacks will no longer be necessary in X-Plane® 10 with global lighting switched on, as it will automatically generate these effects and the combination of the two will look awful on screen. So, what do we do?
Well, there are two issues to tackle: The policy for new submissions to the library, and what we do with all the existing objects that use these techniques to simulate lighting.
There are already many complaints about the size of the library, so we have to think long and hard about any decision that is going to make it even bigger. Supporting night-time spill lighting effects in both X-Plane® 9 and X-Plane® 10 would mean that for many objects we would need two lit textures, which means doubling the disk space for the lit texture. I have decided that this is not a forward-thinking policy and will reject submissions that do this. We will therefore only be accepting submissions with either no lit texture or a single lit texture, and this texture should not have any spill lighting effects built in.
As for shadows, I am less concerned as a built-in shadow only increases an object’s size by a small amount, so although I would recommend that we all look to the future and don’t have burned-in shadows at all, if you want to include one it will have to use the new X-Plane® 10
ATTR_draped attribute (see Ben’s RFC concerning this here) and be wrapped in a conditional block (a new feature coming in X-Plane® 10) that means it is only shown when global lighting is switched off. Bear in mind that if you do this, the object will not show up in X-Plane® 9 at all.
Existing lit textures that contain spill lighting effects are a problem, because these would need to be re-made without the spill effects to look good in X-Plane® 10 with global lighting on, and re-making textures is something that the original author has to do. We will therefore be auditing all lit textures and removing those that contain spill effects. Any individual author who wants to update their lit textures to remove spill effects, please do so and send me the updated objects.
Existing objects that contain built-in shadows will look awful with global lighting, so we will be auditing all objects and removing these. We cannot wrap them in conditional blocks because then X-Plane® 9 will fail to load them altogether, and I’m of the opinion that it’s better to see the object without a shadow in X-Plane® 9 than not see any object at all.
I hope these measures don’t seem too draconian, especially as OpenSceneryX enhanced airports will lose their shadows in X-Plane® 9, but I strongly believe we need to be forward-thinking and look to the future of X-Plane, which includes a fully operational lighting model that we should be taking full advantage of.