본문으로 건너뛰기

Transformer 안에서 실행되는 Doom 렌더러

Doom 렌더링 알고리즘을 Transformer 가중치로 컴파일해 B200에서 하루 35프레임을 생성한 프로젝트입니다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

이 프로젝트는 Doom의 렌더링 알고리즘을 직접 만든 compiler로 계산 그래프에서 Transformer 가중치로 변환해, 모델 학습 없이 Transformer 내부에서 실행합니다. 장면 데이터를 prompt로 넣으면 모델이 커서 이동과 픽셀 그리기 명령을 토큰으로 생성하고, 43줄의 Python host program이 이를 적용해 E1M1 프레임을 복원합니다. 한 프레임에는 3,614토큰 입력과 53,747토큰 출력이 필요해 B200에서도 40분이 조금 넘게 걸리며, 성능은 원본 Doom의 35 FPS와 대비되는 35 FPD입니다.

섹션별 상세

01
작성자는 Doom의 렌더링 알고리즘을 Transformer 내부에서 실행하도록 옮겼으며, 일반적인 모델 학습 대신 직접 만든 compiler를 사용했습니다. compiler는 계산 그래프를 Transformer 가중치로 변환하고, Doom 알고리즘은 이 변환이 가능한 그래프로 다시 작성됩니다. 따라서 체크포인트는 별도 trust_remote_code 없이 Hugging Face에서 표준 Transformers 체크포인트로 로드됩니다.
02
입력은 장면 데이터를 나타내는 prompt이고, 생성 결과는 커서 이동과 픽셀 그리기 같은 단순한 렌더링 명령을 담은 토큰열입니다. 모델이 종료될 때까지 토큰을 생성한 뒤 host program이 명령을 기계적으로 적용하면 렌더링 프레임이 만들어집니다. 전체 체크포인트 로드와 생성, 출력 파싱에 필요한 Python host code는 43줄이며, 계산 그래프를 정의하는 Python 코드는 Transformer 자체로 컴파일됩니다.
03
이 구현은 기능적으로 Doom의 유명한 E1M1 프레임을 생성하지만 실행 속도는 원본 게임과 크게 다릅니다. 한 프레임에 3,614토큰 prompt와 53,747개의 생성 토큰이 필요하고, B200에서 렌더링 한 장에 40분이 조금 넘게 걸립니다. 원본 Doom이 486에서 35 FPS를 기록한 반면 이 구현은 B200에서 35 FPD에 해당합니다.

용어 해설

계산 그래프(Computation Graph)
계산 그래프는 연산을 노드로, 데이터 흐름을 연결선으로 표현한 구조입니다. 이 프로젝트에서는 Doom 렌더링 알고리즘을 그래프로 작성한 뒤 compiler가 각 연산을 Transformer의 가중치로 변환하는 중간 표현으로 사용됩니다.
Transformer 체크포인트(Transformer Checkpoint)
Transformer 체크포인트는 모델의 구조와 학습 가중치를 저장한 파일 묶음입니다. 여기서는 학습으로 얻은 가중치가 아니라 계산 그래프를 변환해 생성한 가중치를 저장하며, Hugging Face의 표준 Transformers 형식으로 불러올 수 있습니다.
픽셀 그리기 명령(Pixel Drawing Command)
픽셀 그리기 명령은 커서를 이동하거나 특정 픽셀을 그리는 동작을 토큰으로 표현한 출력입니다. Transformer가 생성한 토큰열을 host program이 순서대로 해석하고 적용하면 Doom의 한 프레임이 화면에 재구성됩니다.

언급된 도구

Hugging Face중립링크

생성된 표준 Transformers 체크포인트를 로드하고 가중치를 호스팅하는 플랫폼입니다.

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 15.수집 2026. 08. 15.출처 타입 REDDIT

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.