GDScript와 Vulkan 컴퓨트 셰이더만 사용해서 Godot 내에서 Gemma 4를 구동해 봤습니다
I got Gemma 4 running directly inside Godot using only GDScript and Vulkan compute shaders
핵심 요약
외부 라이브러리 없이 Godot 엔진 자체 기능만으로 LLM을 구동하는 실험적 프로젝트입니다.
- 순수 GDScript 구현 — 외부 확장 프로그램이나 Python 없이 엔진 내부에서 LLM 구동함
- Vulkan 셰이더 활용 — 모델 연산을 GPU 컴퓨트 셰이더로 처리하여 엔진 내재화함
- 실험적 성격 — llama.cpp 대비 10배 느리지만 기술적 가능성을 증명함
- 오픈 소스 공개 — GitHub를 통해 관련 코드와 프로젝트를 공유함
llama.cpp, Python, 서버, GDExtension 없이 Godot 안에서 LLM을 돌릴 수 있는지 확인해 보고 싶었습니다.
성공했습니다. 이 Godot 4.7 프로젝트는 gemma-4-E2B-it-Q4_K_M.gguf 모델을 로컬에서 구동합니다. 모델 연산은 Vulkan 컴퓨트 셰이더에서 실행되며, GDScript는 GGUF 로딩, 토큰화, 샘플링, KV 캐시, 그리고 채팅 UI를 담당합니다.
이건 단지 실험일 뿐입니다. 현재 이 모델 하나만 지원하며, CUDA를 사용하는 llama.cpp보다 약 10배 정도 느립니다. 그래도 Godot만 사용해서 이런 게 가능하다는 사실이 흥미로웠습니다.

