Category: Tools

XPlane2Blender v4.0.0-alpha.5, aka LODs

Download it here: XPlane2Blender v4.0.0-alpha.5, aka LODs

XPlane2Blender v4.0.0-alpha.5, aka LODs

As always, make backups! This includes making backups before saving a 2.79 file in 2.80. There is no going back from that!

Override LODs feature and backwards compatibility

A quick LODs recap

This release includes the last must-have feature for 2.80 – LODs. For those who haven’t used LODs before, it stands for (Levels of Detail). It is a way of defining what to draw when the camera is a certain distance away from an OBJ. In XPlane2Blender we call those ranges “buckets” and put Blender Objects (meshes, lights, armatures, empties) “inside them”. For instance, suppose an OBJ of a hanger with 2 defined ranges (buckets) 0 to 200 and 200 to 400. It has two meshes “HangerDetailed” (bucket 1) and “HangerLowPoly” (bucket 2).

When the camera is close (0 to 199 meters), only the “HangerDetailed” mesh will be drawn. When it is far (200 to 399), only “HangerLowPoly” will be drawn. At 400 meters and above, nothing will be drawn. This is very useful for increasing the performance by not drawing what is too far away for the pilot to see.

There are two styles of Level Of Detail: Additive (where every bucket starts at 0) and Selective (where the end of one bucket and start of the next are equal (see example above)). Use one or the other depending on what you need to draw when; don’t mix between them.

LODs Mode in XPlane2Blender

Using LODs in XPlane2Blender is very easy: Define the ranges (buckets) in the OBJ settings, and tell Blender Objects which buckets they should go in.

“LODs Mode” is considered On when you have specified a number of LOD buckets in the OBJ settings.

image

This means that:

  • LOD validations are on (see later section)
  • Objects must be placed into defined buckets or they will not be drawn. This is where the new “Override LODs” checkbox on Blender Objects comes into play.

[Picture]

The LODs feature works just like 2.79’s Layers Mode LODs, with a new time saving feature and some very small backwards compatibility notes.

Override LODs
  1. In the Object Properties Tab of the Properties Editor, you’ll see a new “Override LODs” checkbox.
  2. When checked, the familiar 4 LOD bucket choice checkboxes will appear.
  3. Specify which buckets an Object will go into. All children below it will also go into the same buckets. Children who also override LODs will pass their new choices on instead.
image


In this picture HangerDetailed has its “Override LODs” checkbox checked, and has been placed into bucket 1. Its child, WindowDetails, will automatically be placed into bucket 1 too.

An Object’s LOD choices will only be used if “Override LODs” is checked.

The idea is that just a few objects in the Blender Hierarchy will need to override the LOD choices, and old projects can be quickly reorganized to take advantage of this new feature. Inheritance will greatly reduce data entry.

Backwards Compatibility

There are only a few differences from 2.79 to be aware of

Backwards Compatibility ConcernResolution
In 2.79 “No buckets chosen = Write to every LOD“. In 2.80 “No buckets chosen = Object not writtenUse the new feature to quickly specify which objects should be in all buckets
2.79 Layers Mode projects did not have an “Override LODs” checkbox, LOD choices hiddenYour old choices are remembered. Use the new Override LODs feature to quickly get the OBJ correct again
2.79 Root Objects Mode used layers 1-4 to put Objects into bucketsQuickly restore your project like this: Make an Empty for each layer used, override the Empty’s LOD buckets, and re-parent the objects so that all Objects are in their former buckets. If an object was used on more layers, make more empties to organize these cases
LOD Validations

For mistakes like not starting the first bucket at 0, having gaps or overlaps between ranges, and etc, an error will be emitted in the log.

Other Bug Fixes

  • #518 – When Export Type is “Cockpit” LOD buckets is now shown.
  • #512 – “Deck” (a rarely used Material property which controls how planes collide with this surface and the area beneath it) is now renamed to “Only Slightly Thick” implying that this collide-able surface is “Only Slightly Thick” as opposed so something that “extends the earth up to that surface”. Imagine a bridge that could not be flown under because under it is “an invisible mound of rock and world surface” vs a bridge that can be flown under because “its deck is only slightly thick”. Get it? Well, maybe the new name will make more sense to everyone without needing to know this example.
  • #511 – People will now be able to use a Particle System File again
  • #276, #525 – Some UI cleanup. “Scenery Properties” will no longer be shown when Export Type is Aircraft or Cockpit, “Autodetect Textures” is no longer drawn because it doesn’t do anything and confuses people on how to use an essential feature: specifying texture paths. The value isn’t removed and one day we’ll have that feature back in some form.

Many thanks to all the people who e-mailed me and helped me design the new LOD feature. This is an alpha feature so if the overall response is “this isn’t doing what we need” it can be ripped out, but, I think it will meet expectations. Also, especially tell me if it difficult to take a 2.79 project with LODs and make it work again. The goal is that it an artist should be able to do it in about 5 minutes without the use of an updater for most projects.

I’m so glad to be working on a project with users who are very willing to send in good bug reports and great constructive feedback and criticism! Very refreshing! As always, if something goes wrong write a bug report (preferable) or e-mail me!

Posted in Aircraft & Modeling, Modeling, Scenery, Tools by | 2 Comments

XPlane2Blender v4.0.0-alpha.4

Download from GitHub here!

XPlane2Blender v4.0.0-alpha.4

As always, make backups!

Over the past month people have reported to me all sorts of weird things:

  • OBJ geometry moving with every export
  • Blender Objects moving after every export
  • Animations spiraling out of control
  • Even simple renaming Blender Objects and restructuring of the Blender hierarchy might trigger a bad export.

And the only cure was to apply all transformations or restart Blender!

Thanks to your bug reports and e-mails I was able to track down the source: all these problems were facets of the same bug!

To make a long story short: I have a fix for XPlane2Blender, but other Blender exporters and users may not be so lucky. I’ve filed a bug with Blender itself, but that is nothing to worry about for X-Plane artists.

Please continue to send me your bug reports! I do read every one of them, even if I don’t get back to you right away.

Posted in Aircraft & Modeling, News, Scenery, Tools by | Comments Off on XPlane2Blender v4.0.0-alpha.4

XPlane2Blender v4.0.0-alpha.3, aka Exportable Collections!

Visit the Github release page to download!

XPlane2Blender for 2.80 has crossed a new milestone! Exportable Collections are in! They work just like root objects (which we are now calling Exportable Objects), the settings for them are just where Layers Mode settings used to be, and Layers Mode projects keep their OBJ settings automatically. More details down below.

As always, make backups! This is still an alpha and how collections work could change!

New Name For Root Objects

As mentioned, Root Objects – the concept – has been renamed to “Exportable Objects”. Everything is the same, it is only the name that is changing in the UI and the docs. This was done to let people know there really isn’t much difference between using the new Collections and the old Root Object system. Half the name is the same! Otherwise it sounds like “Root Objects vs Exportable Collections” are as different as how it used to be with “Root Objects Mode” vs “Layers Mode”. From here on I will use the new names – Exportable Collections and Exportable Objects.

New Features

Exportable Collections

We’re very excited about this: Collections are in! Many thanks to the people who talked about it on #450. I think the feature will be able to do all or most of what you wanted. Here’s how to use them.

  1. When you open a 2.79 file in 2.80, the contents of Layer 1 will be put into a collection called “Layer 1_{the scene’s name}”, the contents of Layer 2 will be put into a collection called “Layer 2_{the scene’s name}” and etc.
  2. Blender has new and exciting ways of using Collections and the 3D View. If Show is on but you can’t see the contents of a collection, try right clicking on it in the outliner, go to Visibility and ensure Render and Viewport are enabled.

I highly recommend reading
New Outliner Controls
Collections Overview. Complex instancing is planned but not supported: #495 and #452.
View Layers

  1. You’ll find the exact same OBJ settings in the exact same layout where Layers Mode used to put them.
  2. The updater will have copied the previous settings if the layer had some object in it or the OBJ settings was changed in some way.
  3. Collections can be marked as “Exportable” or not. Non-Exportable Collections can be used as a way to organize your project, similar to using Empties. Unlike empties
    • An important terminology note: Datablock Objects (Meshes, Lights, Armatures, Empties) can have 1 Object parent and many Object children. Collections can have 1 Collection parent and many Collection children. This means a datablock objects can have 1 parent and be in multiple collections. When an object is linked to a collection, it is in that collection and all that collection’s chain of parents.
    • Collections do not have a location or rotation.
    • A mesh, armature, or other objects can have a blender parent and be in multiple collections. A great opportunity for re-use that XPlane2Blender supports. Also key for another new feature called “Split Animations”.
    • Every object inside the exportable collection and its chain of child collections is collected and exported together as one OBJ. Any children of those objects found outside the exportable collection are ignored, just like how Layers Mode used to work.
    • Each object is included once. Attempting to make duplicates by putting an object in multiple sub-collections of the exportable collection won’t work. In this example Cube only appears once in the OBJ.
  4. What is exported only depends on what objects are in what collection and the value of that collection’s Exportable Collection checkbox. Viewport visibility doesn’t matter.
  5. Everything inside the exportable collection and any of its child collections will be exported. If any object has a child that is outside of the exportable collection, that child and all its children will be silently ignored.
  6. There is no more “Layers Mode vs Root Object” divide, and projects can use Exportable Collections and Exportable Objects at the same time (just not nested).

Here is a picture showing a side by side comparison of the relevant UI in 2.79 and 2.80, using the BD-5J Microjet. After opening the file I hit export and it just worked!

image

In this picture I’ve unchecked Exportable Collection on Layer 2_Scene. Now it won’t export.

Split Animations

Split Animations is one of our most exciting new features – something never before possible in XPlane2Blender! See the guide in the manual, click here to find more.

Other Bug Fixes

  • #493 Unit test system slowly healing and getting back to usable.

Caveats

Things Move On Every Export

There appears to be a Blender bug in 2.80 where sometimes after every export (of any exporter) the objects drift apart. It is unknown why this happens but there are two ways to fix it.

  1. Restart Blender and try again and hope it works
  2. Select all objects and bones and use Apply > Transformations > Scale. And if that doesn’t work, Apply > Transformations > All Transformations. These are drastic, but, if it works, please e-mail and help confirm this bug that we can report to Blender.

Updater Changes

The updater has had some changes and not all of them tested 100 times over like I normally like. I don’t think it will be a problem however. Please e-mail me if you have trouble. If you have a multi-scene project, double check your updated OBJ settings and tell me if you see an automatically made collections with names like “Collection.001”. They should have been renamed.

For those of you patiently waiting for an e-mail back from me about a problem you’ve had with your .blend file, thank you for your patience. I’m going to try to respond to all of them this week!

Posted in Aircraft & Modeling, Scenery, Tools by | 1 Comment

XPlane2Blender v4.0.0-alpha.1

XPlane2Blender v4.0.0-alpha.1, aka Time To Try Blender 2.80!

This is the first release of XPlane2Blender for Blender 2.80! As always, make backups, because there is no going back from overwriting your 2.79 .blend file with Blender 2.80.

The goal of this release was to having something people can play with right now without worrying about the design decisions coming down the line about Collections and LODs.

Features

  • XPlane2Blender UI is preserved!
  • Root Objects is the only useable mode (despite Layers being left in the enum). Attempting to use Layers will cause the exporter to fail.
  • Since Texture Slots are removed and use of EEVEE hasn’t been decided, the only method of specifying texture paths is the Root Object’s Texture Paths fields. Uncheck “Autodetect Textures” to see it.
  • Files with LODs won’t crash – but probably won’t work well. Since this feature’s future is undecided my goal was to just make things export instead of making something that worked correctly. The quick hack is supposed to be this

The 1st LOD bucket is the contents of the first collection (alphabetically), the 2nd LOD bucket is the contents from 2nd collection, etc. The list of collections is taken from every single scene Again, the goal was “make it export” not “make it export perfectly”. I don’t recommend trying to use LODs when trying out Blender 2.80.

aaa_gun_249_280_proof
F-4_cockpit_249_280
F-4_exterior_249_280

Even with just these limitations, I was able to successfully export several scenery objects and two of Laminar Research’s planes. As you can see, the converter is doing its job well!

(F-4 process from 2.49 to 2.79 then 2.80 going from left to right. Ignore the odd geometry under it. I simply forgot to take it out for the picture.)

Things to watch out for:

  • I spent a while trying to figure out the difference between “Hide In Viewport” vs “Enable In Viewport”. Tip: Old layers that weren’t visible are “Shown In Viewport” but “Disabled In Viewport” – “They would be shown in the viewport, if they weren’t disabled”. Right Click the collection > Visibility > Enable In Viewports to see it in the 3D View.
  • It seems that sometimes if an image block in 2.79 had a filepath to a file that doesn’t exist, Blender 2.80 removes said image datablock on load.
  • In order to view a mesh’s UV mapped textures, you’ll first need to give that mesh a material, turn on Nodes and give it an image texture node connoted to the principle BSDF’s shader’s color input. Pick the same image texture that the UV texture is.
  • One file I tried had a weird thing where a yoke was excessively shiny as if it’s normals were messed up, and when it’s manipulator associated with it was deleted, panel textures went black. I think this is very very very project specific, but, keep an eye out for weird Shade Smooth/Shade Flat issues or bad normals.

Thank you so much for your patience while the converter got its last push during September! I can’t wait to see those Blender 2.80 screenshots!

Posted in Aircraft & Modeling, Scenery, Tools by | 5 Comments

XPlane2Blender 3.6.0-alpha.1, aka, The 2.49 Converter

After some unfortunate delays, the 2.49 converter is released! The instructions for installation, configuration, and use are quite long, so I won’t copy them here as usually do. To download the files, scroll down to the bottom of the page to “Assets”.

The GitHub page has an updated copy of our the 2.49 scripts. Download and install them.

The converter will only get better from real world examples, so please send me your feedback and screenshots so I can fully understand the world of 2.49.

And don’t worry, it was designed to work without Blender 2.49 if needed.

Download here! I can’t wait to see life breathed into these old projects!

Posted in Aircraft & Modeling, Tools by | 3 Comments

XPlane2Blender v3.5.1-beta.1

Download it here!

It has been some time! I have been working as hard as I can on the converter (to great applause so far!), but, there have still been some features and fixes developed along the way. By now it was time to collect and release them!

As always This is a beta. It makes data model changes which may still have bugs. Make backups!

Features

“Cast Shadow (Local)”

Previously, you could only set “Cast Shadow” to be on or off for “Scenery” and “Instanced Scenery” export types. This would, for the whole object, turn on and off shadows. Now, “Cast Shadow” has been removed from the OBJ settings and “Cast Shadow (Local)” has been placed in the material settings. With this, individual meshes can have shadows or not and it works for Aircraft and Cockpit objects too!

Read More
Posted in Aircraft & Modeling, Scenery, Tools by | 8 Comments

Blender 2.49 files needed!

The Problem

As some of you may be aware, Blender 2.49 is old unsupported software that is becoming increasingly less usable on modern computers. To make matters worse, authors have large projects that are currently stuck on this platform, jeopardizing their work!

The Solution

We are creating a 2.49 XPlane2Blender converter inside of XPlane2Blender 2.7x, so that opening a 2.49 Blend file in 2.7x will automatically convert meshes, animations, materials, lights, textures, and XPlane2Blender properties into a modern format. This isn’t just an idea, we currently have a strong proof of concept that animations can be converted from old to new!

The 2.49 Converter Needs Your Help

The goal is

That if it exports in 2.49, it exports in 2.7x as similarly as possible.
That the conversion process is hassle free and also transparent.
That your work is safe and won’t be lost if there is a problem.

To accomplish this we’re going to need a lot of test .blend files and projects – to make it work for artists in the wild we need projects in the wild! We’ll take anything working and not working.

  • All source files will be kept secure and confidential within Laminar Research, and only used for this feature of XPlane2Blender, unless you make it open source.
  • Given that we’re trying to convert EVERYTHING, including materials and textures, it would also be extremely nice to have all files referenced as well.
  • Any description you’d like to include (preferably in a text block) would be nice too.

Again, just as with any other time someone sends me a sample to debug, it is kept secure and private, kept only for as long as needed, you can ask me to delete it at any time, and is only used for the development of that specific bug or feature of XPlane2Blender. They would never be used to develop any Laminar Research asset.

If you’re willing to submit a project to me, please get in contact via e-mail, DM, comment, or especially Github bug #397.

Please ask any questions!

Posted in Aircraft & Modeling, Modeling, Scenery, Tools by | 8 Comments

New Python tools for working with airport data

Over the weekend, I published a Python package called xplane_airports. This serves two major use cases:

  1. Parsing the airport data (apt.dat) files used by X-Plane, and asking questions like “does <some airport> support <some feature>?”
  2. Nicely wrapping the X-Plane Scenery Gateway’s API to get information about the airports available there. This includes the ability to download scenery packs and manipulate them just like you would an apt.dat on disk.

If you’re doing any sort of automated analysis or manipulation of X-Plane airports, this should be a huge help.

It’s available via pip now:

$ pip install xplane_airports

And there’s a ton of documentation in the project’s README on GitHub.

Bug reports, feature requests, & pull requests are all welcome. 🙂

Posted in Tools by | 20 Comments

WED 1.7r1

Release candidate builds for WED 1.7 are now available for testing. A big thanks to Michael for leading a lot of this development. He kept all this moving along at a much faster rate than if we’d been left to our own devices! Here is his summary of the changes you’ll find in this version:

Selection of items

When selecting any item in the map pane, WED now prioritizes the items by a what appears to be on top when viewing the scenery in X-plane. So if you click on any .OBJ in the middle of a taxiway – it always selects the .OBJ, line marking or ground painted taxi sign rather than the underlying taxiway. Similarly, it selects the facade or forest rather than anything that is flat and draped on the ground.

Technically, this means object type and LAYER_GROUP rather than WED hierachy based prioritization.

Exclusion zones and airport boundaries are now kindof “hollow” items, they can no more be selected by clicking inside of them, but only by their frame/outline or perimeter. That should greatly help with not having to lock or otherwise get those large area items out of the way.

All items can now be single-click selected, even if they are located within the area of an already select item. This eliminates the need to de-select (CTRL-D) e.g. a taxiway every time the last attempt to click select a .OBJ turned out to be just a bit to far away. And therefore accidentially selected the whole taxiway underneath it instead.

Drag-moves are now subject to some “stickyness” , i.e. the move/copy only starts after the drag exceeds a few pixels. This helps avoiding accidential very short distance drag-moves. Once the item has “broken free”, the item can be moved back to within a single pixel of the initial location, so small moves can still be achieved.

Several bugs that prevented adding bezier handles to nodes under some conditions or selecting very closely spaced items are fixed as well. All operations now require a click no closer than 4 pixels from the “correct” location. Any very closely located items having the same piority (like two nodes of the same polygon) are now selected using a “whatever is closest” strategy, rather than having overlapping bounding boxes prevent access to all but one of them.

Validation warnings and results browser

Some validation issues can now be a warning only, rather than a hard error. This allows WED to try more validation of frequently found problems, even at the risk of creating a few false alarms in rare cases. If such a warning is ignored for gateway submissions, the gateway moderator will determine on a case-by-case base if the issue can in fact be waived or still reject the scenery submission.

After validation, a full list of ALL validation issues will pop up, allowing to browse and zoom to / highlight all issues to help planning out the work required to pass validation. This also allows to select multiple validation errors to e.g. select ALL duplicate vertices in ALL polygons – allowing to fix all with a single editing operation.

New validations

Validation now catches all types of self-intersecting polygons. Previously there were certain cases of bezier-curves that caused taxiways/polygons to stop showing up at certain zoom levels or not at all in X-plane, despite they looked fine in WED or vice versa.

The coordinates and names of runways need to be exactly in sync with the CIFP data used by X-plane for FMC SID/STAR and GPS approaches. For this reason, gateway airports are occasionally edited by a script by “WEDbot” to achieve this, but any user re-submission that touches the airport may break this effort. WED now validates the runways against CIFP data oit obtains direct from the gateway server and requires the runway threshold to be within 10m of the exact location. Note this is the thereshold – the wide white bar only.

There is a separate warning only if the displaced part of the runway (the optional part from the end of the runway to the threshold – with the centerline arrows pointing towards the displaced threshold) mismatches official documentation. Some of the CIFP data mis-states that displaced distance, so it is a warning only. Please thoroughly verify such warnings against current orthoimagery and draw as per current real world markings.

A *lot* of ATC flows on the scenery gateway are non-functional because of misunderstandings how flows work. The most common mistake is to define one flow per runway and then expect that X-plane somehow finds all flows that fit the current weather pattern and uses them all togther. But that’s not how flows work. Validations will now try to find such duplicate condition flows (that are effectively never ever used) and will warn about it.

The airport naming is covered by several new errors (like ALL CAPTIALS – THATS SHOUTING IN THE INTERNET AGE !) and warnings if undesired elements are included in the names.

Smart runway rename

When a runway is re-named due to magnetic variation changes, not only the runway name, but also all ATC taxiroutes, flows and taxisigns need to be fixed up to reflect the changed designation. WED now will detect such edits of a runway “name” property, find all these references, update them and let you know. This greatly helps when the runway validation tells you it’s missing some runway at that airport – which usually means some existing runway was recently renamed due to magnetic variation changes.

More library item previews

Type 1 facades are now displayed in the library preview panel. Please be patient – the more complex “type 2” facades as used in all airport terminals and the new terminal kit are not showing, yet.

Many library items come with multiple variants that X-plane will select at random from when placed in the scenery. For such items, a button will show up to view each variant. But keep in mind – there is no way to tell X-plane to always use a specific one. Its just a true “FYI”, only  …

All forest/facade/object previews will show some textual information about their size and features available.

The World Map in the background now has 9x the resolution and shows true X-plane ground texture colors.

ATC taxi route names are displayed in the ATC TAxi & Flow view – please verify them for consistency, as the X-plane ATC uses and even speaks these names when providing taxi instructions.

Don’t import from the apt.dat for gateway airports

The apt.dat and .dsf formats are lossy, i.e. they contain less information and use less precision than a direct import of the airport from the scenery gateway. WED will now warn anytime it detects such an import for an gateway type airport.

Upon im/exporting to/from the gateway WED will now also show warnings if the gateway is currently not accepting new submissions for that particular airport.

Facade editing

Facades without roof’s or filled areas, like fences and skylights in the XP11.10 terminal-kit are now allowed to have 2 nodes only – previously facades of any type had to have 3 nodes minimum.

Two bugs were fixed, too – these prevented selecting certain wall types in the terminal-kit facades and displayed some facades as being “closed rings”, rather than line-type items in the map window.

Orthophoto import

Georeferenced image “geotiff” import used to require mercator projected, WGS84 referenced coordinates. On Linux and OSX it will now understand pretty much all coordinate systems defined in the EPSG standards – although WGS 84 lat/lon coordinates are still the preferred encoding.

Display speed and memory use

When zooming in at airports with very large, single piece taxiways, the WED display speed used to slow down significantly.

The 64-bit versions of WED (OSX & Linux. Windows is still 32 bits, only) used a lot of RAM with large sceneries, e.g. im/exporting the *whole* global airport scenery (thats what WED is used for at LR, all 28,000 airports in one scenery !) maxed out a 16GB RAM machine. Now its down to near half that and everybody else gets a small speed boost, too.

Preferences menu

Some user adjustable settings (like meter vs feet) are now moved to the File->Preferences (OSX: WED->Preferences) menu, stored in WED’s global preferences and no more loaded/stored with each individual scenery file.

Posted in News, Scenery, Tools by | 6 Comments