Resolution-independent 3D vector texture studio and multi-resolution Minecraft resource pack compiler.
Part of the Ninja6-MC tool suite.
🚧 Under Development — Work in progress tool & compiler. Not yet formally released.
Texture Studio is a local web application and CLI compiler built for authoring, inspecting, and compiling native SVG vector textures into production-ready Minecraft resource packs.
- 4-Way Synced 3D Viewport: Compare vector textures side-by-side against Vanilla, Bare Bones, and Faithful in real-time with 360° orbital motion synchronization.
- Single & Multiblock 3D Inspector: Inspect single cubes with exact 6-face UV wrapping, or multi-block structures (cliffs, dirt trails, standing trees, cabin walls) to verify seamless 3D tiling.
-
Multi-Layer Compositing: Renders dynamic Minecraft biome colormapping, grass overhang overlays, and custom
$15/16\text{ths}$ block heights. -
Rust-Speed Vector Compilation: Powered by
@resvg/resvg-jsto rasterize SVGs into crisp, ultra-high-definition PNGs at any target resolution ($512\times512$ ,$256$ ,$128$ ,$64$ ,$32$ ). -
1-Click Auto-Deploy: Automatically packages valid
.ziparchives with POSIX-compliant paths and syncs directly into your local.minecraft/resourcepacks/directory.
- Node.js (version 18.0.0 or higher)
# Clone the repository
git clone https://github.com/Ninja6-MC/TextureStudio.git
cd TextureStudio
# Install dependencies
npm installnpm startThen open http://localhost:3000 in your browser.
Texture Studio includes built-in scripts to compile SVG vector files located in textures/ into Minecraft-ready .zip resource packs:
# Compile 512x Ultra HD Resource Pack (Default)
npm run build
# Compile All Resolutions (512x, 256x, 128x, 64x, 32x)
npm run build:all
# Compile Specific Resolution Tiers
npm run build:256
npm run build:128
npm run build:64
npm run build:32Compiled archives are saved to dist/ and automatically deployed to .minecraft/resourcepacks/ if a local Minecraft installation is detected.
To compare your textures in 3D against existing Minecraft packs:
- Drop any standard Minecraft resource pack
.zip(e.g.Faithful_512x.zip,Bare_Bones.zip) into thecache/packs/directory (or pass--packs <path>to the server). - Click
🔄 Reload Texturesin the studio toolbar. - Select the external pack in any of the 4 viewports.
Contributions are welcome! Please ensure:
- Commits follow Conventional Commits.
- Every commit is signed off (
git commit -s) per the Developer Certificate of Origin (DCO). - Follow the Ninja6-MC Contributing Guidelines.