Wednesday, 17 August 2016

UT4 Editor - Using Blueprint Skewmesh

Among the more useful new features in the UT4 Editor are skewmesh blueprints. There are 3 types of skewmesh blueprints, BP_SkewMeshX, BP_SkewMeshY and BP_SkewMeshZ.

What these blueprints do is take a mesh and allow you to move one end of it in any direction (up or down and to either side) around one of the 3 axis (X, Y or Z). Skews are extremely handy for aligning trim, wall meshes and other modular meshes along angles they weren't designed to fit. They don't solve every mesh alignment problem but they do help a lot.

Anyhow like they say a picture is worth a thousand words so here are several thousand words worth.

This first is a BP_SkewMeshY with the default mesh (a Liandri assets pillar/column) assigned to it.

You can change the mesh your skewmesh is operating on in the details panel. Here I changed it to use one of the Liandri assets floor trim meshes.

And here's another an example of that mesh zoomed in close so you can see the seam where the beveled edges of two meshes (one skewed,  one not) meet. The top part looks a little funny but that's a problem with material alignment on that particular mesh, not with mesh alignments which are perfectly lined up with each other.

Here are two instances of a floor panel mesh. The one on the left is by itself (not skewed). The one on the right is another instance of the same mesh inside a BP_SkewMeshY. Notice the transform handle named "End" to the right of the skewmesh. That's the transform gidget we use to move that end of the mesh around. This is quite similar to selecting and moving surfaces with the BSP editing tools.

Next, I've pulled the mesh upwards to make a ramp and added another instance of the mesh to the right. Notice how the edges of the skewed mesh align perfectly with the other meshes... Unlike when trying to get the same look by rotating and/or scaling the same mesh. They also light better and have fewer problems with z-fighting too.

Finally, here's the same skewmesh skewed to 45 degrees to one side rather than up. If I'd wanted an angled ramp, I could have skewed it both up and to the side at the same time.

There are some problems with various materials on skew meshes (they look fine in editor but show the default checkerboard grid material in game) but you can work around that by merging meshes. You can merge just a single skewed mesh or multiple meshes (both skewed and not skewed). Merging probably helps with performance too.

In case anyone wants to take a closer look at similar mesh alignment seams in-game, the map in the screenshots is DM-Nitro.