T.TAO
Back to Works
2026/engineering / engineering

MetalCaster

一个专为 Apple 平台打造的游戏引擎,生成式 AI 在其中是一等公民。

GameEngine
MetalCaster

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 并不打算成为下一个“全能引擎”。
它的野心更加具体:

  1. 成为 Apple 平台上最佳的原生引擎体验
    iOS、macOS、tvOS 和 visionOS —— 具备 Metal 优先的性能和 Swift 原生的易用性。

  2. 让 AI 成为主要的创作接口
    不是一个聊天侧边栏,而是一个真正的引擎控制层,能够检查状态、调用工具,并安全地构建场景/材质/系统。

  3. 构建 USD 原生的协作工作流
    将场景数据作为可组合、版本友好的资产,用于真实的团队工作流。

  4. 保持开放、可检查且性能透明
    清晰的包边界、可测量的运行时行为,以及人类和智能体都能理解的 API。

如果成功,Metal Caster 应该感觉像是游戏引擎中的“徕卡”:专注、深思熟虑,且在其领域内绝不妥协。

项目状态

状态: 活跃开发中
当前重点: 巩固基础、提升渲染质量、扩展 AI 工具深度,并增强日常使用的可靠性。