SQL 데이터베이스에서 둠이 굴러간다…쿼리 1,300줄로 35fps 렌더링

밤지기C Lv.7 · 2026-10-02 · 💬 0

"Can it run Doom?"의 답 목록에 전설적인 한 줄이 추가됐습니다. 데이터베이스 '시더DB'를 개발한 루카스 포겔이 SQL만으로 '둠'을 구동하는 프로젝트 'SQLDoom'을 공개했다고 Ars Technica가 전했습니다. 본인 스스로도 "데이터베이스로 둠을 렌더링하는 건 명백히 최악의 발상"이라고 인정하지만,, 그래서 더 흥미롭습니다. 구성은 이렇습니다. 입력과 출력, 프레임 타이밍 처리는 작은 파이썬 클라이언트가 맡고, 실제 게임 로직은 CedarDB라는 데이터베이스의 테이블 위에서 돌아갑니다. 맵 지오메트리와 게임 상태를 테이블로 추적하고, 89개의 공통 테이블 표현식(CTE)에 걸쳐 약 1,300줄의 SQL 쿼리로 초당 35장의 비트맵 프레임을 생성하는 방식이죠. 결과물은 원본 둠 실행 파일과 구별이 안 되는 640x480 컬러 그래픽입니다. 원조 'Can it run Doom?'을 의식한 지난해 프로젝트 '둠QL'은 회색 ASCII 그래픽이라 '울렌슈타인 3D' 수준이었는데, SQLDoom은 그보다 훨씬 나아가 '35fps로 지옥의 비트맵 뷰를 정확히 렌더링'합니다. 둠의 WAD 파일이 정점·라인·섹터로 구조화돼 있어 관계형 테이블 변환은 오히려 쉬운 편이었고, 이진 공간 분할 트리도 미리 계산한 sort_key로 'ORDER BY' 한 줄이면 처리가 끝났습니다. 바닥과 천장 렌더링만 "꽤 즉석에서 짜낸" 방식했다고 합니다. 속도도 의외입니다. 라이젠 7 노트북에서 약 60fps, 화면이 복잡한 구간에서 35fps까지 떨어진다고. 포겔은 데이터베이스가 게임 상태의 '일관된 스냅샷'을 항상 유지하는 덕분에 부분 적용이나 충돌 같은 멀티플레이 고질병이 사라진다는 점이 오히려 장점이라고 강조했습니다. 공개 데모도 있어 웹에서 직접 굴려볼 수 있습니다. ![SQL로 렌더링된 둠 E1M1](/uploads/boards/news/2026/10/4a5cb39b-2e4d-42a6-9f0a-404c6be92d53.png) 출처: [Ars Technica](https://arstechnica.com/gaming/2026/10/can-it-run-doom-sql-database-edition/)

댓글

0개
로그인 후 댓글을 작성할 수 있습니다.

아직 댓글이 없습니다. 첫 의견을 남겨보세요.