Tesselation needs to come back, desperately

I’m already aware of this. For foliage it works great but I was referring to surfaces and heightmaps. When I tried to displace a surface, nanite appeared to only be distorting the fallback mesh and the shadows became really janky.

However much later on I discovered this video which was pretty helpful because I understood that a big part of my problem was how I was setting up the material shader for WPO. Mine wasn’t displacing the texture in all directions at first as I wanted it too:

According to the video the main problem associated with WPO Displacement when using Nanite is that the triangles become clustered and non uniform. Right now this is not going to be a good solution for doing this because too much detail is stripped away, especially with distance.

The real uses of tessellation are anything to do with texture/material driven displacement.

Being able to just slap on a crater decal and watch it displace the geometry to create a 3d depression, with correct shading and even collision would be the dream. Same with any other material, blending in brick/concrete/layered with chipped and cratered decals, all on a material one could just paint, preferably on a spline/blueprint based geometry would make world art incredibly fast, flexible, and varied.

Functionally seamless UV and tessellation has a lot of uses. UE5 lets new geometry pieces come online incredibly quickly, but building that base geometry into world art is still in the same place it’s been for years (or decades really, including other engines). Getting splines and tessellation towards the same hero tool status as nanite would be a huge boon.

1 Like

Very much this. There are two positions on this I think - one from the purely technical side, which shows a lot of limitations with tessellation’s ongoing support before 5.0 and is the main reason why it is was deprecated…and then the other is from the art side of things.

From the art perspective, texture-driven displacement was a much more workflow-friendly process that allowed real-time adjustments in mesh appearance. Whereas without this, making slight modifications to a texture size or position (until 5.1) meant that you would have to send a mesh BACK to an external 3D modelling software in order to make those changes. In effect, sending stuff back to art production that was already in-engine…yikes.

That development pipeline should not move backwards; this is a big workflow problem and can end up with a lot of time wasted unnecessarily.

Hopefully WPO with Nanite will resolve this now but it still doesn’t fix the issues for Landscapes, and it still means you are pre-tessellating meshes externally. So not all problems are resolved, but we are moving in the right direction.

2 Likes

Brian Karis Recently stated on Twitter in response to someone else’s similar issue that the focus in 5.1 in regards to Nanite and WPO was mostly on the foliage. He explained that WPO it is still very much in the beta stage and that the reason why foliage works so well, better than other things that use the combination of Nanite and WPO is mainly because foliage is always filled with holes and cannot really occlude itself.

I think they are tackling the more simple things first before working their way up to the bigger issues. Here is the original Twitter Thread about it:

https://twitter.com/BrianKaris/status/1579551563257118720

1 Like

Not sure if i’m here too late but WPO works just fine with Nanite. Go look at Fortnite where literally every single object is made from Nanite and wobbles dramatically when it’s hit. All trees’ and grass also move and use Nanite.

Lumen brings real-time global illumination to Fortnite Battle Royale Chapter 4 - Unreal Engine

Isn’t tesselation available as a feature now anyways? At least for baking I know, as that’s how they made the nanite fortnite assets to begin with.

The electric dreams demo also masterfully shows off nanite WPO, but I can certainly say that nanite WPO is not the same as nanite for rigid geo. The basePass alone can be several milliseconds above what was originally described for nanite, even on a 4070. Obviously having WPO with nanite to begin with is incredible, but it demands much more careful optimization and manual tuning than traditional nanite.

There’s a lot more options to create and edit meshes directly in Unreal, so yes. I believe you are specifically referring to how you can use a texture/procedural to deform a mesh with more detail/triangles and then bake it back into a model?

1 Like

I am, yes. I watched epic’s video on what a difference that technology made for their workflow, and it was truly impressive to see.

Tesselation is an interesting feature in UE5 because whether or not it’s completely useless or essential for a game really does depend on the content. A game built from the ground up for nanite has no real need, but a game with custom water or terrain effects may be entirely broken without it. I believe Epic may have been a bit eager to get rid of it because Nanite solves many of the same problems tesselation did, but it’s interesting to see what features legacy content may or may not depend on.

Yepp. My entire snow and sand deformation system, my gerstner waves water, my beautifully tesellated landscapes all of em are broken. All tho you can say use wpo for the water and use vhm for landscapes (that looks like garbage and it doesn’t have any collisions, its just for like decoration).But I wanna make a landscape that my character can walk without clipping into rocks. But what about my precious snow deformation system ? What am I gonna do huh ? And they say use nanite, we got nanite. Bro just keep them both. They are for different usecases, they are not the same thing ! I don’t understand them. What is this huh? Did they really forcing us to use nanite, its a new tech ! Well I don’t care if it is new or it can render billion triangles in one scene, I need functionality. I am not able get my systems working right. I cant move to UE5 just because of this reasons…

that’s why you use the landscape for collision (and there is a checkbox on the landscape for including the WPO deformation in the collision calculations). if done correctly the landscape and the heightmesh will line up and you should notice little/no clipping.

I use the fact that they can be manipulated differently for things like shallow-water, mud, things you can sink into (for example).

No, tessellation is not available as feature and this far, there is nothing that closes the gap. This will hold true until everything is nanite, nanite has either fixed or programmable software tessellator and said tesellator performs not worse than hardware tessellation. Which, all in all, likely to happen soon.

They already did something in 5.2 regarding the displacement texture for Nanites. The problem is that it is unusable. You mostly use multiple textures that you blend. If they made a displacement based on the material, not a texture asset, where you can blend the textures, it would be better. But ending the project where you rerender the texture for each asset is useless.

1 Like

We need STOP relying on Nanite. Fortnite’s nanite performance proves we shouldn’t rely on it or performance will tank below the only acceptable standard of 60fps
They need to change there documentation or created micro optimized version of nanites’ code.

1 Like

From my experience Nanite is solid tech even for large aaa games :upside_down_face:

it-is-inevitable-358bf62bc1

I can’t tell if you are mocking me or villainizing Nanite with the meme bro.

Nanite destroys FPS.

And the performant games that have excluded Nanite from their workflow, perform miles better.

What developers and gamers with affordable hardware need are better in-engine tools for baking in detail and normal map enhancers.
These also provide better aliasing.

EDIT, not sure why I just got notified of your comment?
Forums have been wonky lately at least for me.

What was your testing method for the Lyra game demo?

Both editor and standalone

I moreso meant your procedure for testing nanite. Did you enable nanite on all supported objects, profileGPU it a few times, then do the same for nanite disabled?

You comparising game, that is optimized for ps4 (nanite doesnt fully support it) and obvoiusly runs better because of lods. :grinning: Great work, bro. :grinning: