RealityKit과 SwiftUI로 구현한 iPad 물류 디오라마 게임의 구조
Architecture deep dive: Simulating tactile 3D logistics dioramas with RealityKit and SwiftUI in an open-source iPad game
핵심 요약
- Waybill은 RealityKit과 SwiftUI를 사용해 물류 관리 게임의 진행 구조를 iPadOS의 미니어처 3D 디오라마로 표현한다.
- 차량과 선박은 속도·질량·제동 곡선·충돌 범위를 따르는 물리 엔티티로 구현되며, 정체와 하역 과정이 화면에 나타난다.
- 게임 경제는 Python 시뮬레이션으로 사전 모델링했으며, Waybill의 소스 코드는 MIT 라이선스로 공개됐다.
도입
Waybill은 공급망 물류의 진행 구조를 미니어처 3D 디오라마로 구현한 iPadOS 게임이다. 개발자는 RealityKit을 렌더링과 물리 표현에 사용하고, RealityView를 통해 SwiftUI 제어 패널을 3D 모델 위에 결합했다. 게임은 다섯 지역을 거치며 각기 다른 운송 수단과 물류 제약을 다룬다.
상세 요약
RealityKit과 SwiftUI의 결합
Waybill은 iPadOS에서 물류 관리 게임을 3D 디오라마 형태로 표현한다. 개발자는 Apple 플랫폼에서 RealityKit을 선택했다. 원문은 M 시리즈 칩을 탑재한 iPad Pro와 iPad Air에서 Metal 렌더링을 활용하고, 공간 오디오와 동적 조명을 지원한다고 설명한다. SwiftUI와는 RealityView를 통해 연결한다. 이를 사용해 선언형 SwiftUI 제어 패널을 작동 중인 3D 모델 위에 배치한다.
다섯 지역과 운송 과제
게임의 진행은 서로 다른 지형과 물류 조건을 가진 다섯 지역으로 구성된다.
- Riverside: 지역 박스 트럭 배송과 네 단계의 기본 물류 체인을 다룬다.
- Harbour City: 화물선, 접안 시간, 자동 부두 크레인을 포함한 복합 운송 일정을 다룬다.
- Granite Pass: 현수교와 산악 터널을 통과하는 중량 화물 철도망을 다룬다.
- Metro: 자율 배송 밴과 eVTOL 에어택시 노선을 사용하는 고밀도 도시 배차를 다룬다.
- Orbit: 로켓 단계 분리, 궤도 화물 발사, 부스터 착륙 원격 측정을 다룬다.
물류 흐름은 공급원에서 처리 허브, 선박이나 열차를 이용한 복합 운송을 거쳐 시장 목적지로 이어진다. 공급원에는 광업과 농업, 처리 허브에는 제조가 예시로 제시된다.
물리 기반 차량과 스케줄링
차량은 미리 렌더링된 애니메이션이 아니라 속도, 질량, 제동 곡선, 충돌 범위를 따르는 물리 엔티티다. Harbour City에 화물선이 접안하면 부두 크레인이 역운동학 경로를 계산해 컨테이너를 대기 중인 트럭 구역으로 옮긴다. 도로에서 병목이 생기면 트럭이 실제 장면 안에서 줄을 선다. 이 대기열은 물류 흐름의 비효율을 시각적으로 보여준다.
게임 경제의 사전 모델링
개발자는 게임 코드 작성에 앞서 balance.py를 사용해 전체 경제를 Python으로 모델링했다. 시뮬레이션은 진행 곡선, 현금 흐름의 속도, 업그레이드 비용을 대상으로 했다. 목표 플레이 기간은 자연스러운 진행 기준 약 2주 반이다. 그 기준은 하루 세 번의 짧은 플레이 세션과 세션 사이의 방치 누적을 포함한다.
Waybill은 MIT 라이선스의 오픈소스 프로젝트로 공개됐다.
결론
Waybill의 구현은 3D 장면, 물리 기반 차량 동작, 지역별 물류 조건, 게임 경제 모델링으로 구성된다. 차량의 대기열과 선박 하역은 물류 병목을 장면에 드러내고, Python 시뮬레이션은 진행 곡선과 현금 흐름, 업그레이드 비용을 게임 코드 작성 전에 검토하는 데 사용됐다. 프로젝트는 MIT 라이선스로 공개됐다.