포트나이트 배틀로얄 챕터 4에서 실전 검증을 거친 언리얼 엔진 5.1의 신기능

2023년 1월 26일
12월 초 포트나이트 배틀로얄 챕터 4 시즌 1이 출시되자 플레이어들은 크게 발전한 비주얼 퀄리티와 디테일을 단번에 알아볼 수 있었습니다. 언리얼 엔진 5.1을 통해 루멘, 나나이트, 버추얼 섀도 맵, 템포럴 슈퍼 해상도 등 언리얼 엔진 5의 가장 혁신적인 최신 기능을 게임의 최신 챕터에 활용했으니 이는 당연한 일입니다.

포트나이트 배틀로얄 챕터 4는 에픽게임즈가 라이브 게임 개발이라는 중압감 속에서 자사의 신규 기능을 실전 검증을 통해 '직접 시험해 보겠다'는 결심을 보여주는 훌륭한 예시입니다. 이 결단은 언리얼 엔진 5.0에 도입된 혁신 기능들의 발전을 이끌었고 포트나이트 팀은 이렇게 향상된 기술을 게임에 활용하였습니다.

언리얼 엔진 5 기능은 이전에도 매트릭스 어웨이큰스: 언리얼 엔진 5 익스피어리언스에서 테스트를 거치면서 최신 세대 콘솔에서 30fps로 사실적인 도시의 모습을 선보인 바 있습니다. 이번 포트나이트 배틀로얄 챕터 4에서 팀은 새로운 난관을 마주하였습니다. 바로 모든 플랫폼에서 게임을 60fps로 실행하는 동시에 스타일라이즈드 그래픽과 디테일한 폴리지, 밤낮의 순환 등 오늘날의 플레이어들이 기대하는 수준의 퀄리티를 거대하고 역동적이며 건설과 파괴과 모두 가능한 오픈 월드에 전부 구현해야 한다는 것이었습니다.

이번 블로그에서는 챕터 4에 적용되어 검증을 거친 몇 가지 기능을 살펴보겠습니다. 또한 루멘, 나나이트, 버추얼 섀도 맵의 향상점을 더욱 자세히 알아보는 심층 분석 글의 링크도 포함되어 있으며, 이번 포트나이트 배틀로얄 챕터 4 작업을 통해 얻은 교훈도 알아봅니다. 이는 여러분이 언리얼 엔진 5로 더욱 디테일하고 빠른 오픈 월드 게임을 제작하는 데 도움이 될 것입니다.

루멘

루멘은 언리얼 엔진 5에 도입된 신규 리얼타임 글로벌 일루미네이션 및 리플렉션 솔루션입니다. 루멘은 하드웨어와 소프트웨어 레이 트레이싱을 모두 사용하여 직접광 및 지오메트리에 역동적으로 반응하는 사실적인 간접 바운스 라이팅, 리플렉션과 섀도를 제공합니다. 루멘 덕분에 가능해진 예시를 일부 들어 보자면, 파란색 벽은 이제 근처 오브젝트와 캐릭터 모두에게 파란색 색조로 힌트를 제공하고, 창문 하나를 통해 골든 아워의 햇빛이 들어오면 로컬 라이트 없이도 집안 전체를 밝힐 수 있으며, 외부 출입문이 열려 있다면 방 안으로 라이트가 들어옵니다.

포트나이트 배틀로얄 챕터 4에서는 언리얼 엔진 5.1의 루멘을 상당 부분 더욱 향상시켰습니다. 시스템 전체를 최적화하여 루멘을 지원하는 플랫폼상에서 60fps를 달성할 뿐 아니라 간접광과 리플렉션의 퀄리티를 상당히 향상시킬 수 있었습니다.

포트나이트 월드에는 나무와 잔디가 가득하기 때문에, 이러한 환경에서 루멘의 간접광 퀄리티 향상을 시험하기 위한 이상적인 바탕이 되었습니다.

언리얼 엔진 5.1에서 이루어진 루멘의 모든 향상점은 이 블로그에서 더욱 심도 있게 알아볼 수 있습니다.

나나이트

나나이트는 아티스트와 디자이너들이 버추얼 월드를 제작하는 방식에 혁신을 가져왔으며, 지오메트리 디테일의 수준을 한층 높이는 동시에 그 제작 과정도 간소화시켰습니다. 아티스트는 더 이상 주어진 오브젝트에서 최고의 비주얼 퀄리티와 퍼포먼스를 내고자 메시 LOD나 적정 폴리곤 수에 신경 쓸 필요가 없습니다.

언리얼 엔진 5.0에서 나나이트는 불투명 리지드 지오메트리에 아주 잘 작동했으며, 포트나이트 는 이를 도시 환경에 십분 활용했습니다. 벽돌, 나무, 창틀은 전부 카메라가 아무리 가까이 다가가더라도 디테일을 보여줄 수 있도록 모델링되었습니다.

언리얼 엔진 5.1부터 나나이트가 월드 포지션 오프셋과 마스크드 머티리얼을 지원하여 포트나이트 아티스트들은 대단히 디테일하게 애니메이팅된 나무와 폴리지에 나나이트를 활용할 수 있게 되었습니다. 나뭇잎과 잔디 이파리는 전부 바람에 따라 자연스럽게 움직이도록 모델링된 지오메트리입니다. 또한 나나이트가 폴리지에 대해 지오메트리 간소화를 처리하는 방식에도 새로운 방식을 도입하여, 렌더링 거리에 상관없이 대상의 중요하고 풍성한 디테일을 전부 유지할 수 있게 하였습니다.

언리얼 엔진 5.1 나나이트의 모든 향상점에 대해서는 해당 내용을 전문적으로 다룬 블로그에서 심도 있게 확인할 수 있습니다.

버추얼 섀도 맵

버추얼 섀도 맵(Virtual Shadow Map, VSM)은 나나이트와 함께 조화를 이루어 아티스트들이 포트나이트 배틀로얄 챕터 4에 추가한 섬세한 지오메트릭 디테일을 빠짐없이 보여 줍니다. 기존의 캐스케이드 섀도 맵과 비교했을 때 VSM은 오브젝트가 플레이어 눈앞에 있든, 지평선 즈음에 있든, 거의 픽셀 단위로 정확한 수준의 섀도 디테일을 제공한다는 가장 큰 장점을 가집니다.

새로운 포트나이트 지오메트리는 폴리지 및 역동적인 하루의 시간 변화 시스템에 변화를 가져왔기 때문에 기존의 섀도 캐싱 방식에 의존할 수 없었습니다. 이에 따라 두 요소와 잘 호환이 되면서 60fps 예산을 맞출 수 있도록 VSM을 보강해야 하는 과제가 주어졌습니다.

포트나이트는 이제 인테리어에서 램프나 천장 라이트처럼 소형 로컬 라이트도 다수 사용합니다. VSM 캐싱은 이런 용도에 매우 잘 어울립니다. 이처럼 로컬 라이트의 높은 사용성 덕분에 언리얼 엔진 5.1에서는 VSM의 퍼포먼스를 더욱 향상할 수 있는 기회가 생겼습니다. '원 패스 프로젝션' 옵션으로 많은 라이트의 섀도 업데이트를 단일 패스로 배치 처리하여 GPU 활용도를 높일 수 있습니다. 또한 매우 먼 라이트에 대해서는 프레임 다수에 걸쳐 섀도 업데이트를 분할하는 휴리스틱 기법도 기본으로 제공합니다.

언리얼 엔진 5.1 버추얼 섀도 맵의 모든 개전점에 대해서는 이 블로그를 확인하세요.

로컬 노출

루멘 덕분에 아티스트들은 어두컴컴한 방 안에서 창문을 통해 보이는 훨씬 밝은 야외 씬이나, 하나의 뷰에 밝은 하늘 및 태양으로 라이팅된 표면과 새까만 인테리어를 동일한 뷰에 담는 극단적인 대비를 표현할 수 있게 되었습니다. 이런 뷰에서는 하나의 노출 값을 사용하지 못합니다. 밝은 영역은 과노출이 되고 어두운 영역은 칠흑 같은 상태로 남아 가시성이 없어지기 때문입니다.

언리얼 엔진 5의 노출 시스템포트나이트 배틀로얄 챕터 4에 맞추어 향상되면서 아티스트들이 원하는 아트 디렉션과 더 나은 퍼포먼스를 달성할 수 있는 툴을 제공하게 되었습니다. 아티스트는 이제 로컬 노출이 하이라이트와 섀도에 적용되는 방식을 개별적으로 제어할 수 있어, 하이 다이내믹 레인지 라이팅 조건에서 디테일을 보존하기가 수월해졌습니다. 게다가 로컬 노출이 블룸 및 렌즈 플레어와 같은 나머지 포스트 프로세스 파이프라인과 긴밀하게 통합되면서 더욱 일관적인 결과물을 낼 수 있게 되었습니다.

또한 머티리얼 프로퍼티를 무시하고 조도를 기반으로 하는 자동 노출 계산도 추가하였습니다. 덕분에 머티리얼이 다양한 라이팅 조건에서 일관적으로 표시되며 게임플레이 시 이미지 안정성이 향상됩니다.
하이라이트와 섀도 디테일이 언리얼 엔진 5.0의 신기능인 로컬 노출을 통해 보존된 모습입니다. 로컬 노출은 루멘을 사용할 때 항상 설정되어야 합니다!

템포럴 슈퍼 해상도

템포럴 슈퍼 해상도(Temporal Super Resolution, TSR) 덕분에 이제 비용이 높은 렌더링 계산을 여러 프레임에 걸쳐 분할하여 적은 비용으로도 아름다운 4K 이미지를 렌더링할 수 있습니다. 포트나이트 배틀로얄 챕터 4에서는 60fps를 목표로 했던 만큼 TSR에서 많은 퍼포먼스 및 퀄리티 최적화가 필요했습니다. 그 결과 언리얼 엔진 5.1의 TSR이 5.0에 탑재되었던 버전보다 훨씬 향상되고 빨라졌습니다. 또한 사용하는 프로파일(낮음, 중간, 높음, 에픽)에 따른 TSR 퍼포먼스와 퀄리티의 스케일링도 향상했습니다.

앞으로 올라올 블로그에서는 해당 향상점의 기술적 디테일을 더욱 자세히 다룰 예정입니다.

클라우드

언리얼 엔진 5.1에서는 클라우드 렌더링 퀄리티 역시 포트나이트 배틀로얄 챕터 4의 발전한 비주얼 퀄리티에 맞추어 더욱 향상되었습니다. 언리얼 엔진 5에서는 빠듯한 퍼포먼스 예산에 맞추기 위해 구름을 내부적으로 낮은 해상도로 렌더링한 다음 업샘플링하는 방식을 사용했는데, 이렇게 하면 배경 구름을 가리는 전경 메시 주변에 불완전한 에지가 형성되면서 그 에지 주변으로 밝은 하늘의 컬러가 누수되는 결과가 나타났습니다. 이제 언리얼 엔진 5.1에서는 이러한 누수 없이 전체 해상도에서 구름 업샘플링을 더 뛰어나게 리졸브할 수 있습니다. 그리고 구름 앞에서 움직이는 메시로부터 구름의 일시적 재구성을 향상시켜 분리로 인한 자취 또한 효과적으로 줄일 수 있었습니다.

나이아가라

포트나이트나이아가라 VFX 시스템을 활용하여 아티스트가 주도하는 절차적 파괴 이펙트를 생성합니다. 나이아가라는 게임플레이에 반응하여 무기에 맞을 때마다 날아가는 파편 조각들을 스폰하고 정확히 시뮬레이션합니다.

포트나이트 배틀로얄 챕터 4에 새로 적용된 고퀄리티 불은 복셀 기반 전파 메커니즘을 사용하여 불이 표면과 랜드스케이프를 따라 번져 나가는 모습을 더욱 잘 표현하고 차량과 피직스 오브젝트에 의한 불번짐을 구현합니다. 이 시스템은 엔진 내에서 베이크된 나이아가라 시뮬레이션을 나이아가라 파티클에 적용시킵니다. 이 때 나이아가라 파티클은 파이어 게임플레이 시스템에서 데이터를 읽어 불 표면에 불꽃을 정확히 배치하고 정렬시킵니다.

월드 제작 지원

이번 챕터 4가 출시되면서 포트나이트 배틀로얄은 이제 모든 플랫폼에서 최신 언리얼 엔진 5 월드 제작 및 자동 스트리밍 솔루션을 사용합니다. 여기에는 월드 파티션, 데이터 레이어, 레벨 인스턴스, 자동 HLOD, 액터당 한 개의 파일이 포함됩니다. 이 툴세트는 협업성이 강화된 워크플로를 지원하므로 레벨 디자이너와 아티스트들이 더욱 효율적으로 월드를 제작할 수 있습니다.

포트나이트 출시 이전에 쓰이던 커스텀 스트리밍 솔루션과의 가장 큰 차이점은, 신규 월드 파티션 시스템은 자동으로 적용되며 개발자가 투자하는 시간이 훨씬 적어진다는 것입니다. 또한 HLOD 트랜지션이 한층 안정적이므로 전반적으로 우수한 게임플레이 경험을 선사합니다.

챕터 4에는 10만 개가 넘는 액터 파일이 포함되어 있습니다. 이처럼 다수의 파일이 수반되는 작업을 더욱 효율적으로 만들고자 신규 UX 도입, 신규 비제어 체인지리스트 유형 적용, 씬 아웃라이너 및 메인 뷰포트의 통합 개선 등을 통해 체인지리스트 창을 향상했습니다.

챕터 4를 지원하고자 이루어진 추가 발전 사항으로는 내비메시 생성(스태틱 및 다이내믹)이 이제 월드 파티션을 지원한다는 점입니다. 즉, 월드 셀 하나를 로드해 여기에 대한 내비메시를 생성하고, 직렬화하고, 해당 셀을 언로드한 후, 다음으로 넘어갑니다.

언리얼 엔진 5.1의 모든 개발자는 이러한 향상된 기능을 활용할 수 있으며, 포트나이트 팀이 계속해서 해당 기능들을 실전 검증하는 만큼 이후 버전에서 더 많은 요소가 발전할 것으로 기대하고 있습니다.

스마트 오브젝트 및 스테이트 트리

스마트 오브젝트는 AI가 레벨 상의 오브젝트 또는 영역을 선택하여 비헤이비어를 동적으로 주입할 수 있는 기능을 노출합니다. 관련 데이터와 애니메이션 등의 환경설정은 에이전트가 아닌 해당 오브젝트에 저장되므로 다수의 에이전트 간 공유가 가능합니다. 덕분에 더욱 효율적인 메모리 사용, 보다 우수한 퍼포먼스, 핵심 비헤이비어를 편집하지 않고 기본 비헤이비어만 확장하면 되는 뛰어난 유연성이 제공됩니다.

스테이트 트리는 확장 가능한 범용 스테이트 머신으로, 기존 스테이트 머신 메커니즘을 유연한 결정 트리(Decision Tree) 구조 내에서 결합합니다. 직관적이며 간단한 UI와 더불어 여전히 높은 퍼포먼스를 보여 줍니다.

이 모든 기술은 모두 언리얼 엔진 5.0 버전에서 실험단계 기능으로 소개되었고, 포트나이트 배틀로얄 챕터 4에 성공적으로 디플로이된 후 5.1에서는 정식 버전으로 승격되었습니다. 챕터 4 이전까지 스마트 오브젝트는 AI가 단순한 애니메이션 또는 감정표현을 재생하도록 하는 목적으로만 사용되었지만, 스마트 오브젝트 플로에 스테이트 트리를 통합함으로써 봇이 포트나이트 캠프파이어와 상호작용하는 것처럼 봇의 행동방식을 더욱 복잡하고 풍성하게 만들어 낼 수 있었습니다.

개발자 효율성 향상

에픽게임즈는 개발자들이 온전히 창작 프로세스에만 집중할 수 있도록 개발자 효율성을 높일 방법을 계속해서 탐색하고 있습니다. 포트나이트에 나나이트와 같은 신규 그래픽 기법을 도입하면 그만큼 디스크 점유 공간도 더 커지게 되므로, 팀이 게임을 로드하거나 Perforce에서 콘텐츠를 가져오는 과정에 걸리는 시간을 줄여야 한다는 과제가 생겼습니다.

규모가 크고 매우 분산된 포트나이트 팀은 새로운 언리얼 클라우드 DDC로부터 큰 혜택을 누릴 수 있었습니다. 언리얼 클라우드 DDC는 파생 데이터 캐시에 전반적으로 효율적인 모델로, 텍스처 또는 메시와 같은 최적화된 콘텐츠 버전에 빠른 액세스를 제공하여 로컬 프로세싱이 필요하지 않습니다. 그 결과 포트나이트에서의 에디터 로드 시간은 두 배 이상 빨라졌습니다.

버추얼 에셋은 콘텐츠의 디스크 점유 공간을 줄임으로써 포트나이트의 동기화 시간이 단일 작업공간에서 4배 이상 감소하는 결과를 가져왔으며, 여러 작업공간에서의 중복된 공통 데이터를 제거하여 그 감소 수준을 더욱 높일 수 있었습니다. 그리고 언리얼 에셋의 텍스처 해상도, 포맷 등과 같은 훨씬 작은 클래스 프로퍼티로부터 원시 텍스처 픽셀 등과 같은 대규모 벌크 데이터를 제거하여 별도로 저장합니다. 이런 버추얼 에셋은 외부에서 볼 때 일반 언리얼 에셋과 구분되지 않지만 그 크기는 몇 배나 작습니다. 개발자 워크플로는 크게 변경되지 않았지만 클라이언트는 에디터에서 사용할 필수 데이터만 다운로드할 수 있어 Perforce 동기화에 훨씬 적은 시간이 소요됩니다.

머신 러닝

언리얼 엔진의 머신 러닝(Machine Learning, ML) 디포머를 사용하면 커스텀 Maya 플러그인으로 머신 러닝 모델을 훈련시키고 언리얼 엔진에서 실시간으로 실행하여 복잡한 전용 릭이나 임의 디포메이션의 근사치를 고퀄리티로 생성할 수 있습니다.

이번 챕터 4에서 포트나이트 팀은 머신 러닝 디포머를 사용한 덕분에 근육과 클로스에 더 높은 퀄리티의 캐릭터 디포메이션을 적용할 수 있었으며, 그 첫 수혜자는 바로 헐크(Hulk)와 선릿(Sunlit) 캐릭터였습니다. 팀은 외부 DCC로부터 복잡한 디포메이션 및 시뮬레이션을 캡처하여 해당 지오메트리 결과물을 게임플레이 릭에 주입할 수 있었습니다. 이러한 실전 검증 결과, 머신 러닝 디포머는 기존에 실험단계 기능이었으나 언리얼 엔진 5.1에서 베타로 승격되었습니다. 팀과 머신 러닝 디포머 엔지니어 간의 긴밀한 협업 덕분에 이 기술은 언리얼 엔진 5.2에 예정된 신기능 및 안정성 수정 사항과 함께 더욱 더 발전할 기회를 얻었습니다.

메타휴먼 프레임워크

챕터 4에서 포트나이트 팀은 3레터럴의 개발자 및 메타휴먼 팀과 긴밀히 협업하여 포트나이트 캐릭터의 페이셜 애니메이션 기능을 업그레이드했습니다. 여기에는 신규 캐릭터의 표정 및 조인트 수 증가, 신규 리깅 및 애니메이션 툴 생성을 통한 페이셜 애니메이션 발전 등 캐릭터 퀄리티에 대한 업데이트도 몇 가지 포함되어 있습니다.

그 결과 언리얼 엔진 5.1에서는 릭 로직의 런타임 함수 기능을 향상하여 퍼포먼스 제한을 준수하면서도 포트나이트에서 메타휴먼 기술의 상하위 호환을 지원할 목적으로 만들어진 리매핑 노드도 제공합니다.

포트나이트 배틀로얄 챕터 4 개발 중에 이루어진 언리얼 엔진 5.1의 향상된 기능이 여러분의 타이틀을 차세대 비주얼 퀄리티로 완성하는 데 도움이 되었으면 좋겠습니다. 그 멋진 결과물을 어서 만나볼 수 있기를 기대합니다!

    지금 언리얼 엔진을 다운로드하세요!

    세계에서 가장 개방적이고 진보된 창작 툴을 받아보세요.
    모든 기능과 무료 소스 코드 액세스를 제공하는 언리얼 엔진은 제작에 바로 사용할 수 있습니다.