ArmorPaint:面向开发者的3D PBR纹理绘制工具
ArmorPaint是给开发者用的3D PBR纹理绘制软件,区别是源码和多平台构建流程公开,现成二进制需付费。
GitHub armory3d/armorpaint 更新 2026-09-11 分支 main 星标 4.4K 分叉 521
C Metal 3D PBR纹理 Windows/Linux/macOS WASM

🧭 决策指南

适合,如果你

  • 你需要研究或编译ArmorPaint的3D PBR纹理绘制源码,而不是只安装现成软件。
    README Note 1称仓库面向开发者,并说明所有开发都在此进行;README正文将ArmorPaint描述为3D PBR texture painting软件。
  • 你的目标平台是Windows、Linux、macOS、Android、iOS或WASM之一。
    README分别提供Windows (x64)、Linux (x64)、macOS (arm64)、Android (arm64)、iOS (arm64)和WASM的构建命令。
  • 你需要修改本地化资源或构建嵌入式数据文件。
    README提供Generating a locale file章节中的extract_locales.js命令,以及Embedding data files章节中的--embed命令。

不适合,如果你

  • 你只接受稳定版本,不接受README明确警告可能不稳定的git版本。
    README Note 1原文说明:This repository is aimed at developers and may not be stable。
  • 你需要免费的现成二进制文件,而不是源码编译或付费下载。
    README Note 1说明Distributed binaries are paid,并链接到armorpaint.org/download。
  • 你的环境没有README要求的编译器和git,无法执行源码构建。
    README Note 2要求安装compiler和git,并按平台列出Visual Studio with clang tools、clang + dependencies、Xcode或Android Studio。

前置条件

  • 需要安装git;README Note 2原文为“you need to have a compiler ... and git installed”。
  • Windows需要Visual Studio with clang tools;Linux需要clang + dependencies;macOS/iOS需要Xcode;Android需要Android Studio。
  • 执行Embedding data files时,需要支持C23 #embed的clang 19或更新版本。
  • README给出的平台目标包括Windows x64、Linux x64、macOS arm64、Android arm64和iOS arm64。

第一步命令(README 原文)

git clone https://github.com/armory3d/armorpaint

要注意

  • Windows构建后要打开build\\ArmorPaint.sln,而不是直接运行源码目录。
    README Windows (x64)章节要求执行..\\base\\make,并打开生成的Visual Studio项目build\\ArmorPaint.sln。
  • macOS构建后要打开build/ArmorPaint.xcodeproj并执行Build and run。
    README macOS (arm64)章节明确给出生成的Xcode项目路径。
  • Android和iOS命令只生成设备构建流程,分别要求Build for device。
    README Android (arm64)和iOS (arm64)章节均写明Build for device。
  • 使用--embed时,clang版本低于19或缺少C23 #embed支持会不满足README条件。
    README Embedding data files章节要求compiler with c23 #embed support (clang 19 or newer)。

材料未说明

  • README没有说明运行时的GPU、显存或图形API最低要求。
  • README没有说明Windows、Linux、macOS、Android和iOS的具体最低操作系统版本。
  • 项目许可字段为Other,但材料没有给出具体许可证名称或商业使用条款。
  • README没有说明1.0版本与git版本之间的功能差异或升级兼容性。
  • README没有给出构建耗时、产物大小或各平台测试覆盖范围。

💡 深度解析

6
不适合 我只想在 Windows、Linux 或 macOS 上直接使用稳定的 3D PBR 纹理工具,不想安装 Visual Studio、clang、Xcode 或 Git;这个 GitHub 仓库是否适合我?
适合读者: 只想在 Windows、Linux 或 macOS 上下载安装稳定版本、不准备安装编译器和平台 SDK 的 3D 艺术家

不适合把这个 GitHub 仓库当作免编译的稳定下载入口,因为 README 明确将仓库定位为开发者版本,并要求自行准备平台工具链。

  • README 说仓库“aimed at developers and may not be stable”,这直接否定了把 Git 版本视为稳定成品的前提。
  • 编译 Git 版本需要编译器和 Git:Windows 需要 Visual Studio with clang tools,Linux 需要 clang + dependencies,macOS 需要 Xcode。
  • README 的下载说明把发行二进制指向 armorpaint.org/download,并说明 distributed binaries are paid;因此仓库和已打包发行版是两条不同路径。
  • 如果你的目标是直接使用而不是修改 C、Metal、HLSL 或构建脚本,应优先研究官方发行版的获取方式,而不是从仓库开始。
  • README:"this repository is aimed at developers and may not be stable"
  • README:"If you are compiling git version ... compiler ... and git installed"
  • README:Windows、Linux、macOS 的工具链要求
  • README:"Distributed binaries are paid" 与 armorpaint.org/download
材料未说明:README 未说明官方发行版具体支持哪些操作系统版本、硬件配置和安装方式。;README 未说明发行版与 Git 版本在功能、稳定性和项目文件兼容性上的差异。
适合 我正在为独立游戏制作 3D PBR 纹理,工作环境是 Windows x64,并且团队已经使用 Visual Studio 的 clang tools;ArmorPaint 是否适合作为主要纹理绘制工具?
适合读者: 需要为独立游戏制作 3D PBR 纹理、并在 Windows x64 上使用 Visual Studio clang 工具链的游戏资产制作者

适合,因为项目的核心用途就是 3D PBR texture painting,并且 README 为 Windows x64 提供了明确的构建路径。

  • 仓库定位不是通用 2D 绘图,而是直接面向 3D 模型表面和 PBR 材质制作,和你的资产生产目标一致。
  • Windows 构建依赖 Visual Studio with clang tools,与你现有工具链匹配;构建脚本会生成 build\\ArmorPaint.sln,可继续使用 Visual Studio 编译和运行。
  • 但仓库明确面向开发者且可能不稳定,不能把 Git 版本等同于经过充分稳定化的发行版本;发行二进制需要付费获取。
  • ArmorPaint 的公开定位是纹理绘制,不应据此替代建模、绑定、动画或完整资产管理工具。
  • README:"ArmorPaint is a software for 3D PBR texture painting"
  • README:"Windows (x64)" 与 "Visual Studio with clang tools"
  • README:"Open generated Visual Studio project at `build\\ArmorPaint.sln`"
  • README:"this repository is aimed at developers and may not be stable"
git clone https://github.com/armory3d/armorpaint
材料未说明:README 未说明具体支持哪些游戏引擎、导出格式和 PBR 通道命名。;README 未提供 Windows 版本的性能要求、显存需求或大尺寸纹理限制。
适合 我想基于源代码定制 ArmorPaint,新增团队语言文件,并把数据直接嵌入最终构建;项目是否提供了可执行的支持路径?
适合读者: 需要把 ArmorPaint 改造成内部工具、生成团队语言文件并将资源嵌入产物的图形工具维护者

适合,因为 README 直接提供了语言文件生成和数据嵌入命令;不过嵌入路径要求较新的编译器,且仓库许可和二进制分发条件需要单独核查。

  • 语言文件可通过 extract_locales.js 生成,并写入 paint/assets/locale/<locale code>.json,这为定制团队语言提供了明确入口。
  • 数据嵌入使用 ../base/make --embed,README 明确要求支持 C23 #embed 的 clang 19 或更高版本。
  • WASM 构建示例同时使用 --compile --embed,说明嵌入流程也被用于特定交付目标。
  • 项目许可证标为 Other,且 README 说明发行二进制版本付费;如果内部修改后要再分发,不能只依据“源代码可访问”作出许可结论。
  • README:"Generating a locale file"
  • README:"./base/make --js base/tools/extract_locales.js <locale code>"
  • README:"Requires compiler with c23 #embed support (clang 19 or newer)"
  • 项目数据:license 为 "Other";README:"Distributed binaries are paid"
./base/make --js base/tools/extract_locales.js <locale code>
材料未说明:README 未说明生成的语言文件是否需要额外注册、编译配置或运行时加载设置。;README 未说明 Other 许可证对修改、内部部署、再分发和商业集成的具体限制。
适合 我维护 Linux x64 构建环境,已经能安装 clang、README 所需依赖和 Git,并且希望修改 C 源码定制纹理工作流;这个仓库是否适合直接作为开发基础?
适合读者: 维护 Linux x64 图形工具构建环境、希望从源代码定制纹理工作流的 C 开发者

适合,但前提是你接受 Git 版本可能不稳定,并愿意自行维护 Linux 依赖。这个仓库更像可编译、可修改的图形应用开发基础,而不是只供下载安装的成品。

  • 项目主语言是 C,代码量约 12,273,678 行;同时仓库包含构建脚本、工具脚本和图形后端相关代码,适合从源代码研究或定制。
  • README 明确要求 Linux 使用 clang + dependencies,并给出了 ../base/make --run 的最小运行路径。
  • 统一的 base/make 流程可以减少直接维护独立 Linux 工程的需要,但 README 没有承诺 API 稳定性或 Git 提交之间的兼容性。
  • 如果你需要稳定的生产发行版,仓库本身不是最稳妥的默认选择,因为 README 明确提醒该仓库面向开发者。
  • 项目数据:主语言为 C,C 代码量为 12273678
  • README:"Linux, clang + dependencies"
  • README:"../base/make --run"
  • README:"All of the development is happening here" 及仓库可能不稳定说明
../base/make --run
材料未说明:README 未说明 Linux 依赖的完整版本矩阵、GPU 驱动要求和发行版覆盖范围。;README 未说明修改 C 代码后是否存在稳定的插件接口或自动化测试套件。
适合 我已经用 Xcode 维护 Apple 平台代码,需要同时构建 macOS arm64 和 iOS arm64 版本,并希望复用一套 3D PBR 绘制代码;这个项目的构建方式是否匹配?
适合读者: 已经使用 Xcode 维护 Apple 平台工具、需要在 macOS arm64 与 iOS arm64 之间复用 3D PBR 绘制代码的图形程序员

适合用于复用同一仓库的 Apple 平台开发流程,但是否能直接满足你的产品级 iOS 需求仍取决于 README 没有说明的输入、性能和发布细节。

  • README 为 macOS arm64 和 iOS arm64 都提供了构建命令,并且两者都生成 Xcode 工程,与你现有的 Xcode 工作方式一致。
  • 项目语言分布包含 Objective-C 和 Metal,说明 Apple 平台集成与图形后端并非仓库外部假设,而是项目实际技术组成。
  • macOS 和 iOS 使用不同的 --target 方式生成目标,统一入口有利于维护一套代码,但不能证明两端功能完全一致。
  • README 只写到“Build for device”,没有说明签名、App Store 发布、触控交互、iOS 资源限制或 Metal 特性覆盖。
  • README:"macOS (arm64)" 与 "Open generated Xcode project"
  • README:"iOS (arm64)" 与 "../base/make --target ios"
  • 项目数据:Objective-C 378579、Metal 228756
  • README:"Build for device"
../base/make --target ios
材料未说明:README 未说明 iOS 的最低版本、设备型号、签名配置和 App Store 发布流程。;README 未说明 macOS 与 iOS 的触控、文件访问和图形功能差异。
视情况 我需要同时生成 macOS arm64、Android arm64 和 WASM 构建,并希望用同一套仓库维护跨平台纹理工具;ArmorPaint 是否能满足这个交付约束?
适合读者: 需要把同一套 3D PBR 纹理工具部署到 macOS arm64、Android arm64 和 WASM 的跨平台图形工程师

视情况:目标平台和统一构建入口都被 README 覆盖,但不能仅凭存在构建命令就认定三个平台的功能、性能和输入体验等价。

  • README 分别提供 macOS arm64、Android arm64 和 WASM 的 base/make 命令,说明项目确实把这些目标纳入构建流程。
  • macOS 需要 Xcode,Android 需要 Android Studio;WASM 还需要 --compile --embed,因此交付链路依赖多套平台工具和不同的产物流程。
  • 项目数据列出的 Metal、HLSL、Objective-C 和 JavaScript,反映出它包含平台与图形后端适配,但不等于所有目标都有一致的功能覆盖。
  • 移动设备性能、浏览器运行时、GPU 能力、内存和触控输入限制,README 没有给出可量化结论。
  • README:"macOS (arm64)"、"Android (arm64)"、"WASM" 构建章节
  • README:"../base/make --target android"
  • README:"../base/make --target wasm --compile --embed"
  • 项目数据:Objective-C、Metal、JavaScript、HLSL 均在语言分布中出现
../base/make --target wasm --compile --embed
材料未说明:README 未说明 macOS、Android 与 WASM 之间的功能差异和最低硬件规格。;README 未说明浏览器兼容性、触控输入支持、内存上限或移动端纹理分辨率上限。

✨ 核心亮点

  • 支持Windows、Linux、macOS、Android和iOS构建
  • 提供WASM目标与--compile --embed命令
  • C代码规模达12,273,678字节
  • README明确面向开发者并提供源码构建路径

🔧 工程化

  • 用于3D PBR纹理绘制,README链接提供ArmorPaint manual
  • 通过base/make生成Visual Studio、Xcode和Android Studio工程
  • 可用extract_locales.js生成paint/assets/locale文件

⚠️ 风险

  • README警告git版本面向开发者,可能不稳定
  • 分发二进制文件为付费下载,不能默认免费获取
  • 编译需要Visual Studio、clang、Xcode或Android Studio
  • embed要求支持C23 #embed的clang 19或更新版本

👥 适合谁?

  • 需要编译ArmorPaint源码的Windows、Linux或macOS开发者
  • 需要Android arm64或iOS arm64构建目标的开发者
  • 需要WASM构建或本地化文件生成的项目维护者