Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // General
- #pragma kernel Dirt
- #pragma kernel Brush
- RWTexture2D<float4> Output;
- // Dirt
- float MaxValue;
- float AddValue;
- [numthreads(32,32,1)]
- void Dirt (uint3 id : SV_DispatchThreadID)
- {
- float4 src = Output[id.xy];
- src.x = min(MaxValue, src.x + AddValue);
- Output[id.xy] = src;
- }
- // Brush
- float4 Position;
- float Radius;
- [numthreads(32,32,1)]
- void Brush (uint3 id : SV_DispatchThreadID)
- {
- float4 src = Output[id.xy];
- float dist = length(id.xy - Position.xy) - Radius;
- Output[id.xy] = float4(saturate(dist * 9999.999) * src.x, src.y, src.z, src.w);
- }
Advertisement
Add Comment
Please, Sign In to add comment