Thursday, April 12, 2007

Will it Ever Be Done (WED)

The internal joke about WED (the new scenery editor) is that it stands for Will it Ever be Done. So I should say that, given my total inability to predict when it will be done, and how many delays and setbacks there have been, I don't expect you to believe anything I say until I actually ship something you can run (or at least post some screenshots*). I realize that I have destroyed my credibility about ship-dates by having no ability to predict ship dates for WED.

With that in mind, I am pleased to report that today I was able to run WED with a few features working in concert:
  • Multiple selection (map and hierachy view).
  • Multiple undo everywhere.
  • Marquee multi-selection tool on the map view.
  • Tree-based hierarchy view with editable property fields.
WED still can't do anything remotely useful, but these four features represent a huge amount of infrastructure investment. Basically my goal is to provide some of these user-interface features (multiple undo, multiple select, multiple tools, etc.) for every single type of scenery component that you can edit.

Since apt.dat contains a lot of different components (just look at all the record types in the file format) and WED will also have to edit DSFs with a wide variety of data, it made sense to me to write a generic mechanism for these features that could be used over and over again without writing new code.

So my hope is that I'm just getting over the "hump" of writing infrastructure, and soon will be able to add two dozen more types of editable things to WED (other than my simple test objects) very quickly. We'll see if it pays off.

The plan is still for WED releases to be separate from X-Plane and to be open source (MIT/X11 license). I've been meaning to post in Chris's programming blog about some of the design ideas WED employs - it makes a good laboratory. Hopefully those posts can also provide some guidance if anyone decides to modify/work on/steal the WED source code. (It is my expectation that most programmers will not want to get into the guts of how WED works, as it is a fairly complex application. I think I can make simpler interfaces to things like import/export to make extending the program simpler.)

Anyway, WED is not the only thing I am working on right now, and you don't have to believe me, but the WED codebase is growing, and some of it even works!

* I am not posting screenshots because the program is running right now with "scab art" - that is, ugly green, red and purple boxes that will be replaced with nice PNGs once the layout settles down. I do not want to make our artists draw the UI components more than once, and I don't want to answer 1000 emails about "Why is it so ugly" by posting the scabs, which are perfectly adequate for my own coding purposes and not intended to ship.

2 comments:

Alejandro Garcia said...

your work is growing and growing. We all wait for your work and hope all this time will mean a great program.

You have our support Ben!

Anonymous said...

We understand that X-Plane 8 and the future WED are a big amount of work for your team. Do it as fast as possible but do it good !

You still have our support, keep on the good work !