언리얼 엔진 5는 PC 그래픽의 가장 큰 문제를 해결하고 있습니다.

리스펙 dt 특집 이미지 2
이 이야기는 PC 게임 및 하드웨어의 세계를 다루는 Jacob Roach의 ReSpec 시리즈의 일부입니다.

동안 언리얼 주소의 상태 GDC 2023에서 Epic은 Unreal Engine 5.2를 위한 광범위한 기능 모음을 발표했습니다. 그러나 아마도 가장 업데이트된 엔진에서 제공되는 중요한 기능은 조명, 지오메트리 세부 정보 또는 광선과 관련이 없습니다. 트레이싱. 성능에 관한 모든 것입니다.

내용물

  • 말더듬을 기억해
  • 포트나이트를 위한 모든 것
  • 아직도 흥분할 것이 많다

추천 동영상

언리얼 엔진 옳든 그르든 게임은 지난 몇 년 동안 말더듬 및 장애와 관련이 있습니다. 새 릴리스와 함께 Epic은 마침내 문제를 정면으로 해결하고 있으므로 Unreal 게임이 왜 그렇게 중요한지 분석할 때가 되었다고 생각했습니다. 일반적으로 말더듬, 에픽이 문제를 해결하기 위해 무엇을 하고 있는지, 그리고 이러한 노력이 새 릴리스에 나타날 것으로 예상할 수 있는 시기를 보여줍니다.

말더듬을 기억해

PC에서 Gotham Knights의 프레임 시간.
이러한 프레임 시간 스파이크는 Gotham Knights에서 심각한 끊김 현상으로 나타납니다.

지난 몇 년 동안 언리얼 엔진은 말더듬과 동의어가 되었습니다. 우리는 그것을 반복해서 보았습니다. 스타워즈 제다이: 오더의 몰락 에게 흩어진 에게 고담 나이츠, 그리고 그들은 모두 공통적으로 동일한 문제를 가지고 있습니다. 컴파일이 말더듬입니다.

일반적으로 셰이더 컴파일 끊김 현상에 대해 듣게 되지만 최근의 끊김 원인은 개별 셰이더 때문이 아닙니다. 최근 그래픽에서 Vulkan과 같은 API 및 DirectX 12, PSO(Pipeline State Objects)로 알려진 패키지를 활용하여 게임에 GPU 상태를 알립니다. PSO는 렌더링을 보다 효율적으로 만들어 셰이더를 포함한 수십 개의 매개 변수를 단일 패키지의 API와 GPU 간에 인터페이스할 수 있도록 합니다.

그러나 그들은 다른 문제를 야기합니다. PSO에는 너무 많은 정보가 포함되어 있기 때문에 즉석에서 새 PSO를 생성하는 데 시간이 오래 걸립니다. 언리얼 문서로, 100밀리초 이상). 이 런타임 PSO 생성은 실제로 플레이하는 동안 엔진이 새로운 PSO를 생성해야 하는 버벅거림의 원인입니다.

이를 방지하기 위해 언리얼 엔진에서 PSO 캐싱을 사용할 수 있습니다. 이렇게 하면 가능한 PSO의 캐시가 생성되므로 게임을 플레이하는 동안 새 PSO를 생성할 필요는 없지만 완벽하지는 않습니다. Epic이 설명했듯이 PSO 사전 캐싱은 "대형 프로젝트에 부담이 될 수 있으며 여전히 캐시에 공백을 남겨 장애를 일으킬 수 있습니다." 그렇기 때문에 GPU에서 셰이더를 미리 컴파일하는 게임에서도 때때로 끊김 현상이 발생합니다(거의 적고 멀리 있어도). 사이).

Epic은 가능한 모든 GPU 매개변수를 설명하도록 개발자에게 맡기지 않고 PSO를 수집하여 이 프로세스를 자동화하려고 시도하고 있습니다. 켜졌 어 에픽의 퍼블릭 로드맵, 하지만 지금은 실험적 버전만 사용할 수 있습니다. Unreal Engine 5.2에서 목표는 PSO 캐싱을 개선하여 버벅임을 더욱 줄이는 것입니다.

포트나이트를 위한 모든 것

Unreal Engine 5에서 실행되는 Fortnite의 장면.

Unreal Engine 5에는 흥분할 것이 많지만(그 중 일부는 다음에 다루겠습니다) 아직 엔진이 어떻게 작동하는지 명확하게 볼 수는 없습니다. 지금까지는 기술 데모 및 포트나이트 주요 릴리스 중. 같은 게임이라도 레드폴 Unreal Engine 5를 활용하겠다고 약속한 회사는 Unreal Engine 4로 물러났습니다.

언리얼 엔진 4에서 사용할 수 있는 도구를 통해 개발자는 게임을 최적화하여 끊김 현상을 방지할 수 있습니다. 아토믹 하트그 많은 예 중 하나입니다. 그러나 PSO의 복잡한 상태로 인해 게임플레이 도중 장애가 발생할 수 있으며 Epic의 자동 PSO 수집은 Unreal Engine 5.1에서만 도입되었습니다.

Epic이 문제를 직접 해결하는 것을 보니 기쁘긴 하지만 아직 자동 PSO 캐시가 진행되는 것을 보지 못했습니다. 소규모 팀에서 더 복잡하고 다양한 릴리스가 나오면서 PSO 생성에 대한 수요가 높아지고 끊김과 끊김 현상이 나타날 가능성이 높아집니다.

이것은 특히 다음을 포함하는 게임에 관한 것입니다. 광선 추적, 언리얼 엔진 5는 PSO 캐싱을 지원하지 않기 때문에 광선 추적 PSO. 처럼 엔비디아 설명, 레이 트레이싱 PSO를 생성하는 작업을 여러 스레드에 분산하는 것이 가능하지만 이것이 반드시 개발자가 이 프로세스를 사용한다는 의미는 아닙니다.

아직도 흥분할 것이 많다

언리얼 엔진 5의 라이팅.

우리는 여전히 Unreal Engine 5에서 자동화된 PSO 수집을 볼 필요가 있지만 실제로 엔진에는 흥분할 것이 많습니다. 먼저 루멘입니다. 조명은 그래픽 충실도에 매우 중요하며 경로 추적 조명과 같은 값비싼 기술은 포털 RTX하드웨어에 강합니다. 루멘은 차이를 나눕니다.

Lumen은 광선 추적을 활용하지만 고도로 최적화된 형태의 광선 추적. 세부 개체에 대한 무한 바운스를 힘들게 계산하는 대신 Lumen은 추상화를 사용합니다. 대부분의 장면에 대한 조명을 계산합니다. 카메라. 이 최적화를 통해 Lumen은 소프트웨어와 함께 실행할 수 있습니다. 광선 추적, 헌신적 인 필요성을 버리고 광선 추적 당신의 가속기 그래픽 카드.

결과는 이미 명확합니다. 포트나이트 Lumen이 있는 콘솔에서 초당 60프레임(fps)으로 실행되고 있으며 PC에서도 멋지게 보입니다. 포트나이트'의 만화 세계.

언리얼 엔진 5의 Nanite 쇼케이스.

Nanite는 Lumen과 함께 작동합니다. 게임 플레이 중에 조정할 수 있는 매우 상세하고 압축된 메시를 포함하는 가상화된 지오메트리 시스템입니다. 이것은 기본적으로 카메라가 보는 위치에 따라 상세 메시와 모호한 메시 간에 자동으로 전환되는 메시에 대한 복잡한 세부 수준(LOD)입니다.

더 중요한 것은 Nanite가 자체 렌더링 패스에서 실행되므로 기존 GPU 파이프라인에 얽매이지 않는다는 것입니다. 즉, Nanite가 메시 복잡성을 교체하는 경우에도 게임 플레이가 원활하게 유지됩니다. Nanite와 Lumen 사이에는 그래픽 충실도의 기준을 높이는 시각적으로 인상적이며 계산적으로 효율적인 두 가지 기능이 있습니다.

그러나 Epic은 State of Unreal 연설에서 더 많은 것을 공유했습니다. Substrate는 Unreal 5.2의 새로운 머티리얼 시스템으로, 더 자세한 셰이더 컨트롤을 포함합니다. Epic은 이를 오팔 표면 소재로 시연하여 여러 레이어와 레이어 전반에 걸친 정확한 빛 굴절을 선보였습니다.

언리얼 엔진 5의 오팔 머티리얼.

새로운 절차적 콘텐츠 생성 프레임워크(PCG)도 시각적 충실도와 직접적인 관련이 없더라도 흥미진진합니다. 제한된 입력으로 PCG는 개발자가 높은 수준의 세부 정보로 세계를 빠르게 구축할 수 있도록 새로운 개체를 생성할 수 있습니다. 구석구석 예술가의 손길을 필요로 하지 않는 더 넓은 세계에 흥미진진합니다.

MetaHuman의 발전부터 언리얼 엔진 내 전체 경로 추적에 이르기까지 훨씬 더 많습니다. 흥미롭긴 하지만 언리얼 엔진 릴리스와 관련된 일반적인 끊김 문제는 여전히 남아 있습니다. PSO 캐싱에 대한 Epic의 발전으로 이 문제를 우회할 수 있기를 바라지만, 아직 이 시스템이 어떻게 작동하는지 확인할 수 있는 Unreal Engine 5 게임이 많지 않습니다.

이 글은 ReSpec – PC 게임 이면의 기술에 대한 토론, 조언 및 심층 보고가 포함된 격주 칼럼입니다.

편집자 추천

  • 나는 Halo의 잊혀진 유산을 Mac 프랜차이즈로 되살리려 했지만 그것은 재앙이었습니다.
  • 독점 PC 파트너십을 통해 모두가 잃습니다.
  • 역대 최악의 PC 포트와 그 이유
  • 생성 AI가 '더 넓고, 더 크고, 더 깊은 세계'로 게임을 만드는 방법
  • Star Wars Jedi: Survivor는 Steam에서 '완전 쓰레기' PC 포트로 리뷰 폭격을 받고 있습니다.