Download

Tessellation - PNtriangles - Skeletalmesh - Crash

I was testing the dx11 tessellation, and it worked with skeletalmeshes using the MTM_Flattessellation, but when switching to MTM_PNtriangles in a material assigned to skeletalmeshes, UDK crashes.

I can use PNtriangles with staticmeshes, but not with skeletalmeshes.

I have tried some things, like a very simple material with only a difuse and a vector2D for the TessellationMultiplier slot, marking the “use with skeletalmeshes” option, and the same result. With some different skeletalmeshes. Crash with all.

I did the test in UE4 time ago and works very well, but in UDK never worked. It’s only for staticmeshes?

just stay away from it.

might work for you but it’s highly unstable. if you release your game I’m sure other people will have complaints.
in my case I used tessellation on a first person mesh which subdivided it pretty much to infinity (because it’s distance-based with no limits) which made my GPU crash with a blue screen, and since that day it had major heating problems (had to buy a new one)

For me the limit is working, using the slot TessellationMultiplier in the material. For example this is using 1,1 on a staticmesh (sphere included in UDK):

And this using 0.05,0.05:

So you can limit the effect by distance. In the Epic documentation there are a material example using the camera distance. Or you can use a material instance to modify the values from the code.

BUT… my problem is that I can’t use it with skeletalmeshes, UDK crashes when appliyng the material.

Edit, It worked if it’s applied to a skeletalmesh like the Epic robot, but crash with all my skeletalmeshes, using the class or droping the skeletalmesh directly to the level. This is the only info in the logs:

[0295.80] Critical: appError called: Rendering thread exception:
Fatal error!

if you get close enough for the mesh to clip with the camera, you’ll see a big slowdown. so try setting the tessellation factor to 1 and get close until you clip with it (which is what would happen on a first person mesh)
even if you limit it by distance, you’re likely to get this issue (I also tried limiting by distance).

to get it to work with a Skeletal Mesh try this: apply the material to the Skeletal Mesh asset (not placed in the level). reimport the asset. save it. now try placing it in the level

Thanks, it worked, but in a map without bots and no much static meshes…in my big level, even with no bots and using 1,1, crash. Seems that its too much for the render thread.

But the limit is working fine, here are a view in first person, with 1,1 and 0.2,0.2:

In the lit mode is much, much slower… Anyway, to apreciate an improvement I need to use high values, with 0.5 is practically equal than with no using tessellation, as the subdivision begins in the edges and not in the midle of the faces; and with 1.0 the smooth is noticeable, but is too slow.

I think it’s better to use optionally models with the LOD0 with more resolution.