Fluorite - Flutter와 완전 통합된 콘솔급 게임 엔진
(fluorite.game)- Flutter 및 Dart 생태계를 활용하여 게임 로직을 작성하고, Flutter의 풍부한 UI 툴킷과 통합하여 대화형 경험 구축 가능
- C++로 구현되어 임베디드 하드웨어에서도 높은 성능을 제공하며, ECS(Entity-Component-System) 기반의 데이터 지향 구조를 사용
- Google의 3D 렌더링 엔진인 Filament를 통합, Vulkan API를 활용해 콘솔 수준의 물리 기반 조명과 후처리 효과를 지원
- 3D 아티스트가 Blender에서 직접 터치 트리거 영역을 정의해 상호작용 이벤트를 설정할 수 있음
- Flutter/Dart의 Hot Reload 기능으로 장면 변경을 즉시 반영해 개발 속도를 크게 향상
Fluorite 개요
- Fluorite는 Flutter와 완전 통합된 콘솔급 3D 게임 엔진으로, Dart 언어를 사용해 게임 코드를 작성할 수 있음
-
FluoriteView위젯을 통해 여러 개의 3D 장면 뷰를 동시에 추가 가능 - 게임 엔티티와 UI 위젯 간의 상태를 Flutter 방식으로 공유 가능
-
고성능 ECS 코어
- 엔진의 핵심은 ECS(Entity-Component-System) 구조로, 데이터 지향적 설계를 기반으로 함
- C++로 작성되어 최대 성능과 최적화를 달성
- 저사양 또는 임베디드 하드웨어에서도 원활히 동작
- 게임 로직은 Dart의 고수준 API를 사용해 작성할 수 있어, 다른 엔진에서의 개발 경험을 쉽게 이전 가능
모델 기반 터치 트리거 영역
- 3D 아티스트가 Blender 내에서 직접 클릭 가능한 영역을 정의할 수 있음
- 각 영역은 특정 이벤트를 트리거하도록 설정 가능
- 개발자는 지정된 태그의
onClick이벤트를 수신해 다양한 상호작용 구현 가능
- 이를 통해 공간형 3D UI 제작 과정이 단순화되고, 사용자와 오브젝트 간의 직관적 상호작용이 가능
콘솔급 3D 렌더링
-
Google Filament 렌더러를 기반으로 하며, Vulkan 등 최신 그래픽 API를 활용
- 하드웨어 가속을 통한 고품질 비주얼 구현
- 물리 기반 조명, 후처리 효과, 커스텀 셰이더를 지원
- 이를 통해 콘솔 수준의 시각적으로 풍부한 환경을 제작 가능
Hot Reload 기능
- Flutter/Dart 통합 덕분에 장면의 Hot Reload를 지원
- 코드나 자산 변경 후 몇 프레임 내에 즉시 반영
- 게임 메커닉, 자산, 코드의 빠른 반복 테스트 가능
- 개발 효율을 높이고 신속한 프로토타이핑을 지원
개발사 및 추가 정보
- Toyota Connected North America 가 만든 오픈소스
- FOSDEM 에서 발표했음 Fluorite - console-grade game engine in Flutter
Hacker News 의견들
-
페이지 어디에도 Toyota라는 이름이 없어서 처음엔 혼란스러웠음
하지만 실제로는 Toyota의 자회사가 디스플레이용 3D 소프트웨어를 개발 중인 프로젝트였음
관련 발표가 FOSDEM 2026에서 있었음- 2026년형 RAV4에 이 게임 엔진이 사용된다고 함
요즘은 게임 엔진이 자동차 부품이 되어버린 게 웃김
그냥 단순한 전기차 — 좌석, 바퀴, 페달, 거울, 물리 버튼, AUX 잭만 있는 — 그런 차를 사고 싶음 - 여기서 말하는 콘솔은 게임 콘솔이 아니라 차량의 중앙 콘솔을 의미함
- 2026년형 RAV4에 이 게임 엔진이 사용된다고 함
-
관련 발표는 FOSDEM 2026 세션에서 진행되었음
-
Flutter와 Claude Code의 조합으로 크로스플랫폼 앱 개발 속도가 엄청 빨라졌음
“웹에서는 리스트가 확장되지만 iOS에서는 그렇지 않게 해줘” 같은 프롬프트도 잘 처리함
Claude에게 웹 인스턴스와 iOS 시뮬레이터를 동시에 띄워서 사용성 테스트를 병행함
어젯밤엔 WebSocket을 백엔드에 추가하고, iOS 프론트엔드에 푸시 알림, 웹앱에 배너까지 붙였는데 전부 잘 작동함
가장 큰 문제는 Django/Gunicorn/Amazon Linux 간의 버전 맞추기였음- 코드가 너무 많이 자동 생성되면 버그 수정 시 유지보수는 어떻게 할 계획인지 궁금함
-
나처럼 궁금했던 사람들을 위해 정리하자면, 웹사이트에는 “open”이나 “source”라는 단어가 없음
하지만 FOSDEM 2026 발표에서 “GitHub 저장소를 공개할 때”라는 언급이 있었음
아직은 비공개 상태지만, 향후 공개 가능성을 시사했음 -
Filament는 콘솔급 렌더러가 아님
구조적으로 GL 기반이며, Vulkan을 사용할 수는 있지만 콘솔 엔진 수준으로 최적화되어 있지는 않음- “콘솔급 렌더러”가 구체적으로 무엇을 의미하는지, Filament가 어떤 점이 부족한지 궁금함
- 실제로는 GL이 대부분의 디바이스에서 Vulkan 스타일보다 더 최적화되어 있음
모바일에서 WebGL2와 WebGPU를 비교하면 단순한 PBR 모델 렌더링에서도 큰 차이가 남 - 흥미롭지만 답답한 지적임
정말 콘솔급이 아니라면 이유가 뭔지, 혹은 미래에 가능성이 있는지 알고 싶음 - 의도는 이해함
하지만 좋은 게임을 만드는 데 꼭 콘솔급 렌더러가 필요한 건 아님
GL 기반 게임도 여전히 실용적이며, Google이 렌더러 백엔드를 잘 분리해놔서 다른 GPU API로의 확장은 어렵지 않음
-
기존 솔루션을 좀 더 폭넓게 살펴봤다면, 예를 들어 Defold 같은 경량 3D 엔진도 있었을 것 같음
그래도 Toyota가 이런 프로젝트를 진행한 건 멋짐
진짜 성과는 Toyota가 새로운 니치 게임 엔진을 만들도록 팀을 고용했다는 점일지도 모름- 이 엔진은 Flutter 앱에 직접 임베드되도록 설계되었음
GPU 및 렌더러와의 상호작용이 특수해서 Unity 같은 기존 엔진도 이미 시도했지만 맞지 않았음 - Flutter로 UI를 만드는 경험은 어떤 게임 엔진보다 훨씬 수월함
이미 완성도 높은 위젯 기반 UI 시스템을 활용할 수 있기 때문임
- 이 엔진은 Flutter 앱에 직접 임베드되도록 설계되었음
-
프로젝트가 꽤 멋져 보임
Flutter는 여전히 내가 작은 앱 개발용으로 선호하는 도구이고, 대기업이 이를 채택하는 걸 보니 반가움
Toyota가 계속 추진한다면 Google 대신 주요 후원사가 될 수도 있을 것 같음 -
혹시 이 엔진이 브라우저에서도 실행되는지 궁금함
왜 데모가 없는지도 의문임- Filament는 웹 타깃을 지원함
하지만 임베디드 시스템을 목표로 한다면 공개 웹 데모는 우선순위가 낮을 수 있음
프로젝트 대부분이 C++로 되어 있다면, 웹 데모를 만들려면 WASM 빌드 과정이 필요함
“README용 데모”보다는 실제 사용 목적에 집중한 듯함 - Q&A 세션에서 누군가 같은 질문을 했고, “현재는 아니지만 GitHub 이슈에서 논의는 가능하다”고 답했음
- Filament는 웹 타깃을 지원함
-
“console-grade”라는 표현은 과장임
여기서 말하는 콘솔은 Xbox가 아니라 차량의 센터 콘솔을 뜻함 -
흥미로운 접근임
보통 게임 엔진의 UI 툴킷은 형편없는데, 이들은 반대로 좋은 UI 툴킷(Flutter) 에서 출발해 게임 성능을 확보했음
자세한 내용은 Reddit 스레드에서도 볼 수 있음- Qt Quick 3D도 비슷한 가치 제안을 가지고 있음
3D 슈팅 데모도 있어서 꽤 흥미로움
- Qt Quick 3D도 비슷한 가치 제안을 가지고 있음