애플이 직접 Godot 엔진에 visionOS 플랫폼 네이티브 지원 준비중

2 weeks ago 11

  • Apple의 visionOS 팀이 Godot 엔진에 Vision Pro 지원을 추가하고자 하는 첫 PR 제출
  • 초기 목표는 기존 Godot 게임의 visionOS 네이티브 실행 및 몰입형 콘텐츠 제작 지원
  • iOS 기반으로 visionOS 플랫폼을 구현하고 코드 재사용성과 구조화된 PR 전략을 강조
  • iOS/visionOS 관련 기능 테스트 완료, 하지만 일부 기능은 커뮤니티의 도움 필요
  • 향후 PR에서 SwiftUI 및 VR Plugin 추가 예정, 몰입형 경험 확장을 위한 기반 마련

Vision Pro 지원을 위한 첫 기여 PR 개요

  • Apple의 visionOS 엔지니어링 팀이 Godot 커뮤니티와 협업하여 Vision Pro를 지원하고자 함
  • 높은 품질 기준을 유지하며 Godot의 코딩 스타일을 따름
  • 기능별로 작고 독립적인 PR로 나누어 제출하고 있으며, 이 PR은 그 첫 번째임
  • 이후 PR을 통해 Swift 및 몰입형 VR 기능도 순차적으로 제공 예정

기여 목표

  • 현재 Godot 게임을 visionOS의 평면 윈도우에서 네이티브 실행 가능하도록 지원
  • 새로운 visionOS VR Plugin을 통해 몰입형 콘텐츠 제작 기능 제공
  • 총 세 단계로 기여 계획을 세움
    • visionOS 플랫폼 추가 (현재 PR)
    • SwiftUI 앱 라이프사이클 및 Swift 컴파일/링크 기능 추가 (예정)
    • Vision Pro VR 플러그인 추가 (예정)

기술적 구현 사항

  • visionOS 플랫폼은 iOS 기반으로 구현되어 코드 중복 최소화
  • drivers/apple_embedded 폴더를 새로 만들어 iOS와 visionOS 간의 공통 코드 저장
  • 각 플랫폼은 고유한 세부 기능만 제공하는 서브클래스를 통해 차별화
  • OpenGL 미지원 (visionOS 자체가 OpenGL을 지원하지 않음)
  • PR은 검토를 쉽게 하기 위해 여러 커밋으로 나누어 제출

문서화 관련 고려사항

  • iOS와 visionOS의 내보내기 플러그인 및 설정 대부분이 공통
  • EditorExportPlatformIOS.xml 파일을 EditorExportPlatformAppleEmbedded.xml로 이름 변경하고 위치 이동
  • 문서화 도구 관점에서 적절한지 여부 및 플랫폼별 문서 분리 방법에 대한 커뮤니티 피드백 요청

테스트 진행 사항

  • Platformer 데모 프로젝트로 테스트 진행
  • iOS와 visionOS 양쪽에서 Metal 렌더링 드라이버 기반으로 Mobile/Forward+ 렌더러 테스트 완료
  • iOS 지원 유지됨과 동시에 visionOS에서도 성공적으로 실행됨

커뮤니티에 요청하는 사항

  • iOS/visionOS 템플릿에서 플러그인 임베딩 및 링크 기능이 잘 작동하는지 테스트 필요
  • IPA 생성 및 One-Click-Deploy 기능이 작동하지 않음 — 원인 분석 및 작동 여부 확인 요청
  • ios_deploy를 통한 직접 배포 기능도 테스트 필요 — 사용자가 줄었다면 코드 제거 가능

미구현 기능

  • DPI 정보가 현재 하드코딩됨 — SwiftUI 통합 시 API를 통해 런타임 변경 정보 반영 예정
  • visionOS용 아이콘 에셋 카탈로그 자동 생성 기능 미구현
    • Xcode 프로젝트 내 수동 생성으로 대체 가능
    • 커뮤니티 기여 가능 시 매우 환영
  • visionOS 플랫폼 SVG 로고가 텍스트 기반 — 시각적으로 보기 좋은 아이콘 기여 요청

Read Entire Article