티스토리 뷰

VR 개발을 진행 하다보면 레벨 전환시에  HMD 에 렌더링되면 게임 화면이  기기의 연결화면으로 전환이 되었다가 다시 게임 화면으로 전환 되는 경우를 볼 수 가 있다.


문제의 원인은 엔진에서 렌더링 처리가 오래 걸리게 되면 VR에서 자동으로 화면을 바꾸어 버리기 때문에 발생을 하게 되는 현상인데

이는 장시간 화면이 갱신되지 않는 상황은 사용자 경험을 해칠 수 있기 때문에 VR이 제어를 하게 되는 것이다.


이 문제의 해결한 방법으로는 먼저 프로젝트 세팅에서 비동기 로드를 이용한다.

   * 프로젝트 세팅 -> 엔진 -> Streaming -> Package Streaming -> Async Loading Thread Enabled  를 True 로 설정

   * Event Driven Loader 도  Enable 시키면 성능 효과를 볼 수 있는데   

     Async Loading Thread Enabled 와 Event Driven Loader 의 on/off 조합에 따라 

     최적의 성능이 달라질 수 도 있으니 테스트를 통해 최적의 세팅을 찾도록 한다. 


빠른 레벨전환을 위해 레벨전환은 LoadLevel 이 아닌 StreamingLevel 로 레벨을 로드한다.

   * Persistent  Level 은 가볍게 만들어 두어서 레벨을 빠르게 전환시키고 

     서브레벨들을 작게 만들어 스트리밍 로드가 되도록 만들어 로딩 시간을 단축 시킨다.



위와 같이 진행하여도 에디터에서 테스트 할 경우에는 기존과 같이 HMD 렌더링 화면을 볼 수가 있다.

아무래도 에디터에서의 테스트다보니 디버깅이나 여러 추가적인 요소들이 로딩 시간에 영향을 주다보니 그럴 수 있으니

빌드(쉬핑 빌드)를 하여 실행해보면 로딩시간이 현저히 줄어드니 화면이 잘 전환 되는 것 을 볼 수 있다.






공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/11   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
글 보관함