Commit Graph

10 Commits

Author SHA1 Message Date
Dylan M. Taylor bf03e6ad2f Retry macOS stapling and validation (#36) 2026-11-01 12:48:06 -05:00
bflatastic b55a63a390 Mark the packaging scripts executable
The shared release workflow runs them directly, so without the executable bit the
Linux, macOS and Web release jobs stop with "Permission denied".
2026-11-02 00:34:47 +07:00
bflatastic b0eb1e960a Inter, even gaps and readable selections
- The interface font is Inter (regular and semibold) from craft-fonts' Latin catalog, on
  VectorCraft's type scale: 11 small print, 13 body and controls, 15 semibold headings, 11.5
  values. build.rs embeds it without its Private Use Area, where the icon font draws. CI and
  release builds move to the craft-fonts commit with the Latin catalog.
- The tool bar, tool shelf, rail and bake panel are square tiles like the dock's groups, with
  one 6 pt gutter between all of them and no separator lines.
- Selected options and selected text are lettered in the strong colour instead of the accent on
  its own tint; a theme test keeps that readable in every brightness and accent.
- Section captions are semibold; the Layers action row fits one line again.
2026-11-01 19:42:59 +07:00
bflatastic 7956ed2366 UI design pass: IBM Plex, one type and spacing scale, cleaner titles and forms
- fonts: IBM Plex Sans (one variable file at 400, 500 and 600) and IBM Plex Mono for the
  interface when built with craft-fonts (its Latin catalog, opted into from build.rs); the
  ui-medium and ui-semibold families always exist and fall back to the regular font; CJK
  fallbacks cover them too and align to the interface font's baseline
- type scale 11 / 12.5 / 14 (headings semibold), values in the monospace face; spacing on a
  2-4-6-8-12 scale (rows 4 apart, button padding 8x3, window margins 12); windows share the
  card radius
- panel tabs, section captions and window titles in the medium weight, as written instead of
  small capitals
- layer rows: the opacity field fits its slot (compact padding, small print)
- Settings: every section an aligned two-column form, like Export and New project
- tests/ui_snapshots.rs: renders the whole window offscreen (egui_kittest + wgpu) to PNGs for
  checking layout without a visible screen; AGENTS.md says how
- ATTRIBUTION, NOTICE and packaging list the Plex faces and ship their licences
2026-11-01 17:37:57 +07:00
Dylan M. Taylor 46ada335b0 Use shared Craft workflows and support cross packaging 2026-11-01 00:52:48 -04:00
BFlat 57f6ac84fe Merge pull request #3 from storytold/chore/neutral-names
Neutral names in code and packaging; README in the Crafting Apps layout
2026-10-23 13:29:27 +07:00
bflatastic ea428d1387 New app icon: an engraved zebra, vectorized
Replaces the procedural octopus with the owner's original ArtCraft drawing
of an engraved zebra, vectorised with craftrules' vectorize_tile.py to the
three icon colours (ink, paper and TextureCraft's copper #c2672b, which
stays the default UI accent). texturecraft.svg is the master traced at
2048 px, texturecraft-small.svg the lighter trace for hicolor/scalable.

packaging/icons.sh now follows the other Crafting Apps: the tile is used
edge to edge on Windows and Linux, and the .icns gets Apple's exact
824/1024 margin. Regenerated the hicolor PNGs, texturecraft-1024.png, .ico
and .icns; removed icon.py, icon.svg and icon-1024.png. Adds the icon
README and LICENSE.txt, and updates ATTRIBUTION.md, docs/releasing.md and
the README icon.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 13:05:10 +07:00
bflatastic 2ddb156d69 Neutral names in code and packaging; README in the Crafting Apps layout
- Code comments, crate descriptions, the MCP stroke schema and the Linux package descriptions
  describe features in their own words instead of naming the reference application or other
  vendors' products (file format names stay)
- The README follows the layout the other Crafting Apps use (VectorCraft): a look around, made
  in TextureCraft, why TextureCraft, quick start with the agent setup, status, downloads per
  platform, the Crafting Apps, star history, license; no trademark footer
- The detailed feature list moves to docs/features.md
- A new path-traced render of the built-in crate textured with smart materials

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 12:55:42 +07:00
bflatastic 1e88b9041f Smooth 8K strokes, decal handles, displacement, refraction, release readiness
- Strokes pre-blend their commit while painting and recompose committed tiles at low
  priority: the 8K stroke-end frame drops from 30-42 ms to 12-19 ms
- Texture set resize runs in the background (8K: 3 s to 0.5 s, UV padding map from island
  borders only)
- Decal move/scale/rotate handles; FBX and USD high-poly textures for the color map;
  viewport displacement from the height channel; screen-space refraction of the scene
- CI pinned to Rust 1.96.0; FreeBSD VM sized for hosted runners; release builds embed
  craft-fonts; file associations for FBX, COLLADA, USD and Alembic on every platform
- README, release checklist, NOTICE and attribution brought up to date

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 13:25:10 +07:00
bflatastic ec859420d5 TextureCraft: clean-room 3D texture painting in pure Rust
An open-source, clean-room implementation of a Substance 3D Painter-style texturing
workflow, written in pure Rust with egui and wgpu.

- Layer stack with 32 blend modes, masks, generators, content effects and anchor points
- Painting, projection, smudge, clone, path, lasso fill, particle brush and quick mask
- 43 procedural materials, 17 smart materials and 10 smart masks
- Mesh map baking with high-poly, cage and match-by-name support
- PBR viewport with HDR environments, TAA and a path-traced Rendering mode
- glTF, FBX, COLLADA, OBJ, PLY and STL import; texture export presets; OBJ and GLB export
- Dockable Painter-style UI, shortcut editor, web build, MCP server and CLI

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 01:33:13 +07:00