언리얼 엔진 전문가, UE 게임의 끊김 현상 제거를 위한 ‘그레이트 히치 헌트’ 이니셔티브 출시 및 개발자 팁 제공

언리얼 엔진 전문가, UE 게임의 끊김 현상 제거를 위한 ‘그레이트 히치 헌트’ 이니셔티브 출시 및 개발자 팁 제공

언리얼 엔진 게임의 끊김 문제 해결: Unreal Fest 2025에서 얻은 통찰력

플로리다주 올랜도에서 열린 언리얼 페스트 2025에서 수석 소프트웨어 엔지니어 아리 아른비외른손은 PC 게이머들에게 중요한 문제, 즉 언리얼 엔진으로 개발된 게임의 버벅임 현상에 대해 언급했습니다.최근 성능 저하 문제가 잇따르면서 게임 커뮤니티는 에픽게임즈의 이 지속적인 문제에 대한 대응 방안에 의문을 제기하고 있습니다.

문제의 핵심: ‘위대한 히치 헌트’

‘위대한 히치 헌트(The Great Hitch Hunt)’라는 흥미로운 주제의 프레젠테이션에서 아른비외른손은 마녀사냥꾼 의상을 입고 개발자들에게 버벅임의 원인을 적극적으로 해결하도록 촉구했습니다.그는 이러한 게임플레이 방해에 기여하는 일곱 가지 주요 요인을 설명하고, 성능 향상을 목표로 하는 개발자들을 위한 실행 가능한 모범 사례를 제시했습니다.

말더듬증의 원인 파악

1.레벨 스트리밍 문제

첫 번째 주요 원인은 레벨 스트리밍으로, 게임 환경의 동적 로딩 및 언로딩과 관련된 다양한 장애를 포함합니다.아른비에른손은 테이블이나 식기와 같은 복잡한 오브젝트와 같은 정적 메시 액터를 부적절하게 사용하면 게임 성능에 상당한 부담을 줄 수 있으며, 특히 대규모 AAA 월드에서 더욱 그렇습니다.그는 이러한 문제를 완화하기 위해 인스턴스화된 정적 메시(ISM) 또는 계층적 인스턴스화된 정적 메시(HISM)를 사용하고, 패킹된 레벨 액터 기능을 활용하여 수많은 정적 메시를 리소스 사용량이 적은 액터로 압축할 것을 권장했습니다.또한, 그는 언리얼 엔진 5.5의 셀 트랜스포머(Cell Transformers)에서 런타임에 정적 메시 액터를 인스턴스화된 메시로 자동 변환하도록 설계된 향후 개선 사항에 대해서도 언급했습니다.

2.물리 최적화

또 다른 장애의 원인은 물리 관련 처리에서 발생합니다.개발자들은 최적화의 필요성을 종종 과소평가하는데, 특히 언리얼 엔진 5에 나나이트(Nanite) 기술이 도입된 이후 이러한 현상이 심화되고 있습니다.이로 인해 복잡한 메시도 매끄럽게 동작할 것이라는 가정이 생겨났습니다.아른비에른손은 대신, 구, 캡슐, 상자, 그리고 마지막으로 볼록 폴리곤과 같은 더 단순한 충돌 형태를 사용할 것을 권장합니다.그는 또한 멀리 떨어져 있고 상호작용하지 않는 객체에 대한 물리 상호작용을 비활성화하는 것의 중요성을 강조했습니다.에픽의 실험적인 비동기 물리 초기화 기능은 게임 스레드의 물리 부하를 줄이는 것을 목표로 하지만, 개발자들은 신중하게 접근해야 합니다.

3.액터 생성 지연

액터 스폰 지연은 다음으로 중요한 과제입니다.캐릭터 모델과 같이 여러 구성 요소를 갖춘 무거운 액터는 초기화 과정에서 프레임 속도가 눈에 띄게 떨어질 수 있습니다.이 문제를 해결하기 위해 Arnbjörnsson은 매 프레임마다 스폰되는 액터 수를 제한하고, 액터 구성 요소의 활성화를 지연시키며, 기존 오브젝트를 반복적으로 삭제하고 재생성하는 대신 재사용하는 액터 풀링 전략을 구현할 것을 제안했습니다.언리얼 엔진에서 액터 풀링을 기본 기능으로 구현하는 것이 고려 중이지만, 현재 개발자는 특정 액터 유형에 맞는 맞춤형 풀을 만드는 것이 좋습니다.

4.파이프라인 상태 객체(PSO) 컴파일

스터터링의 가장 흔한 원인 중 하나는 파이프라인 상태 객체(PSO) 컴파일과 관련이 있습니다.균일한 하드웨어 구성을 자랑하는 콘솔과 달리 PC는 게임 플레이 중 셰이더 컴파일에 어려움을 겪으며, 셰이더를 실시간으로 컴파일해야 할 때 스터터링이 발생합니다.이 문제를 해결하기 위해 언리얼 엔진 5.3에 PSO 사전 캐싱 기능이 도입되었지만, 개발자는 여전히 자체적인 PSO 컴파일 전략을 수립하고 PSO 캐시 버스터 플러그인과 같은 도구를 활용하여 성능을 더욱 최적화해야 합니다.

5.가비지 수집 스파이크

가비지 컬렉션은 사용되지 않는 UObject 인스턴스가 과도하게 누적되어 가비지 컬렉션 프로세스가 지연될 경우 성능 저하를 초래할 수 있습니다.개발자는 UObject 개수를 적극적으로 관리하고 가비지 컬렉션 일정을 지능적으로 조정하여 중단을 최소화해야 합니다. Epic은 현재 이러한 문제를 해결하기 위해 가비지 컬렉션 작업을 여러 프레임에 분산하는 실험적인 증분적 도달 가능성 분석 기능을 개발 중입니다.

6.동기식 로딩 히치

동기식 로딩 히치는 게임 스레드가 애셋 로드 차단으로 인해 지연될 때 발생하며, 이로 인해 매우 긴 중단 시간이 발생합니다.이를 해결하려면 개발자는 비동기 로딩 기술을 엄격하게 적용하고 Arnbjörnsson의 CommonValidators 와 같은 애셋 검증 도구를 사용하여 문제가 있는 로딩 동작을 추적해야 합니다.언리얼 엔진 5.4와 5.5 버전은 비동기 대기열을 부분적으로 플러시할 수 있는 기능을 도입하여 이러한 상황을 개선하고자 합니다.

7.청사진 및 콘텐츠 장애

마지막으로, 지나치게 복잡한 블루프린트와 콘텐츠 스크립트는 과도한 타이머, 잦은 업데이트, 또는 복잡한 시퀀스를 수반하여 성능을 저하시킬 수 있습니다.에픽은 개발자들을 지원하기 위해 언리얼 인사이트 도구를 개선하여 프로젝트 내 성능 병목 현상을 더 쉽게 시각화하고 해결할 수 있도록 지원합니다.

결론: 최적화 과제 수용

프레젠테이션을 마무리하며, 아른비외른손은 기술 발전이 게임 환경을 끊임없이 변화시키고 있지만, 개발자들은 내재된 한계를 인지해야 한다고 강조했습니다.효과적인 최적화 전략과 창의적인 문제 해결은 최대한 원활한 게임 경험을 제공하는 데 필수적입니다.그의 세션은 개발자들이 프로젝트에서 발생하는 끊김 현상에 대한 해결책을 찾도록 정보를 제공할 뿐만 아니라, 이를 통해 영감을 불어넣는 것을 목표로 했습니다.

자세한 내용은 전체 강연을 시청하세요.

.

출처 및 이미지

답글 남기기

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