I was doing some character testing in 4.16 and wanted to see how it looked with tessellation. The character on the left is a skeletal mesh, the character on the right is the same mesh just loaded as a a static mesh to show the difference. The character has multiple material ID’s and are the same materials on both mesh. The skeletal mesh is stretching at the border of the head material where it meets the body material. No matter what setting I use for the tessellation it has the glitch where the vertex look like they are stretching towards the center pivot. The strange thing is it’s only at the neck. The nails are a different material and I added tessellation to them just to see if they had the same glitch and they didn’t.
Also, if you zoom out to where the tessellation has no effect from the distance multiplier the stretching goes away.
I had researched the problem and the person in that post had found the same thing. It’s from 2014, and it seems it has never been resolved or at least no fix was found.
I’m unsure if it’s a bug or I am doing something wrong, but it’s only affecting the skeletal mesh and not the static. Is it something I am missing in the upload? Or, does tessellation not work with skeletal mesh? Or is it because of the multiple materials?
Alright found a way to fix this ( workaround / hack :)))… add a mask in the tessellation input … and black out those polygons at the edge of the neck …
If those polygons will have a value of 0 (black in the mask) … then they wont create those artifacts …because they won`t be tessellated
Hi sol4rdust,
Thanks for looking into this and answering. Unfortunately it’s either not working for me, or I’m just not doing it right. I created the mask with the values black at the neck seam but none of the ways I tried using that mask in the tessellation input have yielded results. I hate to ask any more of you since you figured out a solution that works for you and you took the time to answer here, but could you tell me how you are hooking it up to get the results?
Thank you.
Your UV mapping is different but you can figure out whats happening here… i`ve blacked out the polygons that behave strangely. Then you use this texture to drive the tessellation multiplier from the shader.
You can set up the nodes like so:
Of course, if you plan to displace the tessellated areas you wont be able to since those polygons are now effectively ignored by tesselltion ... but at least you wont get that female beard anymore … :))
Here is a working character that had the same issue as yours:
Hi again,
Tried everything you said, made the mask, set up the material and presto! No beard :))
But when looking closer it looked like there was no tessellation happening. So I went into wire frame view in UE and I was right. No tessellation. If I turn the tessellation switch scaler parameter to 1, it turns on tessellation, but then the problem is still there. I appreciate your help, but it just doesn’t want to work for me.
Ok looked closely… and this is what happens… the mask doesnt cover the whoel affected polygons… the green ones are fixed but the red triangles stilll get tessellated… make your mask a little bigger…
question, whats the purpose of the displacement map ? in your case … do you want to round everything up ? or you want to displace certain areas ?
I want to round everything up. I made the mask in substance painter with the polygon fill tool. It fills the complete polygon with what ever color you want. In the case of a mask it either fills with white 1, or black 0. I am using a substance to make the skin in Unreal, it’s so you can make skin edits in the character creator. And I used the displacement map because that’s what I read you needed to do in the UE docs. I wouldn’t know how to set it up without.
I finally got it to work. I used a bit of a different setup. I used a scaler 0 in the A channel of the lerp, a scaler 1 in the B channel and the mask in the alpha. The masks finally worked that way, before for some reason it was completely masking out the tessellation. I do appreciate all your help as without it I would never even gotten this far. Thank you, you’re awesome.