Epic Games Share Insights: Optimizing ‘Showdown’ for 90 FPS on Oculus Rift Crescent Bay Prototype 번역

Showdown 최적화

(Epic Games Share Insights: Optimizing ‘Showdown’ for 90 FPS on Oculus Rift Crescent Bay Prototype)

원문 링크

 

전세계에서 VR에 대한 이야기를 나누기위해 VR 전문가와 개발자가 9월에 열린 오큘러스 커넥트에 모였습니다. 그 들 중에는 언리얼 엔진을 개발한 에픽 게임즈의 개발자들도 있었습니다. 이들은 오큘러스 리프트 크레센트 베이 프로토타입에서 시각적으로 아주 멋진 Showdown 데모를 90FPS로 실행하기 위한 여러 도전과제들과 해결 방법에 대해 공유했습니다.

UE4의 VR 리드 프로그래머이자 비주얼 스크립트를 작성하는 Nick Whiting과 에픽 게임즈의 시니어 디자이너인 Nick Donaldson은 개발자들로 가득한 청중들과 언리얼 엔진 4(UE4)에 대한 내용과 오큘러스 리프트를 연동하는 주제에 대해 이야기를 하기 위해 오큘러스 커넥트의 무대에 올랐습니다. 두 사람은 발표 중간에 UE4에서 제작된 고화질 데모인 Showdown 을 최적화하는 과정에 대해 자세히 설명했습니다. 5명으로 구성된 팀은 단일 Nvidia GTX980 GPU에서 오큘러스 리프트 크레센트 베이 프로토타입에서 실행시키기위해 성능을 90FTS까지 끌어올리는데 성공했습니다.

참조: Optimizing Games for VR Is About Finding Creative Solutions – Darknet Developer Shares His Insights

      

Whiting은 하드웨어 진행에서 오큘러스 리프트의 가장 큰 단계를 수반하는 언리얼 엔진 데모에 대해 자세히 설명하는 세션을 열었습니다. 첫번째는 E3 2013에서 발표했던 오큘러스 리프트 HD 프로토타입을 위해 만들었던 에픽의 Elemental tech 데모의 VR 버전입니다. 2014년에 열린 CES에서 에픽은 Elemental과 Strategy 게임 데모를 결합해 오큘러스 리프트 크리스탈 코브 프로토타입의 위치 추적 기능의 시연이 가능한 StrategyVR을 제작했습니다. 2014년에 열린 GDC에서 에픽과 오큘러스는 오큘러스 리프트 DK2용으로 제작된 Couch Knights를 공개했습니다. Couch Knights는 인형과 비슷하게 생긴 캐릭터를 두 명의 사용자가 조작해 서로 대결하는 2인용 데모입니다.

참조: New Oculus Render Tech Cuts Entry Level VR PC Costs to $499

   

   

가장 최근에 에픽은 Infiltrator와 Samaritan 데모의 애샛을 사용해 오큘러스 리프트 크레센트 베이 프로토타입에서 90FPS으로 실행될 수 있도록 최적화를 진행해야만 했던 매우 인상적인 고품질의 경험을 제공하는 Showdown을 제작했습니다. 오큘러스 커넥트에서 개인적으로 오큘러스 리프트 크레센트 베이 프로토타입을 사용해볼 수 있었던 행운을 잡았는데, Showdown 데모는 아주 긍정적인 반응으로 가득했습니다. 다음은 개인적으로 적었던 견해에 대한 내용입니다.

에픽 게임즈에서 UE4로 제작한 Showdown에 대한 10분 남짓한 세션이 마무리되었다. Showdown은 슬로우 모션 액션 씬이 펼쳐지는 도시의 거리 한 복판으로 나를 내몰았다. 미래의 군대처럼 보이는 군인들이 나와 함께 무기를 발사하고 있었다. 발사된 로켓은 그 주변에 아주 자세하게 모샤된 화염과 연기로 가득했다. 군인들은 외계인의 기술로 만들어진것과 같이 생긴 로봇을 향해 총을 발사하고 있었다. 총알이 땅에 부딪힐 때마다 내 얼굴에 파편이 날아들었다. Showdown을 체험하는 내내 로봇을 향해 앞으로 천천히 전진했다. 더 가까이 접근했을 때 내 왼쪽에서  로켓이 날라와 자동차를 내 머리 위로 날려버렸다. 마지막에 로봇은 몸을 기댄채 내 얼굴을 향해 포효했다. Showdown 데모는 내가 진짜 거기에 있다는 느낌을 주지는 못했지만 엄청나게 멋졌다(fucking cool). 그리고 내가 이 사이트에서 이 단어(Fucking Cool)를 처음으로 쓰게 했다. 이런 경험이 더 풍부한 이야기로 발전하는 그 순간이 빨리 오기를 기대한다.

참조: First Hands-on – Oculus Rift Crescent Bay is Incredible

에픽에 Showdown 데모가 언제 공개되는지 물었습니다. 그들도 빨리 공개하고 싶다고 했지만, 정확한 일정은 정해지지 않았다고 했습니다.

참조: VR-optimized Forward Renderer Comes to Unreal Engine 4.14, Said to Be 22% Faster

 

Optimizing Showdown for 90 FPS

VR을 위한 개발은 일반적인 평면 스크린 게임을 개발하는 것보다 훨씬 더 까다롭습니다. 입체 3D 화면에 게임을 렌더링해야할 뿐만 아니라 VR 게임을 편안하게 즐길 수 있으려면 아주 높은 프레임 속도가 필요하기 때문입니다. 오큘러스 리프트 DK1의 경우 FPS의 목표치는 60 프레임이었습니다. DK2의 경우 이 목표치는 75로 상승했습니다. 최신 오큘러스 리프트 크레센트 베이 프로토타입을 사용하는 경우 이상적인 프레임 속도는 무려 90FPS입니다! 이를 위해서는 개발자가 보다 신중하게 최적화를 진행해야 하며, 종종 부하가 매우 큰 효과를 좀 더 효율적인 기술을 활용해 다시 제작해야하는 창의 적인 문제 해결을 요구하기도 합니다.

Showdown 최적화에 대한 Donaldson의 세션은 17:48에 시작됩니다.
프레젠테이션 파일은 여기에서 확인할 수 있습니다.

 

최적화를 “어두운 마법”이라고 농담한 Whiting은 세션의 17:48 쯤에 Donaldson에게 무대를 넘깁니다.

Donaldson은 GDC 2014에서 오큘러스 리프트 DK2용으로 에픽이 제작한 최종 데모를 언급하면서 “Couch Knight는 75Hz로 실행되는 경우가 거의 없었습니다”라고 말했습니다. “VR을 위한 액션으로 가득한 장면을 제작하고 이를 90FPS에서 실행시키는” 작업은 만만치 않은 작업이었습니다.

Donaldson은 Showdown이 5명으로 구성된 팀에서 단 5주만에 완성됐다고 말합니다. 물론 그들은 다른 데모를 위해 제작된 애샛을 빌려 사용했지만, Donaldson은 90FPS의 씬을 제작하기 위해 최적화 과정에서 결국 거의 모든 애샛을 다시 수정해야 했다고 말했습니다.

Donaldson은 최적화에 관해 개발자들에게 “처음부터 어려움에 직면하라”고 조언합니다. 프레임속도를 저하시키는 원인이 무엇인지 알아내야 합니다. UE4에 내장된 도구가 특히 이부분에서 유용하게 사용될 수 있습니다.

“CPU 프로파일링 툴은 정말 보석과도 같습니다. 이 도구는 매우 훌륭한데 아무도 이 도구에 대해 잘 알지 못합니다. CPU 프로파일링을 사용하면 씬을 캡쳐해서 드로우-콜 수준까지 확인해 어떤 요인 때문에 프레임 속도가 소비되고 있는지 확인이 가능합니다.”라고 Donaldson은 말했습니다. GPU 프로파일러 또한 매우 유용하지만, 병목 현상이 어디인지를 이해하는 것이 매우 중요하기 때문에 속도를 저하시키는 주요 원인이 CPU인 경우에 GPU를 최적화하는데 모든 시간을 할애할 필요는 없습니다.

참조: On the Hunt for VR’s Killer App with Epic Games’ Technical Director of VR & AR, Nick Whiting

개발자들이 저렴한 비용으로 실행이 가능한 이펙트를 제작하기 위해 사용했던 기존의 방법 중 일부는 VR에서 크게 효과적이지 않은 경우가 있습니다.

Donaldson은 “지난 몇 년 간 사용했던 그래픽 렌더링의 전체 시각적 언어가 더이상 동작하지 않기 때문에 실제 모델링에서 다시 제작해야 합니다”라고 말합니다. 그는 “창조적인 문제 해결”이 최적화의 핵심이라고 말합니다.

세션 마지막 부분에서 Donaldson은 UE4에 대한 .ini 렌더링 설정 목록을 공유했습니다. 그는 “언리얼은 ‘상당히 나쁜’ 설정을 기본적으로 사용하는 경향이 있는데,” 라고 언급하면서, 이는 최고의 성능을 원하는 경우에 반드시 필요하지는 않다고 말합니다.

r.X 설정에 대해 r.SettingName을 입력할 수 있냐고 물어보면서 이 설정들이 (게임 내에서) 어떤 역할을 하는지에 대한 설명을 제공하기 때문에 엔진을 더 잘 이해하기 위해 이 내용을 살펴볼 가치가 있다고” Donaldson은 말했습니다.

Donaldson은 개발자가 성능 및 프로파일링 문저 페이지를 확인하고 UE4의 최적화 도구를 사용할 것을 권장합니다.

에픽은 오큘러스 리프트 개발을 위한 여러 기능을 엔진에 적극적으로 도입해오고 있으며 이렇게 최적화된 UE4는 분명 VR 개발자에게 많은 도움이 될 것입니다. 최적화의 “어두운 마법”을 배우는 것은 삼성 Gear VR에서 게임 및 컨텐츠를 제작하려는 분들에게 특히 중요합니다.

 

RonnieJ

프리랜서 IT강사로 활동하고 있습니다. 게임 개발, C++/C#, 1인 기업에 관심이 많습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Please turn AdBlock off

Notice for AdBlock users

Please turn AdBlock off