피드로 돌아가기
Hacker NewsHacker News
Frontend

Fio가 Radiant와 Hammer에서 영감을 받아 PyQt5와 OpenGL 기반의 경량 3D 월드 에디터/게임 엔진 개발

Show HN: Fio: 3D World editor/game engine – inspired by Radiant and Hammer

2026년 3월 26일5intermediate

Context

기존 상용 3D 에디터들(CryEngine, Radiant, Hammer)은 기능이 풍부하지만 모바일 디바이스(Snapdragon 8CX)에서 실행하기에는 무겁고, 독점 라이선스 제약이 있는 상황이었다.

Technical Solution

  • CSG(구성적 입체 기하학) 기반 브러시 에디터 구현: Radiant와 Worldcraft/Hammer의 리미널 공간 편집 방식 채택
  • 맞춤형 OpenGL/PyGame 렌더러 개발: PyQt5 UI를 통해 즉시 프리뷰 및 재생(drop-in and play) 지원
  • 경량화 설계: OpenGL 3.3 기준, Snapdragon 8CX 호환성 목표로 구현
  • 실시간 라이팅 시스템: 스텐실 섀도우(개발 중) 및 체적 안개, 유리/물 셰이더 포함
  • Entity I/O 시스템 도입: Half-Life 2 방식의 로직, 트리거, 라이트, 스피커 엔티티 연결
  • JSON 레벨 포맷: 매직 넘버 핑거프린트를 통한 레벨 저장/로딩
  • 모듈식 아키텍처: PyQt5, numpy, Pillow, PyOpenGL, pygame, PyGLM 스택 기반

Key Takeaway

데스크톱 3D 에디터의 핵심 기능(CSG 기반 편집, 실시간 렌더링, Entity I/O)을 경량 오픈소스 스택(Python + OpenGL)으로 재구현하면 모바일 디바이스에서도 전문가급 워크플로우를 제공할 수 있다.


3D 게임 에디터를 개발하는 팀에서 Python 기반 프로토타이핑 접근법(PyQt5 UI + PyOpenGL 렌더러 + JSON 직렬화)을 사용하면, C++ 기반 엔진 대비 초기 개발 속도를 높이면서도 경량 런타임 타겟(OpenGL 3.3, 임베디드 CPU)에 배포 가능한 시스템을 구축할 수 있다.

원문 읽기