diff --git a/WickedEngine/shaders/paint_textureCS.hlsl b/WickedEngine/shaders/paint_textureCS.hlsl index 7ad8c7723..d5a119d0d 100644 --- a/WickedEngine/shaders/paint_textureCS.hlsl +++ b/WickedEngine/shaders/paint_textureCS.hlsl @@ -46,7 +46,7 @@ void main( uint3 DTid : SV_DispatchThreadID ) const float2 brush_uv_quad_y = QuadReadAcrossY(brush_uv); const float2 brush_uv_dx = brush_uv - brush_uv_quad_x; const float2 brush_uv_dy = brush_uv - brush_uv_quad_y; - brush_color = texture_brush.SampleGrad(sampler_linear_clamp, brush_uv, brush_uv_dx, brush_uv_dy) * unpack_rgba(push.xPaintBrushColor); + brush_color = texture_brush.SampleGrad(sampler_linear_clamp, brush_uv, brush_uv_dx, brush_uv_dy); } [branch] @@ -69,6 +69,7 @@ void main( uint3 DTid : SV_DispatchThreadID ) brush_color *= reveal_color; } brush_color.a *= affection; + brush_color *= unpack_rgba(push.xPaintBrushColor); float4 prevColor = texture_output[pixel]; texture_output[pixel] = lerp(prevColor, brush_color, brush_color.a); } diff --git a/WickedEngine/wiRenderer.cpp b/WickedEngine/wiRenderer.cpp index 4c4a050b1..607050fcd 100644 --- a/WickedEngine/wiRenderer.cpp +++ b/WickedEngine/wiRenderer.cpp @@ -3049,6 +3049,8 @@ void ProcessDeferredTextureRequests(CommandList cmd) const uint diameter = params.push.xPaintBrushRadius * 2; const uint dispatch_dim = (diameter + PAINT_TEXTURE_BLOCKSIZE - 1) / PAINT_TEXTURE_BLOCKSIZE; device->Dispatch(dispatch_dim, dispatch_dim, 1, cmd); + + device->Barrier(GPUBarrier::Memory(¶ms.editTex), cmd); } // ending barriers: diff --git a/WickedEngine/wiVersion.cpp b/WickedEngine/wiVersion.cpp index 044540e4f..96be2314b 100644 --- a/WickedEngine/wiVersion.cpp +++ b/WickedEngine/wiVersion.cpp @@ -9,7 +9,7 @@ namespace wi::version // minor features, major updates, breaking compatibility changes const int minor = 71; // minor bug fixes, alterations, refactors, updates - const int revision = 428; + const int revision = 429; const std::string version_string = std::to_string(major) + "." + std::to_string(minor) + "." + std::to_string(revision);