Categories
Dragontail Peak Release Showcase World Machine Development News

Halloween Notes

Build 4069 was released last week.

There are a ton of improvements in it; I won’t try to describe all the changes here (read about it https://help.world-machine.com/topic/build-4069-dragontail-peak/ ), but I’m pretty happy with the improvements across the board in the areas that it attempted to improve (Working within the graph, Flow Restructure, general build performance).

I’m hoping to followup with build 4070 soon. I rushed 4069 out the door when it became clear that the latest macOS update broke World Machine! As a result there are a number of bugfixes that didn’t make it in, as well as one regression in the Multichooser device that I want to fix ASAP.

Other than general bugfixes, I wanted to do a second round on a lingering area before calling Dragontail work finished.

Cliff Meshes and Heightfields

Just to recap, there are 3 ways to get VDM terrains out of World Machine:

  1. Export natively as an EXR into a renderer or engine that supports vector displacement
  2. Export as a triangle mesh
  3. Export as a base heightfield + mesh for cliff areas

I want to talk about approach #3, because it was supported from the beginning in Dragontail but making the mesh fit right onto the heightfield was challenging, and the public builds struggle to connect the cliff mesh to the terrain seamlessly.

Here’s an example HF+Mesh output from 4070 (It’s a tweak of the NiceCliffside example world):

Left side: Heightfield. Right side: HF+Cliff meshes

I think you can agree that this is definitely improved! 🙂 It’s essentially perfectly seamless now. I reworked the entire seam handling approach to make sure that the geometry and normals match along all cliff mesh edges.

What’s more, you can now set the heightfield output to be a fraction of the project resolution. This is a pretty good trade. After you clip out the detailed cliff meshes, what’s left in the base heightfield can be pretty coarse and still do a fine job. In the example above, the project is an 8k res scene, where the mesh export is an optimized mesh and the heightfield is exported at 2k. The seam mesher handles that situation just fine, having the cliff mesh carry all the juicy rock detail and meld seamlessly to the heightfield whatever the output res.

Here’s another look at the seams, with the terrain grid turned on. You can now clearly see what belongs to the heightfield and what to the mesh:

The new seamer welds the edge of the cliff mesh to the exact edge of each heightfield grid cell.

Here’s what the setup above looks like. The only complicated part is that the heightfield and mesh need their own material, because you have to transform the surface texture from VDMspace to worldspace to apply it to the heightfield. That’s what the cliff device produces the UV transformation for. That setup above could be folded into a macro or blueprint to make it pretty much one-click.

By Stephen

Founder of World Machine

Start the discussion at forum.world-machine.com