Metal Caster 是我尝试从第一性原理出发,为 Apple 生态系统重新思考游戏引擎设计的产物。
Metal Caster 并非要构建一个适用于所有平台和所有工作流的通用引擎,而是刻意保持了鲜明的观点:Swift + SwiftUI + Metal + ECS,仅限 Apple 平台,并将 AI 作为引擎的一等公民交互接口。
该引擎是开源的,可以通过 GitHub 访问。
为什么我开始这个项目
大多数引擎都在为灵活性和跨平台规模进行优化。
而 Metal Caster 优化的是其他方面:
- 更优的默认设置胜过无休止的配置
- 深度的 Apple Silicon 优化胜过可移植性
- AI 原生创建工作流胜过手动样板代码
- 视觉清晰度和工具优雅感胜过功能堆砌
核心理念很简单:
描述你的需求 -> AI 通过引擎工具进行构建 -> 在编辑器中进行视觉微调。
我希望这个引擎给人的感觉像是一件精密仪器:专注、极简且快速。
当前进展 (2026年3月)
Metal Caster 正处于活跃的 pre-alpha / 架构强化阶段,核心系统已经实现了可运行的垂直切片。
已实现的功能
-
模块化引擎基础
基于 Swift Package 的架构,拥有用于核心 ECS、渲染、场景、资产、输入、物理、音频、AI 和数学的专用模块。 -
核心 ECS 运行时
- 实体/组件/系统(Entity/component/system)模型
- 类型化查询(Typed queries)
- 事件总线(Event bus)
- 引擎 Tick/更新循环
-
渲染器和场景栈
- 基于 Metal 的渲染管线和渲染图(render-graph)结构
- 场景图 + 内置组件(transform, camera, light, mesh, material, name)
- 集成到运行时/编辑器流中的摄像机/灯光/网格系统
-
编辑器应用程序 (macOS, SwiftUI)
- 多面板工作区(场景、层级、检查器、资产、智能体讨论)
- 场景操作(创建、复制、删除、导入、保存)
- 构建和运行工作流
-
编辑器集成的 AI 智能体系统
- 6 个专业智能体(场景、渲染、着色器、资产、优化、分析)
- 用于分解复杂任务的多智能体编排器
- 以引擎快照作为上下文的工具调用(Tool-calling)架构
- 多供应商支持(OpenAI, Anthropic, Gemini)
-
资产 + 构建流水线
- 场景序列化与打包 (
.mcbundle) - 着色器收集与预编译流
- 针对 Apple 目标的 SPM 运行时项目生成
- 场景序列化与打包 (
-
着色器工具
- 独立的 Shader Canvas 项目,用于 MSL 迭代和实验
正在开发中
- 高级渲染特性(PBR 深度、GI、粒子等)
- 核心 ECS 之外更广泛的测试覆盖
- 更深层的 USD 协作工作流
- 针对大型场景和长时间运行的生产环境强化
愿景
Metal Caster 并不打算成为下一个“全能引擎”。
它的野心更加具体:
-
成为 Apple 平台上最佳的原生引擎体验
iOS、macOS、tvOS 和 visionOS —— 具备 Metal 优先的性能和 Swift 原生的易用性。 -
让 AI 成为主要的创作接口
不是一个聊天侧边栏,而是一个真正的引擎控制层,能够检查状态、调用工具,并安全地构建场景/材质/系统。 -
构建 USD 原生的协作工作流
将场景数据作为可组合、版本友好的资产,用于真实的团队工作流。 -
保持开放、可检查且性能透明
清晰的包边界、可测量的运行时行为,以及人类和智能体都能理解的 API。
如果成功,Metal Caster 应该感觉像是游戏引擎中的“徕卡”:专注、深思熟虑,且在其领域内绝不妥协。
项目状态
状态: 活跃开发中
当前重点: 巩固基础、提升渲染质量、扩展 AI 工具深度,并增强日常使用的可靠性。
