Fix terrain normal mapping issue

#562
This commit is contained in:
Wojtek Figat
2021-06-30 14:13:37 +02:00
parent 419f8db538
commit e0a2904dbf
3 changed files with 19 additions and 3 deletions

View File

@@ -112,7 +112,7 @@ MaterialInput GetGeometryMaterialInput(GeometryData geometry)
#if USE_LIGHTMAP
output.LightmapUV = geometry.LightmapUV;
#endif
output.TBN = CalcTangentBasisFromWorldNormal(geometry.WorldNormal);
output.TBN = CalcTangentBasis(geometry.WorldNormal, geometry.WorldPosition, geometry.TexCoord);
output.HolesMask = geometry.HolesMask;
#if USE_TERRAIN_LAYERS
output.Layers = geometry.Layers;
@@ -415,7 +415,7 @@ VertexOutput VS(TerrainVertexInput input)
#if USE_LIGHTMAP
materialInput.LightmapUV = output.Geometry.LightmapUV;
#endif
materialInput.TBN = CalcTangentBasisFromWorldNormal(output.Geometry.WorldNormal);
materialInput.TBN = tangentToWorld;
materialInput.TwoSidedSign = WorldDeterminantSign;
materialInput.SvPosition = output.Position;
materialInput.PreSkinnedPosition = position;