Randomize it!

I have added a little new feature to ObPlacer XML. While finishing some general aviation airports for the [NL2000] scenery I was planting trees with ObPlacer XML and I noticed that the resulting scenery was a bit boring with all trees having the same size. So I decided to add a little option that allows you to randomize the scale of certain objects.

Let me explain a little further how this work. First you just place all the trees like you normally do, so without taking care of the scale. After you are done you use the newly added “Scale Randomizer” tool. This will show you a list of all objects used in your XML file. So from this list you select your tree MDL file(s). You also enter between which two values the scale should be randomized. After that it is just one click to make the scale of all instances of the selected object type random.
This really makes the scenery look better in the end, as all trees look a little different now.

Another option I have added to ObPlacer XML is that you can also place Trigger objects of the type REFUEL_REPAIR. So this allows you to easily add a refueling area to your scenery.

I will use the Christmas break to finish the coding and release the new versions of the tools I have blogged about recently. So keep an eye on the site for news about the release. And of course I will also use that break to test the FsX changes some more and if possible add options to support FsX better with my tools.

 

Early christmas present

Most of you have probably already seen this, but MS has released an update to the FsX SDK. You can get it from the FsInsider download
page. Probably the most important component of this update is the GMax
gamepack for FsX, this allows us to make models from GMax in the new
MDL format.

One warning, as I have seen some discussion about
this on the forums already. You need to have FsX Deluxe to use this SDK
update (and to use the GMax gamepack as well thus). The update requires
that you have the origional SDK installed and that only came with the
Deluxe version. So take note of that.

I have not tried all new
features of the FsX gamepack, but already from some first tests I can
say that it is a big improvement over the past. There are some features
that we had to tweak for in the past, that can now be set directly from
GMax. For example to kill the shadow generated by an object or to unify
the shading of all polygons (often used on trees to match the autogen
trees).

Of course there are also some other features that we
still miss and at the moment I can’t say yet if we can tweak these in
again. That is because the MDL format has changed and I am still
studying the new format, to see all consequences of that. Once I
figured out some more, you will certainly hear more about it.

I
think this SDK update is a nice (early) Christmas present, that should
keep us busy exploring the new gamepack during the coming Christmas
holidays…
 

Lazy LOD

As I already mentioned in my previous post I have been working hard on a scenery of Schiphol airport recently. As this is quite a big airport and we tried to make it detailed as well, we ended up with a lot of objects. Unfortunately this did not improve the performance a lot. In the past you could easily limit the visibility distance of an object with the v1 value of the reference point. But in the Fs2004 XML format this is not possible.

I know you are know thinking that we should just have added LODs to our MDL files and I guess you are right on that. But for most objects we did not do that. Partly because the performance was not too bad until now and probably also because it takes quite some time to make good LOD models for complex buildings. And a third reason is probably just that we are a bit lazy sometimes.

But to increase the performance a bit, we still had to limit the visibility of the objects, as the default range the scenery engine uses is a bit too big in general. So I extended MDL Tweaker a little bit, so that it can now also create conditions using the IFSIZEV and IFSIZEH commands. These are also used by the LODs generated by MakeMDL to determine which LOD to show. This command checks the amount of pixels that is used by a certain length at the position of the object. If this amount of pixels is below the threshold specified, the lower LOD will be shown (and in our case I used an empty LOD for that). The advantage of this command over a simple distance check, is that it also depends on the screen resolution you are using. So if you run at a higher resolution the objects will show earlier, as they should to get the same image quality. If you use a fixed distance the object seem to pop-up later if you run at a higher resolution.

So based on the radius of the bounding box of the model, I added such a condition to all MDL files used in the scenery project (with a new batch functionality I added to MDL Tweaker as well). After some tweaking to get the correct threshold value for the resolution, this resulted in a nice increase of the performance of the scenery.

I will probably release the updated version of MDL Tweaker soon as well. I just want to check some other bugs and features that are on my todo list at the moment. But I think support of the IFSIZEV and IFSIZEH functions are welcome to other designers as well.
 

I can’t see more gates anymore

Finally I have the time again to make a more serious blog post here. You might be wondering what I have been up to lately? It has been mainly the [NL2000] scenery project that kept me busy. We are currently finishing the beta version of our next release and for the scenery of Schiphol airport I had promised to make nicely animated gates.

A while ago I already made some posts on mathematical calculations I was trying to make to calculate how a gate should animate to dock to a certain type of aircraft. I have now finished this tool as well and it is working very well I think. Let me say first that I will probably not release the tool as it is now, as some choices are hardcoded, which means that it only works with the gates as I designed them in GMax.

 So what does this tool do? So tell it some basic things about your gate, for example the length of the different arms, the default angles of the arms, etc. Besides that you also tell it where the stoppoint of this specific gate is (seen from the reference point of the object). With this information and like maths it is possible to calculate with rotations (and extension of the gate arm) are needed to make sure the head of the gate ends up at the stoppoint. But of course the aircraft door is not at the stoppoint, it usally has an offset depending on the type of aircraft used. So I also gave the tool this kind of offset information for about 30 aircraft types. With that additional information I could the desired position of the head for each type of aircraft.

Of course to get a perfect match with the aircraft model used, the designer of the aircraft should have put the door on the correct location, but as most aircraft designers try to make their models as perfect as they can I think that should not be a very big issue.

As you would probably have guessed already, the gates make use of the ActiGate module I made. So the animation is triggered by setting the parking brake and depending on the type of aircraft you use (as identified by the module) you get a different animations. Which makes sure that the head of the gate should end up at your door. Once I had figured that out, all I had to do was make a the different gates used at the airport. Unfortunately they have a lot of variants, for each of which I had to adjust my models a little bit. As we also have quite detailed markings in the scenery, the gates needed to match the real ones as closely as possible. And when you know that Schiphol has about 90 gates in total, I think you can image that it took some time to finish this all. 

Now you will probably wonder why I spend so much time on this, as FsX has a nice auto docking feature that should make things a lot easier. Well, I can only see that that is true. But (unfortunately) I had already promised to make these gates for this Fs2004 project (before FsX was there), so I had to finish them. And on the positive side I also learned some more tricks about tweaking animations. For example these gates have been tweaked with extending the SCEN section as CAT does. So that means that with this technique I could also condition the animation of attached effects. Maybe this new technique will make it into CAT as well, but for the moment I first want to study the new FsX techniques more to see which path is the best to go ahead on. I have seen enough gates for a the moment I guess, so the coming time I want to spend on exploring the new SDKs and looking at the new MDL format (and updating my tools where needed of course).

Out of bandwidth (again)

As you might have noticed the FsDeveloper website is down at the moment, because all bandwidth for this month has already been used. I had already asked the webhost for a few GB extra a few days ago, but it seems he has not added them yet. I am trying to get him to do this as soon as possible, so that the website will be available again. So hopefully the site should work again tomorrow.

As this is already the second month that we have this problem, we are currently looking at a more structural solution for this problem, as it seems buying the extra bandwidth when needed will not always work fast enough to keep the site running. So I hope this is the last month that we have this kind of trouble. I’ll keep you updated once the site is available again.

PS. Sorry for my lack of posts in the last weeks, I have been much to busy with other project (for example an Fs2004 scenery project, while I would prefer to spend my time on FsX now). But I should get a little more time in the coming weeks, so then I will also post more again (and finally have the time to fully explore FsX and write about that).
 

(It’s) time to explore FsX

First of all, sorry for my lack of posting the last time. I have been quite busy lately, so I have not had as much time as I would like to post about some interesting FsX things. But keep an eye on this blog, I hope to add some more posts in the coming days.

Now that FsX has been released, an interesting time for developers has come. We have the challange of exploring the differences and the new features that we can use in our developments. Especially for scenery designers I think the FsX scenery engine offers some cool new features, like the increased photo resolution on the mesh scenery.

So as you can image I am really looking forward to exploring all those new things. The new SDKs, the changed scenery MDL format, how to update my tools, etc. But unfortunately I also have some commitments to the [NL2000] project at the moment, for which I still have to finish some Fs2004 scenery work. Although I am absolutely not happy with that at the moment, I really would love to dive fully into FsX at the moment, I can't let the team down at this moment. So for the next few weeks, don't expect to much FsX activity from me yet. But after that I will certainly start working on updates for my tools and other interesting stuff.
 

Has FsX been released?

I guess so, this evening I already had multiple people on MSN complaining to me that the performance is so bad and that they are not happy with how it runs on their PC. Do they expect me to have a magic solution for that?

I guess we have to see if this complaining goes away once they have tuned their settings properly or not. Although I must admit that the performance of FsX is not great (especially not on my 3 year old PC), I never understand why people can't understand that more features and more cool stuff also means that the performance will be lowered a bit if you run it on the same hardware. It has always been like that with new versions of FS.

 

My tools in FsX

With the release of FsX coming closer now, I think it is time to give a little bit of information about how my tools will (or will not) work together with this new version. Please note that these observations are based on the beta version, so some things might still change a bit.

Library Creator XML and ObPlacer XML

Scenery created with these two tools basically still seems to work fine (apart from some issues in the beta that are hopefully fixed by now). There are some minor changes in the BGLComp XML format, so I might make an update for these tools to get them compatible with the FsX BGLComp as well.

MDL Tweaker II

The MDL files tweaked with this tool still seem to work (apart from some of issues I mentioned above already). So the tweaks do still function. But it seems the MDL format used for scenery in FsX has changed a lot. At the moment I can't say yet if we can tweak that new format just as easy and if this tool will be updated. But when using the Fs2004 gamepack we can still tweak and that is nice.

CAT

And finally there is CAT. Also here MDL files tweaked seem to still work. Although I had some trouble with certain triggers in the beta. I will have to explore this in the final version, but with a minor update to CAT it shoud be possible to get the conditional animations working in FsX as well (using the Fs2004 MDL format).

SDSX 

This is not one of my current tools, but the working name for a project we are currently discussing at FsDeveloper. Hopefully we get going on this project soon, as it will be a good replaced (and extension) for the functionality of my current tools. But then nicely integrated into one tool, designed for FsX and including a lot more cool stuff.

FsWeekend at Lelystad

Next month the FsWeekend will be held again in the Aviodrome aviation museum at Lelystad airport. As usual it should be a great event again. You can find a lot of people using flight simulators there, ranging from cockpit builders to region clubs of people flying together, from scenery designers to online ATC groups. So there is always something interesting to see. The ACES team is also sending someone over to promote the then just released FsX.

For addon developers planning to attend this event, have a look at this thread on the FsDeveloper forum as well. We are trying to organise a little developers meeting there.