跳到正文
发现
TextureCraft:纯 Rust 3D 纹理绘制工具
桌面应用设计创意

TextureCraft:纯 Rust 3D 纹理绘制工具

用纯 Rust 编写的开源 3D 纹理绘制应用,直接在模型上分层绘制 PBR 材质并烘焙导出。

admin
发布于 2026-11-02
浏览
1
访问
0
下载
0
版本
v0.2.0
平台
Windows、macOS、Linux
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

TextureCraft 是 ArtCraft 团队用纯 Rust 从零编写的开源 3D 纹理绘制应用。它提供完整的 3D 纹理绘制工作流:在模型上以图层和遮罩的方式直接绘制 PBR 材质、烘焙网格贴图、由烘焙结果驱动智能材质,并把贴图导出到各类引擎。应用原生运行于 macOS、Windows、Linux 和 FreeBSD,也能通过 WebAssembly 在浏览器中使用;桌面版与网页版共用同一套 UI。

按项目自述(2026-11-01 自评),约 93% 的纹理美术日常工作流已经可以端到端跑通。

主要功能

  • 熟悉的界面:纹理集、图层栈(支持逐通道混合)、遮罩与生成器、智能材质、工具架、3D 与 2D 视图,布局和快捷键沿用纹理美术已有的习惯。
  • 快速:分块、写时复制的纹理引擎充分使用多核 CPU,视口基于 wgpu(Vulkan、Metal、DX12、WebGPU)。网格贴图在 GPU 上烘焙约比 CPU 快 12 倍,Rendering 模式路径追踪约快 25 倍,8K 纹理集在绘制时仍保持流畅。
  • 无缝绘制:笔刷落点位于 3D 表面,笔画可以跨越 UV 接缝,并依据相机可见性避免画到模型背面。
  • 稳健:发布代码中不使用 panic,每条命令都用恶意输入测试,写时复制快照提供无限撤销,工程文件 .tcraft 无损保存。
  • 开放格式:可导入 glTF/GLB、FBX、COLLADA、USD、Alembic、OBJ、PLY、STL;可导出 PNG、JPEG、TGA、TIFF、BMP、WEBP、EXR、HDR 贴图,支持 8/16/32 位与 UDIM 分块;网格可导出为 OBJ、带贴图的 GLB 和 USD。所有材质、环境、笔刷 alpha 与内置网格均为程序化生成。
  • 面向 Agent:每个菜单项和工具都是一条命令,可从 CLI、JSON 控制通道或 MCP server 驱动,Claude 等 agent 可以像人一样绘制、烘焙和导出。
  • 多语言界面:支持英语、法语、德语、西班牙语、葡萄牙语、意大利语、日语、中文、韩语和阿拉伯语。

安装与使用

需要 Rust 1.95 或更高版本。

git clone https://github.com/storytold/texturecraft
cd texturecraft
cargo run --release -p texturecraft

应用启动时会打开一个已烘焙的示例工程,并显示开始窗口(新建、打开、最近工程)。File ▸ New project 可以从内置网格、工程模板或自己的网格文件新建工程;网格若没有 UV 会自动生成。

cargo run --release -p texturecraft -- model.glb          # 从网格新建工程
cargo run --release -p texturecraft -- --control 7878     # 同时开启 JSON 控制通道
cd apps/texturecraft-web && trunk serve                   # 构建网页版

命令行工具可用于无头流程:

cargo run --release -p texturecraft-cli -- new builtin:crate crate.tcraft --sample
cargo run --release -p texturecraft-cli -- render crate.tcraft crate.png --samples 256
cargo run --release -p texturecraft-cli -- export crate.tcraft textures

在 Claude Code 等 agent 中注册 MCP server,并指定允许读写的目录:

claude mcp add texturecraft -- /path/to/texturecraft-cli mcp --read-root /work/project --write-root /work/project

若要驱动正在运行的应用,用 --control 7878 启动它,再桥接过去:

claude mcp add texturecraft-app -- /path/to/texturecraft-cli mcp --bridge 7878

注意事项

  • 项目处于积极开发中,ROADMAP.md 中有按领域估算的完成度与后续计划。
  • 目前尚缺:Rendering 模式下的硬件光线追踪、笔触倾斜(窗口层尚未上报)、旧 HDF5 容器的 Alembic 文件与 Alembic 动画、翻译的母语审校,以及各平台的首次签名发布。
  • 日语、中文、韩语和阿拉伯语界面文字使用 storytold/craft-fonts 的字体,属于可选的构建输入:CRAFT_FONTS_DIR="$PWD/../craft-fonts" cargo run --release -p texturecraft(需绝对路径)。未提供时桌面应用使用系统已安装字体。
  • 许可证为 MIT 或 Apache-2.0。

本作品整理自 GitHub 开源项目 storytold/texturecraft,原作者 @storytold,许可证 Apache-2.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v0.2.0当前版本

    新增 High Pass、Edge Detect、Bevel、Glow、Mosaic、Baked Lighting 等滤镜,几何遮罩、8 个智能遮罩与 4 个智能材质,Godot 4(ORM)和 OpenPBR 导出预设,笔刷径向对称,FBX/COLLADA/USD 相机导入及 USD 导出清漆层。

评论