Update materials

This commit is contained in:
2021-02-05 15:30:01 +01:00
parent d8304a2178
commit 5a561b1278
22 changed files with 56 additions and 64 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+14 -22
View File
@@ -104,18 +104,20 @@ struct MaterialInput
};
// Extracts geometry data to the material input
void GetGeometryMaterialInput(inout MaterialInput result, in GeometryData geometry)
MaterialInput GetGeometryMaterialInput(GeometryData geometry)
{
result.WorldPosition = geometry.WorldPosition;
result.TexCoord = geometry.TexCoord;
MaterialInput output = (MaterialInput)0;
output.WorldPosition = geometry.WorldPosition;
output.TexCoord = geometry.TexCoord;
#if USE_LIGHTMAP
result.LightmapUV = geometry.LightmapUV;
output.LightmapUV = geometry.LightmapUV;
#endif
result.TBN = CalcTangentBasisFromWorldNormal(geometry.WorldNormal);
result.HolesMask = geometry.HolesMask;
output.TBN = CalcTangentBasisFromWorldNormal(geometry.WorldNormal);
output.HolesMask = geometry.HolesMask;
#if USE_TERRAIN_LAYERS
result.Layers = geometry.Layers;
output.Layers = geometry.Layers;
#endif
return output;
}
#if USE_TESSELLATION
@@ -154,23 +156,13 @@ GeometryData InterpolateGeometry(GeometryData p0, float w0, GeometryData p1, flo
MaterialInput GetMaterialInput(PixelInput input)
{
MaterialInput result = (MaterialInput)0;
result.WorldPosition = input.Geometry.WorldPosition;
result.TexCoord = input.Geometry.TexCoord;
#if USE_LIGHTMAP
result.LightmapUV = input.Geometry.LightmapUV;
#endif
result.TBN = CalcTangentBasisFromWorldNormal(input.Geometry.WorldNormal);
result.TwoSidedSign = WorldDeterminantSign * (input.IsFrontFace ? 1.0 : -1.0);
result.SvPosition = input.Position;
result.HolesMask = input.Geometry.HolesMask;
#if USE_TERRAIN_LAYERS
result.Layers = input.Geometry.Layers;
#endif
MaterialInput output = GetGeometryMaterialInput(input.Geometry);
output.TwoSidedSign = WorldDeterminantSign * (input.IsFrontFace ? 1.0 : -1.0);
output.SvPosition = input.Position;
#if USE_CUSTOM_VERTEX_INTERPOLATORS
result.CustomVSToPS = input.CustomVSToPS;
output.CustomVSToPS = input.CustomVSToPS;
#endif
return result;
return output;
}
// Removes the scale vector from the local to world transformation matrix
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.