T.TAO
Back to Works
2026/engineering / engineering

MetalCaster

An Apple platform dedicated game engine, where GenAI is the first class citizen.

GameEngine
MetalCaster

Metal Caster is my attempt to rethink game engine design for the Apple ecosystem from first principles.

Instead of building a general-purpose engine for every platform and every workflow, Metal Caster is intentionally opinionated: Swift + SwiftUI + Metal + ECS, Apple platforms only, and AI as a first-class interface to the engine.

The engine is open source and can be accessed through GitHub.

Why I Started This

Most engines optimize for flexibility and cross-platform scale.
Metal Caster optimizes for something else:

  • Better defaults over endless configuration
  • Deep Apple Silicon optimization over portability
  • AI-native creation workflows over manual boilerplate
  • Visual clarity and tool elegance over feature bloat

The core idea is simple:

Describe what you want -> AI builds it through engine tools -> refine visually in the editor.

I want the engine to feel like a precision instrument: focused, minimal, and fast.

Current Progress (March 2026)

Metal Caster is in an active pre-alpha / architecture-hardening stage, with a working vertical slice across core systems.

What is already working

  • Modular engine foundation
    Swift Package-based architecture with dedicated modules for core ECS, rendering, scene, assets, input, physics, audio, AI, and math.

  • Core ECS runtime

    • Entity/component/system model
    • Typed queries
    • Event bus
    • Engine tick/update loop
  • Renderer and scene stack

    • Metal-based render pipeline and render-graph structure
    • Scene graph + built-in components (transform, camera, light, mesh, material, name)
    • Camera/lighting/mesh systems integrated into runtime/editor flows
  • Editor application (macOS, SwiftUI)

    • Multi-panel workspace (scene, hierarchy, inspector, assets, agent discussion)
    • Scene operations (create, duplicate, delete, import, save)
    • Build and play workflows
  • AI agent system integrated in-editor

    • 6 specialist agents (Scene, Render, Shader, Asset, Optimize, Analyze)
    • Multi-agent orchestrator for decomposing complex tasks
    • Tool-calling architecture with engine snapshots as context
    • Multi-provider support (OpenAI, Anthropic, Gemini)
  • Asset + build pipeline

    • Scene serialization and bundling (.mcbundle)
    • Shader collection and precompilation flow
    • SPM runtime project generation for Apple targets
  • Shader tooling

    • Standalone Shader Canvas project for MSL iteration and experimentation

What is still in progress

  • Advanced rendering features (PBR depth, GI, particles, etc.)
  • Broader test coverage beyond core ECS
  • Deeper USD collaboration workflows
  • Production hardening for large scenes and long sessions

Ambition

Metal Caster is not trying to be the next “everything engine.”
Its ambition is more specific:

  1. Become the best native engine experience on Apple platforms
    iOS, macOS, tvOS, and visionOS — with Metal-first performance and Swift-native ergonomics.

  2. Make AI the primary creation interface
    Not a chat sidebar, but a real engine control layer that can inspect state, call tools, and build scenes/materials/systems safely.

  3. Build a USD-native collaborative workflow
    Scene data as composable, version-friendly assets for real team workflows.

  4. Stay open, inspectable, and performance-transparent
    Clean package boundaries, measurable runtime behavior, and APIs that both humans and agents can reason about.

If successful, Metal Caster should feel like the Leica of game engines: focused, deliberate, and uncompromising in its domain.

Project Status

Status: Active development
Focus right now: solidify foundations, improve rendering quality, expand AI tool depth, and strengthen reliability for daily use.