Recompute tangents and normal maps, I have found a solution

this is a bug in GPUSkinCache.cpp. you need modify the code in the function FGPUSkinCache:: DispatchUpdateSkinTangents:



if (bFullPrecisionUV)
{
if (GAllowDupedVertsForRecomputeTangents) Shader = ComputeShader11;
else Shader = ComputeShader01;
}
else
{
if (GAllowDupedVertsForRecomputeTangents) Shader = ComputeShader10;
else Shader = ComputeShader00;
}


to



if (bFullPrecisionUV)
{
if (GAllowDupedVertsForRecomputeTangents) Shader = ComputeShader01;
else Shader = ComputeShader11;
}
else
{
if (GAllowDupedVertsForRecomputeTangents) Shader = ComputeShader00;
else Shader = ComputeShader10;
}


notice:This can only solve the problem caused by uv distribution,This does not work for separate sections

2 Likes