Category: News

X-Plane 11.40 Beta 8 and a Roadmap Update

This post has been on my todo list for a while – long enough that X-Plane 11.40 came out before I had time to write up a post saying “X-Plane 11.40” is coming. But just to put 11.40 into context, here’s what our patch roadmap looks like for X-Plane 11 this year.

All Physics All the Time

X-Plane 11.40 is a physics release. Almost all of the changes in X-Plane 11.40 come from Austin’s work on the physics engine over the last six months. This is a new approach for us. In the past, when we’ve updated the physics or systems, it would be in a giant “omnibus” release, where everybody’s latest code went out at once (e.g. X-Plane 11.10).

The problem with the omnibus releases is that they would take forever to get debugged. With so many people changing so many things, we never knew what had gone wrong when a bug report came in. And with all of the code changed, we had to investigate every single bug report carefully (no matter how unlikely or vague the report) because anything could have been broken.

So far, at risk of jinxing the beta, it appears that the physics-only approach is working a lot better. It has been quicker to find bugs when they are reported, and the overall level of crazy is a lot lower than in past releases.

NaNNaNNaNNaNNaNaNNaN Batman!

There aren’t many open bugs left in the 11.40 beta, but one particular bug has caused the beta count to run up: we were seeing crashes due to NaNs in the flight model.

NaN stands for Not A Number, and it’s what you get when you have divide-by-zeros run amok in the physics. To catch them, we’ve turned on a lot of auditing code and we’ve been collecting automatic crash reports. At risk of jinxing it, I think Austin has fixed one of the two root causes in beta 8. We are going to keep chasing them until the other one is fixed, then turn down the checks once we’re done. So we may make it to beta nine or ten and we may have another week with two betas; the high tempo is just to get more checks in fast.

Experimental Physics

There have been a number of questions in the comments on the state of the experimental flight model, so I want to clarify how it works and what is happening in 11.40.

Normally, new X-Plane features get beta tested during the beta of an X-Plane patch. This means we have somewhere between two and eight weeks to debug the feature and get it ready to ship. Once it ships, if we change the feature, we have to consider how this would affect authors using the feature and whether it would screw up their add-ons.

That’s not a lot of time to debug! In particular, it’s really not enough time for the flight model, where people need months just to develop the aircraft and measure the performance to get us feedback.

The experimental flight model is basically a giant year-long open beta of a future revision of the flight model that hasn’t shipped yet. By checking the “experimental FM” box, you’re getting to beta test the flight model of the future, now. By keeping the experimental flight model as an experiment for so long, this frees Austin up to simply fix bugs and improve it, as opposed to worrying how the X-Plane 11.40 experimental FM changes will affect X-Plane 11.30 users.

To be clear: there is no attempt at backward compatibility between the experimental flight model from one sim version to another! The goal is to have the experimental flight model not interfere with the “normal” flight model at all.

Physics changes in 11.40 fall into two broad categories:

  • Simulation changes that can change how an aircraft flies, improving the accuracy of X-Plane’s predictions about the airframe. An example of this is the delay in wash propagation from the prop to the tail of the aircraft. This makes the aircraft more stable, but may change how it flies; an author might have added artificial stability or reduced control surface efficacy to work around the lack of this feature in the past, and these work-arounds would be inappropriate with the new, more accurate physics.
  • Simulations that change how the aircraft flies in unusual circumstances that you can’t tune your aircraft to. Examples of this include stalls and wake turbulence. There isn’t going to be a book value for the effect, so all we can do is try to produce the most sane results given an aircraft that simulates properly in regular flight.

Features in the first category require the experimental flight model to be enabled, while the second category of features is always on.

At some point in the future, the experimental flight model will become the flight model for X-Plane, but we are not there yet, and we are not planning to do this as part of making X-Plane 11.40 final.

Third Party Aircraft

If you develop a third party aircraft, you need to test it now against both the experimental and non-experimental flight mode. If the non-experimental flight model doesn’t fly the same as 11.36, please file a bug, and please provide flight testing details. For the experimental flight model, you may see book numbers change a little bit; the real question is whether the overall physics response is better or worse.

Vulkan and Metal

X-Plane 11.50 will be the next major patch once X-Plane 11.40 is out of beta, and it will feature Vulkan and Metal support.

The marketing guys showed the Vulkan build of X-Plane live at Cosford last week; that build did not have any support for texture paging. Since then, Sidney has a basic texture paging implementation running, so hopefully we’re in good shape to get this into developer’s hands after 11.40.

Our expectation for add-on compatibility is:

  • Add-ons doing supported things, like 2-d panel drawing and UI should just work in Vulkan and Metal – we’ll take bug reports to fix compatibility issues.
  • Add-ons doing unsupported things won’t work in Vulkan and Metal at all. Your 3-d drawing callback won’t be called, or your attempt to grab internal GL resources will just fail (because none of our resources are GL).
  • X-Plane running under OpenGL should “just work” for pretty much every add-on, including ones doing sketchy things, and should be faster than 11.40 but not as fast as Vulkan or Metal.

I expect the Vulkan beta to be a relatively long one. We want it to start this year, but it probably won’t end this year, and my guess is that initially Vulkan will be fantastic for some users and will crash for others. During the beta we’ll gain useful information about how well Vulkan works “in the field” for different cards and drivers.

One reason I am looking forward to the Vulkan beta: we now have tremendous visibility into what the rendering engine and driver are doing. With OpenGL, the driver was often a black box. We still get reports of “the 3-d mouse in VR make my machine really slow” and frankly, we may never know why this happens to just some users and not others with the same hardware, drivers, and version of X-Plane.

With Vulkan and Metal it is going to be different. A lot more of the graphics work happens inside X-Plane, and the work that happens inside the driver is much more predictable, bounded, and can be viewed via modern profiling tools.

So while we will have a lot of debugging to do based on user feedback, it should be straightforward to get the information we need to really make the Vulkan renderer scream.

After Vulkan

It’s a little too soon to discuss what comes after Vulkan, but I can say this: for almost two years now, Sidney and I have been rewriting the rendering engine with a rather strange goal: performance and predictability, but with the same visual output. So anything that looked ugly on the screen is supposed to keep looking ugly. Vulkan was a change of the how but not the what of our rendering engine.

Once Vulkan is out the door, that all changes. We have a number of fundamental changes we want to make to how we deal with light, with the atmosphere, with color, and with organizing our frame. Once we have Vulkan, we get to use it as our foundation for what comes next.

Posted in News by | 121 Comments

X-Plane 11.40b7

Beta 7 is now available for LR customers, and we expect Steam to be available within 24 hours or so.

This is another small update. We have a few more tweaks to the flight model NaN crash reporting to help us track this down, a couple bug fixes, and improvements to AI airliner landings.

Release notes here.

Posted in News by | 17 Comments

Cosford, Etc.

This weekend we’ll be in Cosford for Flight Sim 2019. Well, not me personally, but Philipp, Marty and Thomson are there.

This summer when Marty asked if we could run the Vulkan version of X-Plane on our machines at the show I laughed a bit and then said “hell no” – at the time we were running scenery packs in the sim with default aircraft, but Vulkan was still a work in progress.

Vulkan is still a work in progress, but there has been a lot of progress, so when the marketing guys asked again I said “sure, yeah, what could go wrong” and Sidney cut them a build. We also told them not to throw out the shipping version, but if the app is well behaved people at the show may get to fly the Vulkan build for the first time.

Betas, Betas, Everywhere

At this point I’d judge us to be in the middle of the X-Plane 11.40 beta run. Beta 6 is reasonably stable and has fixed a bunch of problems that broke third party aircraft, and it’s now available to steam users. We’re still tracking down a bug where the physics code produces a NaN value. Since it just happens while flying and we haven’t gotten any useful reproduction steps, we’re pursing it by adding more checks and looking at automatic crash reports.

Please, always auto-report your crash. We don’t need you to fill out the description text field – just the auto-report and email is enough. We are looking for as many reports as possible, and we will probably stick with two betas a week until we chase this one down.

Third parties: if you haven’t yet, please test your add-on with the experimental flight model off against beta 6 – we don’t have any known bugs with the legacy flight model and third party aircraft at this point.

We are also killing off the last beta bugs in the new version of X-Plane mobile. There’s some really cool tech going into the lighting on mobile that I’ll write up soon in a blog post.

Posted in News by | 18 Comments

X-Plane 11.40b6

Beta 6 is now available for LR customers, and we expect Steam to be available within 24 hours.

This is another small update, with the main bug fix being for plugins trying to override engines. We also added a new feature: aircraft authors can now specify a preferred climb speed for when their aircraft are used as AI.

Release notes here.

Update: B6 is also live on Steam.

Posted in News by | 17 Comments

X-Plane 11.40b5

Beta 5 is now available for LR customers, and we expect Steam to be available within 24 hours.

This is a small, quick update to fix the high volume of crashes we were seeing in beta 4. It also happens to include the latest cut of Gateway airports, which adds over 1400 new 3d airports.

Release notes here.

Update: 11.40b5 is also now live on Steam.

Posted in News by | 27 Comments

X-Plane 11.40b4

Beta 4 is now available for LR customers, and we expect Steam to be available within 24 hours.

This update has a few more flight model fixes based on user feedback, a GPS error fix, and a fix for scenery decals.

Release notes here.

UPDATE: We received a high volume of crash reports over the weekend with this beta. Because of this, we did not release it on Steam. We hope to have another beta out ASAP to help address the crash frequency.

Posted in News by | 6 Comments

Status Update For XPlane2Blender!

We have a lot of exciting news for XPlane2Blender users on three fronts: the Blender 2.49 Converter, Blender 2.8 support, and v3.5.1-beta.2!

Firstly I want to say a huge thank you to all the community for all your patience, advice, and support during this time of heavy development and slow releases. One of the biggest changes, I think, to XPlane2Blender in the last few months has actually been all of you! I’ve asked for advice and gotten constructive comments in droves, I’ve asked for projects and I’ve gotten example files to work with! I even asked for help with contributions to the project and gotten several pull requests to merge! Your passion for Blender and X-Plane inspires my passion for making the tools you want and need!

Now for the details!

The 2.49 Converter

The XPlane2Blender 2.49 converter has been in development for nearly a year, and the alpha is almost here. Some doubted if it was even possible to save these old projects, but the results speak for themselves. Observe these screenshots of Laminar Research’s KingAir C90B, F-4, and Boeing 737 that have been converted and exported with XPlane2Blender for 2.79!

KingAir C90B

KingAir C90B Cockpit Lit Up At Night
KingAir C90B Exterior, Showing Flaps Animating
KingAir C90B Interior Seating

McDonnell Douglas F-4

F-4 Cockpit Showing Panel Textures And Dials Rotated

Boeing 737

737 Main Gear, Beginning Retraction Animation

These are not proofs of concept, they actually work very well! Animations, manipulators, panel textures, meshes, lights, OBJ directives like shading, no shadow, DISABLE_DRAW, ATTR_light_level, and more, autodetecting textures, and preserving workflow features like picking the same OBJ file names and BULK export vs Regular export are all in the alpha. Basic scenery objects also convert, but some directives aren’t included yet.

We are not feature complete, and it will never be perfect: pre-conversion and post-conversion fixes will likely be necessary. However, spending only a day or two for the conversion is far better than redoing years of work!

Getting Your Old Projects Ready

The alpha is about two weeks away from release. In that time I HIGHLY recommend finding your old projects and doing the following

  1. Make backups of your files, because there is no return if you accidentally save over a 2.49 file after opening it in 2.79
  2. Ensure that ALL the OBJs in your project exports correctly with Blender 2.49b2 (the last version ever released) and our version of the 2.49 XPlane2Blender scripts.

    If you are able to do so and it can run in X-Plane 11.36, the converter has a very good chance of bringing it forward with few things to fix post conversion.

    The big thing I’ve noticed is that DataRefs usually need to be fixed as future versions of X-Plane added more that made unambiguous Datarefs ambiguous.

    I’ve noticed that some Blender 2.49 Datablocks have become “haunted” – where it crashes Blender 2.49 if clicked on or changed. I have no idea why or how. I can’t see a pattern or do anything about it, so take notes as these objects may need special attention post-conversion. If you have ideas, let me know!

    Also be on the look out for game properties with bad values, like an “litlevel” that is missing a dataref, or a “GLOBAL_tint” that doesn’t have two numbers separated by a space. X-Plane may fill in defaults, but the converter doesn’t. Don’t worry, the converter will help find some of these – as long as the property names are spelled correctly!
  3. If you are unable to run Blender 2.49, the converter may still work but you won’t get a chance to clean up the file and correct mistakes – it may require a lot more work post-conversion if you even get the chance. I highly recommend finding an old computer in the attic if needed.
  4. Most importantly, make sure you have the DataRefs.txt that 2.49 was or is using during export. Otherwise it may be impossible to correctly convert animations.

The cleaner the input file, the cleaner the conversion, the better the 2.79 file. That is why I’m releasing this guide before releasing the alpha – so that some of this work can be done beforehand and day 1 questions will be about the converter and not 2.49 problems.

One last note: Releasing our internal version of XPlane2Blender for 2.49 does not indicate support for it. It is merely there to help prepare your project for use with the converter. Remember, we’re trying to run away from 2.49 as fast as possible.

Blender 2.8 Support

A person recently e-mailed me: “Will Blender 2.8 have support before the New Year?” My answer: Yes! Yes it will! Don’t lose hope!

During the alpha cycle for the converter I will be finishing the alpha for Blender 2.8 as fast as possible. We’re very close – the UI is working and I’m about half way through figuring out which API calls need to be replaced and how.

XPlane2Blender’s UI and Custom Data in Blender 2.80

Before September is over you will start seeing more commits on the 399-blender-28-support branch. To keep up the hope, check out this screenshot of the BD-5J Microjet in XPlane2Blender in 2.8!

v3.5.1.beta.2 + Pull Requests

When I put out a desperate plea for some help developing the project I was gladly surprised by Kim Brandwijk, who has made several high quality pull requests that are small enough in scope to be added to v3.5.1.beta.2. I regret that I did not have time to merge them in a timely matter, but now with both alphas releasing soon all users can look forward to some excellent optimizations and speed increases soon. Hopefully the pull requests and community development can pickup some energy again.

I hope you all are as excited about this as I am! It has been a long summer of lots of coding, but I think people will be very happy with all the new features! Stay tuned for more news!

Posted in News by | 12 Comments

X-Plane 11.36r2 is out

This version update includes the modified C172.acf and C172_G1000.acf that use the new nosewheel steering parameters, so you can try out the new bungee steering in default aircraft now. We’ve heard pretty positive feedback on the new handling from the pilots we’ve asked to try it so far!

The interaction of the nose wheel with the rudder and brakes now closely resembles a real C172: The nosewheel is no longer rigidly connected to the rudder, but by a spring-loaded steering bungee. This connection allows a steering angle of about 10 degrees, giving you three times the precision in steering that you had previously! But sometimes you don’t want precision, you just want to make a tight turn – in that case, you use differential braking. This will pull the plane around in a tighter turn, and with the new steering bungee, the nosewheel will follow that turn without skidding, because it can castor beyond the steered deflection.

If you don’t actually have hardware brake pedals, X-Plane will add the differential braking for you when you ask for maximum rudder (using your joystick twist axis).

For aircraft authors looking to incorporate the new parameter into their planes, there is a much more detailed description here.

Full release notes here.

Edit to add: As usual, Steam release will be delayed about 24 hours–expect it to be live sometime tomorrow.

Posted in News by | 24 Comments