Skip to content

WearCraft 1.1.0

Choose a tag to compare

@invisiblelevel invisiblelevel released this 05 Oct 13:47
· 5 commits to main since this release

✨ New

  • Decal — separate mode for projecting an arbitrary image (PNG/JPG) onto the model, like a sticker.

    • Real-time preview via decal-shader.js.
    • Position (X / Y), scale, rotation.
    • Keep aspect ratio — optional.
    • Opacity.
    • Affect albedo / roughness / normal (each toggleable).
    • Height — load a separate height map, or use the image's own brightness. Slider −1..+1 (emboss / engrave).
    • Random position and random rotation per variation (variation 1 = slider values).
    • Tile edges — decal wraps across texture borders.
    • Generate bakes the Decal via Rust — formula 1:1 with the shader.
  • HDR Environment — 5 lighting presets via Settings:

    • Neutral — neutral studio (default).
    • Warm — warm light.
    • Cool — cool light.
    • White — flat bright light.
    • Night — dark scene.
    • Intensity slider 0–200%.
    • "Show HDR background" checkbox — renders the HDR as the backdrop.
  • UI Zoom — interface scaling:

    • Hotkeys: Ctrl+= (zoom in), Ctrl+− (zoom out), Ctrl+0 (reset).
    • Steps: 75% / 90% / 100% / 110% / 125% / 150% / 175% / 200%.
    • "Interface" tab in Settings.
    • Saved to localStorage.
  • Variations — reworked "Parameters" block:

    • Header renamed to "Generate Variations".
    • Slider 1..50 + narrow input field.
    • Removed the duplicate label.
  • "Generate" button — moved from the left Rail into the viewport (top-right, accent pill).

    • Enabled only when there is something to generate (PBR + mask / decal / preset).
    • Label changes: "Load PBR" → "Load a mask" → "Generate".

🔧 Changes

  • Streaks (procedural) — fully new formula:

    • Before: SDF segments + noise at the edge (shape looked like "spikes", not drips).
    • Now: value_noise + fbm + threshold + vertical stretch — reads as drips.
    • Seed affects the shape via parameter modulation (frequency ±15%, threshold ±10%, UV shift), not via the hash.
    • New defaults: count=28, size=1.5%, stretch=20, threshold=20%, sharpness=60%, thickness=35%.
    • New "Stretch" slider (up to 20).
    • Removed "Waviness" slider from procedural mode (unused).
  • Scratches — two modes:

    • Procedural — old Bezier scratches (no real-time preview).
    • Masks — custom mask + library, like dirt / rust / streaks.
    • Mode switch — segmented control.
    • maskThickness range −1..0 (engrave).
  • Streaks (masks) — separate folder %APPDATA%/WearCraft/masks/streaks/. Custom mask + library.

  • Settings panel — new "Environment" tab (5 HDR presets + intensity).

🐛 Fixes

  • "Mask" block at the top of ParamsPanel — now visible only for the "Custom" preset. Hidden for other presets (they have their own "Custom mask" / "Library" buttons inside their sections).
  • Preview and final sync for Streaks — preview matches wear_01/albedo.png.
  • Removed confusing UI duplication in ParamsPanel for Custom.

📦 Contents

  • Platform: Windows x64.
  • Installer: NSIS (WearCraft_1.1.0_x64-setup.exe).
  • Version: 1.1.0.
  • Stack: Tauri 2 + Svelte 5 + Vite + Three.js + Rust.