메시는 문이 아니다

세계 모델은 먼저 게임 엔진에서 판가름 나고, 그다음 물리 AI로 넘어간다

영어 원문에서 옮김 · 기계 초벌 번역, 검수 전

슬라이드 링크

현실은 영어를 말하지 않는다. 상태를 말한다.

대형 게임 팀이라면 누구나 알아보는 실패 양상이 있다. 플레이어가 세계를 바꾸는데, 게임의 의미론적 세계는 갱신되지 않는다.

좁은 골목을 막으려고 차량을 끌어다 놓는다. 시각적으로 골목은 막혔다. 물리적으로도 충돌이 있다. 그러나 행인들은 여전히 그곳을 지나간다. 내비메시가 오프라인에서 구워졌고 “이 공간은 이제 막혔다”는 것을 끝내 배우지 못했기 때문이다. 소품 더미를 걷어차 새 엄폐물을 만들지만, 엄폐 시스템은 여전히 옛 태그 노드를 가리킨다. 모퉁이를 돌면 NPC들은 지난 30초가 없었던 것처럼 행동한다. 장면에 대한 그들의 내부 표현이 이미 움직인 세계 위에 얹힌 얇은 덧칠이기 때문이다.

이것들은 추상적인 “NPC 지능” 문제가 아니다. 표현의 문제다. 에이전트는 플레이어가 있는 세계를 두고 추론하지 않는다. 그 세계의 단순화되고 일부 낡은 모델을 두고 추론한다.

세계 모델은 그 간극을 닫으려는 시도다. 더 영리한 행동 트리를 쓰는 것이 아니라, 개입 아래서도 일관성을 유지하는 상태 있는 세계 표현을 유지함으로써. 객체는 가려져도 정체성을 지킨다. 어포던스는 장면이 바뀌면 갱신된다. 제약은 제약으로 남는다. 시스템은 행동에 따라 앞으로 나아가면서 일관성을 지킬 수 있다.

게임이 여기서 중요한 까닭은, 게임이 세계 모델에 필요한 루프를 이미 돌리고 있기 때문이다. 관찰하고, 행동하고, 상태를 갱신하고, 반복한다. 엔진은 제약, 지속성, 계측, 재생을 갖춘 산업급 세계 런타임이다. 세계 모델이 인상적인 미디어가 아니라 믿을 만한 시스템이 되려면 그 런타임으로 수렴할 것이다.

로보틱스가 같은 이유로 그다음에 온다. 물리 AI는 같은 루프인데, 다만 실수에 질량과 비용이 있다.

클립에서 세계로

쉬운 테스트가 있다.

스텝할 수 있는가?

샘플링은 미래 하나를 요청하고 하나를 돌려받는다. 스텝은 행동을 적용하고, 다음 상태가 그 행동, 이전 상태, 세계의 규칙과 일관되도록 강제한다. 스텝할 수 있게 되면 정확성은 미학이기를 멈춘다. 행동의 문제가 된다.

시스템의 말로 하면 세계는 상태 전이 과정이다. 완전히 관찰할 수는 없는 기저 상태 s_t​가 있다. 행동 a_t​를 취한다. 상태는 규칙과 무작위성 아래서 진화한다. 무언가​를 관찰하고 다시 행동한다. 이 루프를 간결하게 쓰면 다음과 같다.

진지한 세계 모델은 이 과정의 학습된 근사다. 요점은 픽셀을 예측한다는 것이 아니다. 요점은 일관된 내부 상태를 앞으로 실어 나르므로, 세계가 무슨 일이 있었는지 “잊지” 않은 채 에이전트가 계획하고 행동할 수 있다는 것이다.

그것이 바로 많은 현재 시스템에서 깨지는 부분이다. 환경은 갱신되는데 에이전트가 쓰는 표현은 갱신되지 않는다. 내비메시는 정적으로 남는다. 엄폐 그래프도 정적으로 남는다. 어포던스는 부서지기 쉬운 태그다. 에이전트가 추론하는 세계는 플레이어가 보는 세계에서 표류해 멀어진다.

세계 모델은 빠진 능력을 겨냥한다. 개입 아래서 갱신되고, 긴 구간에 걸쳐 안정적이며, 스텝을 지원하는 표현이다.

그것이 “플레이 가능”의 뒤에 있는 실무적 질문으로 이어진다.

플레이 가능하려면 실제로 무엇이 필요한가?

메시는 문이 아니다

“플레이 가능”은 흔히 하나의 이진 속성인 것처럼 쓰인다. 그렇지 않다. 수준들이 있고, 그 수준들이 “3D 환경을 생성하기”가 왜 “세계를 생성하기”와 같지 않은지를 설명한다.

걸을 수 있다는 공간이 일관되고, 충돌이 작동하고, 내비게이션이 유효하다는 뜻이다.
상호작용할 수 있다는 객체에 정체성, 어포던스, 지속되는 상태가 있다는 뜻이다.
게임이 된다는 규칙이 루프를 만든다는 뜻이다. 목표, 실패, 진행.
저작할 수 있다는 창작자가 편집할 수 있고 편집이 지속된다는 뜻이다.

“3D”에서 “플레이 가능”으로의 도약은 대체로 상호작용 층에 자리한다.

문처럼 보이는 메시는 문이 아니다. 문은 지오메트리에 충돌, 경첩 제약, 상호작용 어포던스, 상태 변수(열림/닫힘, 잠김/풀림), 그리고 상태가 의미를 갖게 하는 규칙 논리를 더한 것이다. 바닥은 삼각형이 아니다. 세계가 바뀌면 갱신되어야 하는 내비게이션 의미론을 가진 지나갈 수 있는 표면이다. 엄폐물은 시각적 실루엣이 아니다. 지오메트리와 시선 제약에 묶인, 질의할 수 있는 어포던스다.

세계 모델은 더 예쁜 이미지를 만들 수 있을 때가 아니라, 이 수준들에서 실행 가능한 세계를 만들 수 있을 때 제품이 된다.

그리고 진짜 병목이 드러나는 곳이 거기다. 생성된 세계 상태는 실행 가능한 세계 행동이 아니다.

세계 모델로 가는 세 갈래 길

현재 연구 대부분은 세 진영으로 묶을 수 있다. 실제로는 경계가 흐려지지만 의도는 뚜렷이 다르다.

진영 A: 렌더 우선 미래(OpenAI의 Sora)
Sora형 시스템. 본래 출력은 비디오이고, “세계”는 그럴듯한 프레임에 최적화된 잠재 공간 안에 암묵적으로 들어 있다. 이 모델들은 외양과 짧은 구간의 움직임에 대한 값진 사전 지식이다. 쓸모 있는 콘텐츠 엔진이기도 하다.

기본 인터페이스는 샘플링이다. 스텝과 지속성에는 보통 그 위에 얹는 구조가 필요하다.

진영 B: 상호작용 비디오 세계(DeepMind의 Genie)
Genie형 시스템. 출력은 여전히 2D 프레임이지만, 내부 상태를 유지하면서 행동 하나하나마다 스텝하도록 설계되어 있다. 진영 A와의 차이는 해상도가 아니다. 행동이 일급이고 개입 아래의 일관성이 중심 요건이라는 점이다.

진영 A는 미래를 샘플링한다. 진영 B는 행동 아래서 시뮬레이션한다.

진영 C: 명시적 3D 세계 빌더(World Labs의 Marble)
Marble형 접근. 세계 상태는 새로운 시점, 편집, 표준 파이프라인으로의 내보내기를 지원하는 3D 구조로 명시적이어야 한다는 데 건다. 시점 일관성과 편집 가능성은 비디오 잠재 공간에서 창발하기를 바라는 속성이 아니라 표현에 내장되어 있다.

진영 C는 엔진에 자연스럽게 읽힌다. 엔진은 이미 명시적 3D 상태 위에서 작동하기 때문이다.

세 진영은 결합할 것이다. 있을 법한 최종 상태는 혼합형이다. 비디오 사전 지식, 상호작용 롤아웃, 도움이 되는 곳의 명시적 구조를 함께 쓴다.

실무적 병목은 셋 모두에서 같다.

생성된 세계 상태는 실행 가능한 세계 행동이 아니다.

빠진 층은 컴파일러다

세계 모델은 세계 상태를 생성한다. 엔진은 세계 역학을 실행한다. 어려운 부분은 번역이다.

컴파일 문제처럼 다루어라.

진영 C는 구조를 출력하기 때문에 이를 가장 보기 쉽게 만든다. 올바른 출력 목표는 “메시”가 아니다. 엔진이 받아들일 수 있는 구조화된 세계 기술이다.

합리적인 중간 표현은 렌더가 아니라 장면 기술처럼 생겼다.

{
  "entities": [
    {
      "id": "door_17",
      "type": "door",
      "transform": { "pos": [1.2, 0.0, -3.4], "rot": [0, 90, 0] },
      "mesh": "door_mesh_A",
      "materials": ["painted_metal"],
      "affordances": ["open", "close"],
      "state": { "open": false, "locked": true },
      "physics": { "mass": 18.0, "hinge_axis": [0, 1, 0] }
    }
  ]
}

요점은 JSON이 아니다. 요점은 규율이다. 모델이 엔진에 먹이를 줄 것이라면, 출력은 지오메트리만이 아니라 구조화된 세계 기술처럼 보여야 한다. 개체에는 안정적인 ID가 필요하다. 타입은 명시적이어야 한다. 어포던스와 상태 변수를 표현할 수 있어야 한다. 물리 속성은 뒷생각이 아니라 중요한 곳에 존재해야 한다.

거기서부터 엔진은 컴포넌트를 붙여 구조를 실행 가능한 의미론으로 컴파일할 수 있다. “문”은 메시가 아니다. 충돌, 경첩 제약, 상호작용 컴포넌트, 상태 복제가 된다. “줍는 물건”은 잡기 어포던스와 인벤토리 의미론을 가진 강체가 된다. “지면”은 충돌 지오메트리와 내비메시 베이크가 된다. “위험 요소”는 볼륨에 피해 규칙을 더한 것이 된다. 플레이 가능성은 여기서 결정된다. 걸을 수 있는 세계에는 유효한 충돌과 내비게이션이 필요하다. 상호작용할 수 있는 세계에는 정체성, 어포던스, 지속되는 상태가 필요하다. 게임이 되는 세계에는 상태를 결과로 바꾸는 규칙 시스템이 필요하다.

가장 어려운 실무적 반론이 드러나는 곳도 여기다. 의미론적 오류는 파국적이다. “걸을 수 있는 바닥”에서 1퍼센트의 오류율이면 게임은 플레이할 수 없게 된다. 그것은 접근을 버릴 이유가 아니라, 컴파일러 층이 중요한 이유다. 진지한 파이프라인은 불확실성을 보수적으로 다룬다. 자유 형식 태그가 아니라 타입이 있는 스키마를 써라. 추측하지 말고 검증하라. 이상하게가 아니라 닫힌 채로 실패하라. 모델이 무언가가 줍는 물건인지 확신하지 못하면 상호작용 불가를 기본값으로 하라. 바닥이 유효한 충돌을 만들 수 없으면 출시 전에 장면을 거부하거나 수리하라. 세계 모델은 의미론적 오류가 플레이어에게 보이는 결함이 아니라 디버깅할 수 있는 실패로 바뀔 때 쓸모 있어진다. 그것이 해자다.

엔진은 실행자, 모델은 사전 지식

뻔한 반론은 컴퓨트다. 초당 60프레임으로 스텝하는 것이 게임이 하는 일이다. 소비자 하드웨어에서 큰 신경망 모델을 초당 60프레임으로 돌리는 것은 현실적이지 않다.

그 비판은 옳고, 올바른 아키텍처를 가리킨다.

엔진은 임계 경로 위의 실행자로 남는다.

세계 모델은 임계 경로 바깥에서, 혹은 더 낮은 빈도로, 혹은 결정 경계에서만 기여한다.

실제로 초기의 이기는 시스템은 혼합형으로 보인다.

엔진은 결정론적 스텝, 제약, 충돌, 규칙 논리를 프레임 속도로 돌린다.

모델은 사전 지식과 제안을 제공한다. 구조화된 콘텐츠를 생성한다. 위험한 미시 결정에 대해 짧은 구간의 결과를 예측한다. 안전한 곳에서 그럴듯한 상태를 채운다. 비동기로 돌아가고, 캐시되고, 증류되고, 선택적으로 호출된다.

그 분업은 타협이 아니다. 이것이 제품이 되는 유일한 길이다.

핵심 논제도 강화한다. 엔진은 대체되지 않는다. 엔진은 세계 모델을 쓸 수 있게 만드는 런타임이 되어 간다.

게임이 왜 무게 중심이 되는가

“컴파일러 더하기 런타임”을 받아들이면, 세 가지 구조적 이유로 엔진은 자연스러운 수렴점이 된다.

의미론과 디버깅이 이미 거기 산다엔진은 이미 스텝, 충돌, 내비게이션, 물리 근사, 상태 기계, 트리거, 관측 가능성을 정의한다. 무언가 실패하면 상태를 보고 싶다. 어떤 제약이 위반되었는지 보고 싶다. 재현 가능성을 원한다.

그럴듯한 프레임만 렌더링하는 잠재 공간은 디버깅하기 나쁜 자리다. 엔진은 디버깅하기 좋은 자리다. 상태가 명시적이고 제약이 실행 가능하기 때문이다.

출시 압력이 예외 상황을 데이터로 바꾼다게임에는 내장된 스트레스 테스트가 있다. 플레이어는 적대적으로 탐색한다. 일부러 이상한 짓을 한다. 설계한 적 없는 경계 조건을 찾아낸다.

세계 모델에는 그런 종류의 커버리지가 필요하다. 어려운 실패는 행동에 조건 지어지고 긴 시간에 걸쳐 있기 때문이다. 라이브 게임은 트레이스를 붙잡고, 실패를 캐내고, 학습 커리큘럼으로 바꿀 수 있다. 그것이 복리로 쌓이는 개선을 만든다.

표준화는 플랫폼 주위에 쌓인다모든 기반 모델 시대는 표준으로 수렴한다. 데이터 형식, 도구 생태계, 통합 표면.

엔진은 이미 상호작용 3D에서 그 역할을 한다. 세계 모델이 널리 쓸 수 있는 기반이 되려면, 그 구조화된 출력과 의미론 라이브러리는 이미 세계를 출시하는 플랫폼 주위에서 안정될 것이다.

이것이 게임이 앞서는 이유다. 실행자, 디버거, 유통, 피드백 루프를 이미 갖고 있다.

세계 모델이 게임에서 여는 것

런타임 이야기가 중요한 까닭은 제품의 최전선을 바꾸기 때문이다.
세계 모델은 새로운 기본 요소를 들여온다. 기본 요소는 플랫폼이 이동하는 자리다.

프롬프트에서 플레이로 가는 창작
콘셉트 아트가 아니다. 플레이 가능한 조각이다. 디자이너는 즉시 그 안을 가로지르고, 페이스를 느끼고, 배치를 조정하고, 몇 분 안에 반복할 수 있다. 창작 루프는 긴 빌드 뒤가 아니라 첫 단계부터 상호작용적이 된다.

진영 C에 현실 점검이 필요한 곳도 여기다. AAA급 3D 에셋은 어렵다. 토폴로지, 리깅, LOD, UV, 성능 예산. 가까운 미래의 가치는 “AI가 프로덕션 준비가 된 나이트 시티를 생성한다”가 아니다.

가까운 미래의 가치는 블록아웃, 구조화된 배치, 기존 에셋 라이브러리와 도구에 짝지을 수 있는 엔진이 받아들이는 장면 그래프다. 모델이 세계 구조의 초안을 잡게 하라. 파이프라인이 다듬게 하라.

조합 폭발 없는 지속되는 결과폭발하는 분기 트리가 아니다. 유지할 수 있는 상태 있는 인과다. 플레이어가 한 일을 기억하고 긴 세션과 업데이트에 걸쳐 일관성을 지키는 세계.

같은 세계 역학 안에 사는 NPC도약은 말을 더 잘하는 NPC가 아니다. 플레이어와 같은 규칙 안에서 움직이고, 기억하고, 예측하고, 반응하는 NPC다. 실제로 이는 세계가 예상된 각본에서 벗어날 때 부서지기 쉬운 논리 트리의 실패 양상이 줄어드는 모습으로 나타난다.

시뮬레이션 네이티브 QA와 밸런싱실행 가능한 세계는 에이전트가 적대적 플레이 트레이스를 생성하게 한다. 퇴화된 전략을 찾고, 경계 조건을 찔러 보고, 예외 상황을 일찍 드러낼 수 있다. 사람의 취향은 여전히 중심에 있다. 차이는 맹점이 측정 가능해진다는 것이다.

새로운 형식가장 깊은 변화는 제작 속도가 아니다. 저작된 콘텐츠와 창발하는 세계 사이에 자리하는 경험이다. 런타임이 규칙을, 모델이 폭을 공급하기에 일관된 경험.

게임은 이 기본 요소들이 규모 있게 출시될 수 있는 첫 자리다. 게임에는 런타임, 툴체인, 그리고 그것들을 매일 압박 시험할 관객이 이미 있기 때문이다.

로보틱스는 같은 스택을 물려받는다

로보틱스는 같은 스텝 루프인데, 다만 제약이 실재한다. 작은 행동 차이가 충돌을 일으킬 수 있다. 부분 관측이 기본이므로 상태 추적은 결코 선택이 아니다. 안전 제약은 설계 선택이 아니라 굳은 한계다. 그리고 정직한 실패가 중요하다. 환각된 성공은 그저 잘못 보이는 데 그치지 않고 하드웨어를 부수고 학습을 오염시킨다. 그래서 도입은 단계적일 것이다. 업계는 접촉과 실패 근처의 짧은 구간 예측과 행동 게이팅으로 시작해, 함대 재생과 행동 회귀 테스트로 나아가고, 검증 커버리지가 단단해진 뒤에야 계획 구간을 넓힐 것이다.

1단계: 경계 근처의 실행 전 예측
처음 널리 쓰이는 용도는 취약한 순간 주변의 짧은 구간 예측이다. 접촉, 파지, 삽입, 충돌 직전의 내비게이션.

로봇이 미시 행동을 제안한다. 세계 모델이 단기 결과를 예측하고 확정 전에 제약 위반을 표시한다. 시스템은 불변 조건을 만족할 가능성이 가장 큰 행동을 고른다.

진짜 산업 가치가 일찍 나타나는 곳이 여기다. 공장의 완벽한 디지털 트윈은 필요 없다. 결정이 부서지기 쉬운 곳에서의 믿을 만한 예측이 필요하다.

2단계: 함대 재생과 행동 회귀 테스트가 일상이 된다
로보틱스가 규모를 키우면 배포는 소프트웨어 문제가 된다. 업데이트가 행동을 퇴화시켜서는 안 된다.

함대는 이미 트레이스를 기록한다. 다음 단계는 대표 트레이스를 회귀 테스트로 다루는 것이다. 업데이트 뒤 그것들을 재생하고, 표류를 측정하고, 롤아웃 전에 퇴행을 막는다.

세계 모델은 통제된 반사실을 가능하게 함으로써 이 루프를 강화한다. 기록된 상황이 주어지면 미시 행동을 흔들어 보고 어떤 변형이 제약을 위반하는지 평가한다. 아슬아슬한 순간들이 체계적인 학습 신호가 된다.

실세계 데이터는 여전히 필수다. 시뮬레이션도 여전히 필수다. 세계 모델은 예측 테스트와 더 빠른 반복으로 둘을 묶는 층이 된다.

3단계: 검증 커버리지가 넓어지면 계획도 넓어진다
긴 시간에 걸친 계획은 검증이 단단해지면서 도착한다. 가정보다 창고가 먼저. 보도보다 공장이 먼저. 표류가 측정 가능하고 관리 가능해질수록 롤아웃 구간이 자란다.

게임과의 연결은 여기서 운영의 문제가 된다. 게임은 이미 안정적인 행동 인터페이스, 명시적 제약, 재생, 계측, 적대적 탐색, 회귀 테스트 문화를 갖고 있기에 그 규율을 더 일찍 발전시킨다. 로보틱스는 안전하게 규모를 키우려면 이 패턴들이 필요하기에 이를 물려받는다.

대형 스튜디오에 직접 남기는 메모

대형 게임 회사를 운영하며 기반 모델 전략을 정하고 있다면, 그것을 “최전선 언어 모델을 학습시키기”로 축소하지 마라.

언어는 인터페이스 층으로 남을 것이다. 파트너십, 라이선싱, 파인튜닝을 통해 널리 접근 가능하기도 할 것이다.

당신의 오래가는 우위는 전이(transition)다.

당신은 행동이 결과가 되는 런타임을 소유한다. 행동이 달린 텔레메트리를 소유한다. 재생 인프라를 소유한다. 제약을 정의할 수 있다. 검증기와 회귀 테스트 모음을 갖춘 일급 컴포넌트로 세계 모델을 엔진에 통합할 수 있다.

지렛대가 가장 큰 수는 가장 큰 생성기를 쫓는 것이 아니다. 모델 출력을 실행 가능한 세계로 바꾸는 컴파일 파이프라인을 소유하는 것이다.

언어는 파트너와 하라. 런타임은 소유하라.

언어 모델은 언어를 프로그래밍 가능하게 만들었다.
세계 모델은 환경을 프로그래밍 가능하게 만든다.

그러려면 실행 가능한 의미론, 제약, 지속성, 그리고 업데이트와 예외 상황에 걸쳐 행동을 안정되게 유지하는 운영 장치가 필요하다.

엔진은 이미 그 장치를 제공한다.
그래서 세계 모델은 게임에서 판가름 나고, 그다음 물리 AI로 넘어간다.

슬라이드 링크