Add HUD brush mask selector and fix dilation seam artifacts

- Add mask selector with previews to the brush card (data-driven from
  painter.brushMasks); persist activeBrushIndex with HUD layout.
- Fix alpha/coverage artifacts when overpainting after load or backend
  switch: derive the dilation source marker from a deterministic UV island
  mask instead of resetting it to "unpainted" on every seed.
- Import the two final brush mask textures (Brushes/).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
adminandClaude Opus 4.8 committed 2026-06-25 06:23:08 +02:00
1 parent d62eddc518
commit c14525a2c8
15 files changed
+1005 -14

No files matched your search

+3
View File
@@ -68,6 +68,7 @@ public partial class PaintHud
public Color emissionColor;
public float emissionIntensity;
public int brushSize;
public int activeBrushIndex;
public int sprayDots;
public float sprayDotSizeMin, sprayDotSizeMax, sprayDotAlphaMin, sprayDotAlphaMax;
}
@@ -116,6 +117,7 @@ public partial class PaintHud
v.emissionColor = painter.emissionColor;
v.emissionIntensity = painter.emissionIntensity;
v.brushSize = painter.brushSize;
v.activeBrushIndex = painter.activeBrushIndex;
v.sprayDots = painter.sprayDots;
v.sprayDotSizeMin = painter.sprayDotSizeMin;
v.sprayDotSizeMax = painter.sprayDotSizeMax;
@@ -161,6 +163,7 @@ public partial class PaintHud
painter.emissionColor = v.emissionColor;
painter.emissionIntensity = v.emissionIntensity;
painter.brushSize = v.brushSize;
painter.activeBrushIndex = v.activeBrushIndex;
painter.sprayDots = v.sprayDots;
painter.sprayDotSizeMin = v.sprayDotSizeMin;
painter.sprayDotSizeMax = v.sprayDotSizeMax;