Files
client/Editor/Internal Data/Third Party/Shaders/Layers/HeightMapToTexture.hlsl
T
2026-07-31 19:29:07 +03:00

22 lines
686 B
HLSL

// Licensed under the Non-Profit Open Software License version 3.0
// Kernel
[numthreads(32,32,1)]
void HeightMapToTexture (uint3 id : SV_DispatchThreadID)
{
// Get width and height of texture
int w,h;
Texture.GetDimensions(w,h);
// Calculate position relative to heightmap
float2 relativeID = RelativizeVector(id.x, id.y, w, h);
float2 heightMapPos = float2(relativeID.x * HeightMapResolution, relativeID.y * HeightMapResolution);
// Calculate height
float3 gradient = CalculateGradientAndHeight(heightMapPos, HeightMapResolution, HeightBuffer);
// Set height
Texture[id.xy] = float4(gradient.z,gradient.z,gradient.z,1);
}