• v1.3.1 90876ba8b4

    v1.3.1 Stable

    github-actions[bot] released this 2026-09-22 05:16:27 +02:00 | 17 commits to main since this release

    3D Controller Overlay+ v1.3.1

    ✨ New features

    • Textures now live inside your model's own folder. Adding a texture copies it into the model's own textures folder instead of reading it from wherever you originally picked it from forever after - moving or deleting that original file no longer breaks the model. Removing a texture cleans up its own copy too, as long as nothing else in the model still references it. Filenames are sanitized for cross-platform safety along the way (Windows forbids some characters and names that Linux/macOS allow).
    • Texture paths now self-heal on load. If a saved texture path doesn't resolve on this machine - a bundled example model, or one copied over from somewhere else - the app looks for the same filename in the model's own textures folder before giving up on it.
    • "Reset All Meshes to Global Material" – a bulk button alongside the existing "Reset All Meshes to Global Textures" (which now shares a line with "New Global Texture"), for applying a changed global material across a model where many meshes already have their own overrides, without switching to each one by hand.
    • "Remove Travel from All Buttons" – the opposite of the existing "Copy Travel to All Buttons", zeroing Travel/Travel Rotation back out across every button-type mesh in one step.
    • Checkbox mesh picker for Travel copying – replaces the old name-substring filter. Pick exactly which meshes to copy a button's Travel/Travel Rotation to from a checklist, rather than relying on a shared naming convention.
    • Add is now the default Highlight Blend Mode, alongside the existing Replace - and it can now be set per-mesh under Highlight Override, not just globally for the whole model.
    • Tray icon toggles for Click-Through and Drag to Move (Linux only, for now). Each open controller window - and its Input History window, if one's open - gets its own submenu in the tray icon's right-click menu with these two toggles, reachable without the OS-level permission the shortcut-based version needs. A fallback for setups where that permission was never granted (see the shortcuts fix below).

    🛠️ Fixes & improvements

    • Fixed: shortcuts silently not working on some Linux setups. The cause was almost always a permissions issue (this app's account not being in the input group) that produced no error anywhere. Settings now shows a clear ✓/✗ status once Enable Shortcut Monitoring is on, with the exact fix when it's red.
    • Fixed: an Ignore Button rule on a glyph style's Combine With target not taking effect. Glyph lookup itself already followed a style's Combine With chain; the ignore-rule check now does too.
    • Fixed: a per-mesh Highlight Override could silently reset itself. Its color and blend mode were always saved and loaded correctly, but the toggle controlling whether they were actually used was only ever saved, never loaded back - so it quietly reset to off every time the model reloaded from its file.
    • Flip Y now defaults to off for a newly-added texture. The previous default of on was tuned against a single texture early in development; broader use since showed it wrong more often than right.
    • Lower baseline CPU usage, especially noticeable on models with many meshes or several texture maps per part. GL shader compilation, uniform lookups, and texture-uniform name bookkeeping used to be rebuilt from scratch on every mesh, every single frame, regardless of whether anything had actually changed; all of it is now cached instead.

    ⚠️ Upgrading

    • No model or settings format changes in this release - existing models and settings work as-is.
    • The first time an existing model with textures is opened, nothing changes automatically; texture files only get copied into the model's own folder the next time a texture is actually added or re-picked through Settings.
    • Tray icon toggles are Linux-only in this release. On Windows and macOS the underlying data plumbing is in place, but the tray menu itself doesn't show these items yet.

    Full details in the README.md and INSTRUCTIONS.md

    Downloads