Tech Support Blog

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Wednesday, 8 August 2007

Scenery Tools and Compatibility

Posted on 08:30 by Unknown
In my previous post I mentioned that the scenery tools are separate code with a separate release schedule from X-Plane. This implies that the updates to the tool won't be in sync with X-Plane. (The same thing is already true for the AC3D plugin and all of the wonderful third party tools that people have written.)

X-Plane's scenery compatibility strategy is "backward but not forward". In other words, if you open old scenery with a new X-Plane and it won't open or looks different, that's a bug (please tell us). You should never have to modify your OBJs or scenery if they are correctly made, and the definition of "correctly made" shouldn't get more strict over time.*

Why no forward compatibility? Well, it's possible to have syntactic forward compatibility (have X-Plane read a file it doesn't understand because at the time of release the spec didn't exist) but it's not possible to have X-Plane display that file with any kind of sanity.

You could say "just leave out stuff you don't understand". Well, imagine if we had done that with apt.dat -- imagine if X-Plane 840 tried to display an 850 apt.dat by simply skipping what it didn't understand. Since taxiways are fully replaced with a new code, 850 layouts would have no taxiways at all if shown in 840. This is certainly unacceptable.

The only way around this would be to require all new features to have "fallback" content, e.g. have the file contain two copies of all taxiways. Since the structure of 850 and 810 taxiways are so different, this would basically require the author to do twice as much work...similar problems happen for animation commands, and missing datarefs.

So the content has to be older than the sim. What about tools?

Well, first, I don't write the tools with forward compatibility. Since they are all free a user can easily get the newest tools to work (in a sane manner) with new content.

The tools do have to support old file formats though - we don't usually post old copies of the tools (the AC3D plugin is an exception, since old versions work with old host copies of AC3D). Instead the tools are designed to support restricted file formats. For example, the AC3D plugin will export to OBJ7 or OBJ8 - authors targetting X-Plane 7 can export to OBJ7.

WED only exports apt.dat 850 files - this is by design from day 1, and it will not ever be an apt.dat 810 editor. (Use TaxiDraw if you need to do this.) However, as new X-Plane features emerge (and I am sure they will), WED will have options to target future X-Plane versions, or restrict the export to only features supported by older versions, perhaps with a warning if the WED document contains features that will be lost in an old export.

* One problem we have with this is: X-Plane isn't a strict validator of scenery file formats, so it is possible to have mistakes in scenery that were always illegal by definition of the file format, but X-Plane doesn't notice at first. When I detect a case like this, I try to make the problem a "warning" rather than have X-Plane quit, so that authors can get information on buggy files without users suffering too much. X-Plane will print only one warning per package per scenery load to keep things streamlined.
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
Posted in file formats, scenery system, tools | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

Categories

  • absurdly cute
  • Air Traffic Control
  • aircraft
  • Android
  • animation
  • announce
  • cockpits
  • documentation
  • drivers
  • file formats
  • global scenery
  • Goofy Screenshots
  • hacks
  • hardware
  • hobbies
  • inside x-plane
  • installer
  • ipad
  • iphone
  • legal
  • localization
  • modeling
  • off topic
  • palm pre
  • panels
  • performance
  • plugins
  • political
  • scenery system
  • tools
  • X-Plane 10
  • XSquawkBox

Blog Archive

  • ►  2011 (12)
    • ►  February (1)
    • ►  January (11)
  • ►  2010 (111)
    • ►  December (4)
    • ►  November (4)
    • ►  October (10)
    • ►  September (9)
    • ►  August (12)
    • ►  July (8)
    • ►  June (4)
    • ►  May (13)
    • ►  April (13)
    • ►  March (11)
    • ►  February (12)
    • ►  January (11)
  • ►  2009 (130)
    • ►  December (16)
    • ►  November (11)
    • ►  October (6)
    • ►  September (16)
    • ►  August (12)
    • ►  July (11)
    • ►  June (9)
    • ►  May (5)
    • ►  April (10)
    • ►  March (9)
    • ►  February (9)
    • ►  January (16)
  • ►  2008 (147)
    • ►  December (18)
    • ►  November (10)
    • ►  October (7)
    • ►  September (11)
    • ►  August (15)
    • ►  July (9)
    • ►  June (14)
    • ►  May (9)
    • ►  April (14)
    • ►  March (13)
    • ►  February (6)
    • ►  January (21)
  • ▼  2007 (100)
    • ►  December (17)
    • ►  November (13)
    • ►  October (13)
    • ►  September (9)
    • ▼  August (17)
      • Why Don't the Cars Drive Backward?
      • Dual Core? Definitely
      • Image Formats and File Extensions
      • The case for DDS
      • What Doesn't Get Compressed?
      • Texture Compression Is Your Friend
      • Spankings
      • No more scenery in the Resources/Earth nav data fo...
      • WED beta 2
      • Split Beziers Part 3: A Workaround
      • Split Beziers Part 2: The X-Plane 860 Bug
      • Split Beziers Part 1: What's a Split Bezier
      • Another Confession - Exclusion Zones
      • So Why Doesn't X-Plane Look Like This?
      • That's one biiiiig polygon
      • Scenery Tools and Compatibility
      • WED Lives!!
    • ►  July (7)
    • ►  June (4)
    • ►  May (6)
    • ►  April (9)
    • ►  March (2)
    • ►  February (3)
Powered by Blogger.

About Me

Unknown
View my complete profile