관리번호, 국가코드, 자료구분, 상태, 출원번호, 출원일자, 공개번호, 공개일자, 공고번호, 공고일자, 등록번호, 등록일자, 발명명칭(한글), 발명명칭(영문), 출원인(한글), 출원인(영문), 출원인코드, 대표출원인, 출원인국적, 출원인주소, 발명자, 발명자E, 발명자코드, 발명자주소, 발명자 우편번호, 발명자국적, 대표IPC, IPC코드, 요약, 미국특허분류, 대리인주소, 대리인코드, 대리인(한글), 대리인(영문), 국제공개일자, 국제공개번호, 국제출원일자, 국제출원번호, 우선권, 우선권주장일, 우선권국가, 우선권출원번호, 원출원일자, 원출원번호, 지정국, Citing Patents, Cited Patents Show
라인 트레이서 - 세미나 (광운대 바람 박성우님) from NAVER D2 주제분류사회과학 경영학 경제학 관광학 교육학 군사학 무역학 문헌정보학 법학 사회과학일반 사회복지학 사회학 신문방송학 심리과학 정치외교학 지리/지역개발학 지역학 행정학 공학 건축공학 공학일반 기계공학 산업공학 자원/재료공학 전자/제어계측공학 전자/정보통신공학 조선/해양공학 컴퓨터학 토목/환경공학 항공우주공학 화학/생물공학 자연과학 물리학 생물학 생활과학 수학/통계학 자연과학일반 전문/지구과학 의약학 간호학 수의학 약학 의학 의학일반 치의학 한의학 인문학 독일어문학 러시아어문학 문학 언어학 역사학 영어문학 인문학일반 일본어문학 종교학/신학 중국어문학 철학 프랑스어문학 한국어문학 예술체육학 건축 디자인 무용 미술 미용 사진 연극 영화 예술체육학일반 음악 의상 체육 농수해양학 농수해양학일반 농학 수산학 식품과학 임학 축산학 해상운송학 복합학 과학기술학/기술정책 뇌/인지과학 여성학 학제간연구 Best논문주간 급상승 그룹별 Best 주제별 Best 세상의 모든 지식 3분 논문 매거진(잡지)저널∙발행기관논문작성TIP크롬 서지관리 다운로드정기구독(개인)소속 기관이 없으신 경우, 개인 정기구독을 하시면 저렴하게 회원혜택로그인 회원이 가져갈 수 있는 혜택들을 확인하고 이용하세요. 아카루트학술연구/단체지원/교육 등 연구자 활동을 지속하도록 DBpia가 지원하고 있어요. 영문교정영문 논문 작성에 도움을 드리기 위해, 영문 교정 서비스를 주제분류사회과학 경영학 경제학 관광학 교육학 군사학 무역학 문헌정보학 법학 사회과학일반 사회복지학 사회학 신문방송학 심리과학 정치외교학 지리/지역개발학 지역학 행정학 공학 건축공학 공학일반 기계공학 산업공학 자원/재료공학 전자/제어계측공학 전자/정보통신공학 조선/해양공학 컴퓨터학 토목/환경공학 항공우주공학 화학/생물공학 자연과학 물리학 생물학 생활과학 수학/통계학 자연과학일반 전문/지구과학 의약학 간호학 수의학 약학 의학 의학일반 치의학 한의학 인문학 독일어문학 러시아어문학 문학 언어학 역사학 영어문학 인문학일반 일본어문학 종교학/신학 중국어문학 철학 프랑스어문학 한국어문학 예술체육학 건축 디자인 무용 미술 미용 사진 연극 영화 예술체육학일반 음악 의상 체육 농수해양학 농수해양학일반 농학 수산학 식품과학 임학 축산학 해상운송학 복합학 과학기술학/기술정책 뇌/인지과학 여성학 학제간연구 언리얼 엔진 5.0은 게임 개발자와 다양한 산업의 크리에이터들이 그 어느 때보다 큰 자유, 퀄리티, 유연함을 제공하는 차세대 리얼타임 3D 콘텐츠 및 경험을 실현할 수 있도록 합니다. 다음과 같은 기능이 추가되어 어떤 규모의 개발팀도 창작의 자유를 최대한 발휘할 수 있습니다.
렌더링루멘 글로벌 일루미네이션 및 리플렉션루멘은 씬과 라이트 변화에 즉각적으로 반응하는 완전 다이내믹 글로벌 일루미네이션 및 리플렉션 솔루션입니다. 아티스트와 디자이너는 루멘을 활용하여 더욱 다이내믹한 씬을 제작할 수 있습니다. 태양의 각도를 바꾸거나, 손전등을 켜거나, 외부의 문을 열거나, 벽에 구멍을 내면 상황에 따라 간접광과 리플렉션이 적용됩니다. 이 시스템은 밀리미터 단위의 디테일한 환경에서 킬로미터 단위의 광활한 환경까지 무한한 바운스와 간접 스펙큘러 리플렉션으로 디퓨즈 인터리플렉션을 렌더링합니다. 이제 아티스트와 디자이너는 사전 연산된 라이팅이 텍스처에 베이크되어 있는 스태틱 씬에 얽매이지 않습니다. 개별 스태틱 메시에 대한 라이트 맵 UV를 구성하거나 라이팅을 다시 빌드할 필요 없이 에디터 내에서 변화를 바로 확인할 수 있어 시간이 크게 절약됩니다. 루멘은 효율적인 소프트웨어 레이 트레이싱을 구현하여 글로벌 일루미네이션 및 리플렉션이 다양한 그래픽 카드에서 실행되도록 지원하는 동시에 고급 비주얼을 위한 하드웨어 레이 트레이싱도 지원합니다. 언리얼 엔진 5 얼리 액세스 출시 이후로 루멘에서 향상된 사항은 다음과 같습니다.
자세한 정보는 루멘 글로벌 일루미네이션 및 리플렉션 문서를 참조하세요. 나나이트 가상화 지오메트리나나이트의 가상화된 마이크로폴리곤 지오메트리 시스템을 사용하면 방대한 양의 지오메트릭 디테일이 포함된 게임을 만들 수 있습니다. ZBrush 스컬프트에서 사진측량 스캔까지 수백만 개의 폴리곤으로 구성된 영화 수준의 소스 아트를 바로 임포트하고, 리얼타임 프레임 레이트를 유지한 채로 눈에 띄는 퀄리티 손실 없이 수백만 번 배치할 수 있습니다. 나나이트는 인식 가능한 디테일만 스마트하게 스트리밍 및 처리하여 트라이앵글 수와 드로 콜의 제약을 크게 줄입니다. 노멀 맵에 디테일을 굽거나 디테일 레벨을 직접 작성하는 등 시간이 걸리는 작업을 제거하여 창작에만 집중할 수 있습니다. 언리얼 엔진 5 얼리 액세스 출시 이후로 나나이트에서 향상된 사항은 다음과 같습니다.
자세한 정보는 나나이트 가상화 지오메트리 문서를 참조하세요. 버추얼 섀도 맵(베타)버추얼 섀도 맵은 언리얼 엔진 5의 나나이트, 월드 파티션 기능을 활용해 차세대 다이내믹 섀도잉을 실시간으로 제공합니다. 영화 수준의 에셋과 대규모 오픈 월드를 지원하는 데 필요한 높은 퀄리티의 섀도를 일관되게 제공합니다. 기존 다이내믹 섀도잉 기법은 소규모 또는 중간 규모의 월드로 제한되는 경우가 많고 디자이너와 아티스트가 퍼포먼스를 위해 퀄리티를 희생해야 했습니다. 반면 버추얼 섀도 맵은 가장 필요한 곳의 퀄리티를 자동으로 높여 주는 단일 통합 섀도잉 메서드를 제공합니다. 이제 사실적이고 부드러운 반그림자 및 컨택트 하드닝을 통해 먼 거리에 걸쳐 작은 오브젝트 및 큰 오브젝트에 일관된 퀄리티의 섀도를 적용할 수 있습니다. 언리얼 엔진 5 얼리 액세스 이후로 버추얼 섀도 맵 시스템에서 향상된 사항은 다음과 같습니다.
자세한 정보는 버추얼 섀도 맵 문서를 참조하세요. 템포럴 슈퍼 해상도나나이트 마이크로폴리곤 지오메트리와 차세대 게임의 퀄리티에 대한 기대로 화면에 표시할 수 있는 디테일이 그 어느 때보다 높아졌습니다. 이 기대감을 충족시키기 위해, 언리얼 엔진 4의 하이엔드 플랫폼용 템포럴 안티 에일리어싱(Temporal Anti-Aliasing, TAA)의 대안으로 템포럴 슈퍼 해상도 알고리즘을 새로 개발했습니다. 템포럴 슈퍼 해상도는 언리얼 엔진에 기본 내장되어 높은 퀄리티의 업샘플링을 제공하고 폭넓은 하드웨어를 지원합니다. 템포럴 슈퍼 해상도는 디폴트 안티 에일리어싱 메서드이며 모든 프로젝트에서 활성화되어 있습니다. 템포럴 슈퍼 해상도의 특징은 다음과 같습니다.
다음의 비교 예시에서는 네이티브 4K 렌더링과 1080p 해상도 업스케일링이 적용된 4K 렌더링 간 프레임의 퀄리티 및 퍼포먼스 차이가 나타납니다. 템포럴 슈퍼 해상도를 사용하면 네이티브 4K 해상도에 가까운 이미지 퀄리티를 달성하면서도 GPU의 프레임 시간을 약 50% 단축할 수 있습니다. 각 비교 이미지에서 4K 이미지는 이 페이지의 너비로 제한됩니다. 줄어들지 않은 전체 해상도로 이미지를 보려면 우클릭한 뒤 새 탭에서 열기 또는 다른 이름으로 이미지 저장 을 선택합니다. 향상된 패스 트레이서(베타)패스 트레이서는 언리얼 엔진 5.0에서 또 다시 향상되어 물리적으로 더욱 정확하고 타협 없는 결과를 구현합니다. 실측 자료(Ground Truth)와의 비교 및 단일 프레임 렌더에 사용할 수 있으며, 시퀀서의 무비 렌더 큐와 함께 사용해 프레임을 렌더링하면 고퀄리티 시네마틱을 만들어낼 수 있습니다. 이번 버전에서는 다음과 같은 사항이 향상되었습니다.
자세한 정보는 패스 트레이서 문서를 참조하세요. 로컬 노출 포스트 프로세싱로컬 노출은 아티스트가 제어하는 파라미터 내에서 노출에 맞춰 로컬 조정을 자동으로 적용하는 새 기법입니다. 기존 글로벌 노출 시스템을 이탈했을 때도 이 기술로 하이라이트 및 섀도 디테일을 모두 보존할 수 있습니다. 특히 다이내믹 라이팅으로 다이내믹 범위가 넓어진 까다로운 씬이 존재하는 프로젝트에서, 단일 글로벌 노출 조정으로는 과도한 하이라이트 및 완전히 어두운 섀도를 피하기 어려운 경우에 유용합니다. 예를 들어, 동적으로 시간대가 변하는 게임에서 플레이어는 문이나 창문 너머로 매우 밝은 야외가 보이는 실내 씬처럼 노출 대비가 높아 게임플레이를 방해하는 씬을 마주칠 가능성이 높습니다. 로컬 노출을 사용하면 씬마다 세심하게 제작한 라이팅을 구현할 수 없는 경우 훨씬 일관적인 최종 이미지를 얻는 데 도움이 됩니다. 로컬 노출 프로퍼티는 포스트 프로세스 볼륨(Post Process Volume) 의 렌즈(Lens) > 로컬 노출(Local Exposure) 카테고리에서에서 찾을 수 있습니다. 씬에 로컬 노출이 어떻게 적용되는지 확인하려면 레벨 뷰포트의 표시(Show) > 시각화(Visualization) 메뉴에서 시각화를 사용합니다. 로컬 노출에 대한 자세한 정보는 자동 노출을 참조하세요. 포스트 모션 블러 반투명(월드 내 UI 요소 등) 특정 이펙트는 현재 반투명 패스 내에서 렌더링될 경우 모션 블러 및 템포럴 안티 에일리어싱과 같은 포스트 프로세싱 이펙트로 인해 퀄리티가 저하되고 아티팩트가 발생할 수 있습니다. 언리얼 엔진 5.0에서는 아티스트가 모션 블러나 템포럴 안티 에일리어싱에 영향을 받지 않는 반투명 머티리얼을 생성할 수 있도록 새로운 포스트 모션 블러 반투명 패스를 도입했습니다. 머티리얼의 디테일 패널 프로퍼티에서 포스트 모션 블러 패스에 반투명 머티리얼을 할당할 수 있습니다. 반투명(Translucency) > 고급(Advanced) 섹션의 반투명 패스(Translucency Pass) 드롭다운 메뉴에서 모션 블러 후(After Motion Blur) 를 선택합니다. 지금은 이 패스에서 뎁스 테스트를 지원하지 않습니다. 즉, 모션 블러 후 설정으로 렌더링된 오브젝트는 씬에서 카메라에 더 가까이 있는 오브젝트가 있더라도 가려지지 않습니다. 머티리얼 에디터 접기 가능한 노드노드 접기 는 머티리얼 에디터의 새 기능으로, 이 기능을 사용하면 여러 개의 머티리얼 표현식 또는 함수를 선택해 머티리얼 그래프에서 단일 노드로 접을 수 있습니다. 노드 접기는 복잡한 머티리얼 네트워크를 간단하게 만들어 가독성과 인터랙션성을 높여 줍니다. 언제든지 접은 노드를 우클릭한 후 컨텍스트 메뉴에서 노드 펼침(Expand Node) 을 선택하면 접은 노드의 기존 환경설정을 복구할 수 있습니다. DirectX 12이제 언리얼 엔진 5의 기능을 사용해 Windows PC의 RHI를 구현할 때는 Microsoft의 DirectX 12(DX12)를 권장합니다. 에픽에서는 엔진에서 DX12 지원을 강화하는 동안 메모리 관리, 기능 무결성, 안전성을 최우선으로 고려할 예정입니다. 언리얼 엔진 5에서 새로 생성한 프로젝트는 기본적으로 DX12를 사용합니다. Vulkan언리얼 엔진 5의 Vulkan RHI는 여러 번의 안정성 및 기능 업데이트를 통해 데스크톱 및 모바일에서의 효율이 향상되었습니다. Linux에 나나이트, 루멘(소프트웨어 레이 트레이싱 전용) 등 언리얼 엔진 5 기능이 지원됩니다. 사양에 대한 자세한 정보는 하드웨어 및 소프트웨어 사양 문서를 참조하세요. 대규모 오픈 환경을 위한 월드 파티션월드 파티션은 에디터와 런타임에서 사용되는 데이터 관리 및 스트리밍 시스템으로, 스트리밍을 관리하고 데이터 경쟁을 줄이기 위해 월드를 수많은 서브레벨로 직접 나눌 필요가 없게 해 줍니다. 월드 파티션을 사용하면 월드가 단일 퍼시스턴트 레벨로 존재하게 됩니다. 에디터에서 월드는 2D 그리드로 분할되고, 데이터는 월드 파티션 에디터 창에서 관심 영역에 기반하여 부분 로딩됩니다. 다른 방식으로는 메모리에 맞지 않거나 로딩하는 데 오랜 시간이 걸렸을 대규모 월드를 처리할 수 있습니다. 쿠킹하거나 PIE로 시작할 때 월드는 런타임 스트리밍에 최적화된 그리드 셀로 나뉘어 개별 스트리밍 레벨이 됩니다. 월드 파티션은 언리얼 엔진 5.0 얼리 액세스 출시 이후로 다음과 같이 향상되었습니다.
월드 파티션은 오픈 월드 및 빈 오픈 월드 맵 타입뿐만 아니라 게임용으로 설계된 대다수의 새 프로젝트 템플릿을 사용할 때 기본적으로 활성화되어 있습니다. 월드 파티션 사용에 대한 자세한 정보는 월드 파티션 문서를 참조하세요. 월드 파티션 데이터 레이어월드 파티션 데이터 레이어는 에디터에서, 그리고 런타임 시 레이어를 활성화 및 비활성화해 조건부로 월드 데이터를 로드하도록 설계된 시스템입니다. 데이터 레이어는 에디터에서 월드를 체계적으로 정리하는 훌륭한 방법입니다. 또한 게임 내 서로 다른 시나리오를 처리하고 동일한 월드의 다양한 베리에이션을 생성할 때도 사용할 수 있습니다. 이 방식으로 밤과 낮을 다르게 구성할 때나 퀘스트 완료 후 월드에 변화가 생기도록 할 때 적합합니다. 에디터의 '데이터 레이어(Data Layers)' 탭이나 액터의 '디테일(Details)' 패널에서 데이터 레이어를 제어할 수 있습니다. 자세한 정보는 월드 파티션 - 데이터 레이어 문서를 참조하세요. 액터당 한 개의 파일새로운 액터당 한 개의 파일(One File Per Actor) 시스템은 월드 파티션과 함께 작동하여 대규모 월드에서 공동 편집을 더욱 쉽게 만들어 줍니다. 레벨 에디터는 개별 액터를 단일 모놀리식 레벨 파일로 그룹화하지 않고 자체적인 파일로 저장합니다. 즉, 전체 레벨이 아닌 소스 컨트롤에서 필요한 액터만 체크아웃하면 됩니다. 이 기능은 월드 파티션을 사용할 때 기본적으로 활성화되어 있습니다. 자세한 정보는 액터당 한 개의 파일 문서를 참조하세요. 자동 그리드 기반 HLOD자동 그리드 기반 계층 레벨 오브 디테일(HLOD) 시스템은 월드 파티션으로 작업하는 동안 커스텀 데이터 구동 HLOD 레이어를 만들어, 로드한 지역 외부에 표시되는 다수의 스태틱 메시 액터를 최적화합니다. 이 기능은 인스턴스드 스태틱 메시 컴포넌트(ISM), 혹은 언로드 된 월드 파티션 그리드 셀에 표시될 프록시 메시를 사용하는 최소한의 HLOD 세트를 제공해, 드로 콜의 수를 줄이고 퍼포먼스를 향상합니다. 이 프록시 메시는 기존 액터 지오메트리를 사용해 생성되며, 단순화 작업을 거쳐 메모리 사용량이 감소합니다. 자세한 정보는 월드 파티션 - 계층형 레벨 오브 디테일 문서를 참조하세요. 대규모 월드 좌표이제 대규모 월드 좌표(Large World Coordinates, LWC)가 언리얼 엔진 5에서 더블 정밀도 데이터 베리언트 타입을 지원합니다. 부동 소수점 정밀도를 향상하기 위해 UE5의 모든 엔진 시스템 전반에서 커다란 변화가 이루어졌습니다. 새로운 엔진 시스템에는 건축 시각화, 시뮬레이션, 렌더링 (나이아가라 및 HLSL 코드), 대규모 월드 스케일 프로젝트 등이 있습니다. 대규모 월드 좌표를 UE의 모든 곳에서 실행하고 노출하도록 많은 개발 작업을 진행했지만, 원래 지점에서 멀리 떨어진 일부 시스템의 경우 아직 해결하지 않은 정밀도 문제 때문에 몇 가지 제한이 존재합니다. 라이선스 이용자는 코드를 바로 이 신규 데이터 타입으로 옮기기 시작할 수 있으나, 엔진의 전 시스템이 대규모에서도 지금처럼 효율적으로 작동하는지 확인한 후, 5.1 버전에서 대규모 월드에 대한 생성 및 배치를 정식으로 지원할 예정입니다. 이후 최대 월드 크기의 디폴트 값을 매우 큰 수치로 설정할 것입니다. 언리얼 엔진 4에서는 32비트 플로트 정밀도 타입으로 인해 월드의 크기가 제한되었습니다. LWC는 코어 데이터 타입으로 64비트 더블을 제공하여 프로젝트 크기를 크게 향상시킵니다. 이 변화로 대규모 월드를 구축할 수 있게 되었으며, 액터 배치 정확도 및 오리엔테이션 정밀도가 크게 향상되었습니다. 대규모 월드 좌표는 더블 타입을 사용하기 때문에, PhysX 피직스 시스템 은 UE5와 호환되지 않습니다. 대규모 월드 실험에 관련된 자세한 정보는 [대규모 월드 좌표](making-interactive-experiences/Worlds/large-world-coordinates/) 문서를 참조하세요.애니메이션컨트롤 릭 향상컨트롤 릭은 이제 정식 버전으로 바뀌어 디폴트로 활성화되며, 언리얼 엔진 5.0에서 캐릭터를 리깅하고 애니메이팅할 수 있는 여러 새로운 툴, 기능 모드를 지원합니다. 애니메이션 모드애니메이션 모드(Animation Mode) 는 더욱 애니메이션 친화적인 인터페이스를 제공하도록 향상되었습니다. 애님 아웃라이너(Anim Outliner) 및 애님 디테일(Anim Details) 패널에서 컨트롤 및 프로퍼티 목록을 필터링 할 수 있게 되어 선택 사항과 키프레임 어트리뷰트를 손쉽게 관리할 수 있습니다. 애니메이션 워크플로를 보조할 수 있는 여러 툴도 제공됩니다. 이 툴에는 컨트롤에 사용한 포즈를 저장하고 재사용할 수 있는 포즈 툴(Pose Tool), 뷰포트에서 키프레임별 움직임을 시각화할 수 있는 모션 트레일 툴(Motion Trail Tool)이 포함됩니다. 애니메이션 모드에 대한 자세한 정보는 애니메이션 모드 페이지를 참조하세요. 스페이스 전환스페이스 전환 으로 컨트롤의 부모를 빠르고 쉽게 변경할 수 있습니다. 이 기능을 사용하면 새 스페이스가 실시간으로 생성되어 시퀀서 내에서 키프레이밍되거나, 컨트롤 릭 에셋에서 미리 구축할 수 있습니다. 결과적으로, 복잡한 컨스트레인트 전환 로직을 생성할 필요 없이 컨트롤의 공간적인 부모를 동적으로 변경할 수 있습니다. 애니메이팅 시 스페이스 전환을 사용하는 자세한 방법은 스페이스 전환 페이지를 참조하세요. 노드작업 향상블루프린트 워크플로와 더욱 비슷해지도록 컨트롤 릭을 만들 때 노드 작업 동작을 추가하고 향상시켰습니다. 이제 컨트롤 릭 내에서 함수 를 생성할 수 있습니다. 함수를 활용하면 큰 그래프를 더욱 잘 정리하고 로직을 반복하며 컨트롤 릭들 간에 기능을 손쉽게 공유할 수 있습니다. 또한 배열 도 생성 및 저장할 수 있어 아이템 세트 관리가 더욱 쉬워졌습니다. 이 새 배열 타입은 컬렉션 타입을 대신해 배열 아이템을 추가 제거, 작업할 수 있는 새 노드 세트를 다수 제공합니다. Python 스크립팅이제 컨트롤 릭에서 Python 스크립팅 을 사용하여 리깅 프로세스에 필요한 워크플로를 자동화하고 툴을 생성할 수 있습니다. 컨트롤 릭 Python 로그 를 사용하여 명령을 리버스 엔지니어링하고 스크립트를 복사하여 다른 프로젝트에 공유할 수도 있습니다. 자세한 정보는 컨트롤 릭 Python 스크립팅 페이지를 참조하세요. IK 릭 및 IK 리타기터새 IK 릭 시스템은 IK 솔버(신규 풀 바디 IK 포함)를 인터랙티브하게 생성하고 이 솔버들에 타깃 목표를 정의하는 메서드를 제공합니다. 이 결과로 생성된 IK 릭 에셋을 애니메이션 블루프린트에 임베딩하여 런타임에서 목표를 제어할 수 있습니다. 이 새로운 리타기팅 메서드는 제거된 언리얼 엔진 4의 리타기팅 매니저의 기능을 대신합니다. 또한 IK 릭은 IK 리타기터(IK Retargeter) 를 사용하여 서로 다른 스켈레탈 메시 간의 애니메이션 리타기팅을 향상시킬 수도 있습니다. 이 새 리타기팅 시스템을 사용하면 두 스켈레톤 사이에 애니메이션을 정확하게 전달할 수 있습니다. 런타임 시 전달하거나 오프라인 익스포터를 사용하는 애니메이션 블루프린트 및 시퀀스를 복제하면 됩니다. IK 릭 및 IK 릭 리타기팅에 대한 자세한 정보는 IK 릭 페이지를 참조하세요. 블렌드 스페이스 향상블렌드 스페이스는 언리얼 엔진 5.0에서 다양한 신기능과 새 동작을 포함하도록 개선되었습니다. 스무딩스무딩(Smoothing) 은 다양한 스무딩 타입과 시간을 손쉽게 설정할 수 있도록 바뀌었습니다. 선형(Linear), 이즈 인/아웃(Ease In/Out), 스프링 댐퍼(Spring Damper) 등 여러 타입의 보간을 선택할 수 있습니다. 다양한 스무딩 프로퍼티에 대한 자세한 정보는 블렌드 스페이스 에셋 디테일 섹션을 참조하세요. 블렌드 스페이스 그래프이제 블렌드 스페이스 그래프 를 생성하여 애니메이션 블루프린트에서 바로 블렌드 스페이스를 생성할 수도 있습니다. 이러한 그래프를 통해 애니메이션 블루프린트에 특화된 블렌드 스페이스를 생성하고, 다른 에셋으로부터 분리시키며, 샘플 로직을 편집할 수 있습니다. 블렌드 스페이스 그래프에 대한 자세한 정보는 블렌드 스페이스 사용하기 페이지를 참조하세요. 블렌드 스페이스 분석블렌드 스페이스 분석 으로 블렌드 스페이스 샘플 배치 및 관리를 자동화할 수 있게 되었습니다. 로코모션, 조준 등 가장 일반적인 블렌드 스페이스 셋업에 사용 가능한 몇 가지 분석 함수가 제공됩니다. 블렌드 스페이스 분석에 대한 자세한 정보는 블렌드 스페이스 분석 페이지를 참조하세요. 되감기 디버거되감기 디버거(Rewind Debugger) 의 도입으로 애니메이션 디버깅이 더욱 향상되었습니다. 특정한 시점으로 일시정지, 스텝 및 되감기하는 액터 및 애니메이션 이벤트의 게임플레이 타임라인 캡처를 사용할 수 있습니다. 씬에서 디버깅할 액터와 오브젝트도 쉽게 선택할 수 있습니다. 되감기 디버거를 통해 게임플레이 애니메이션이 라이브로 재생될 때 어떻게 작동하는지 더 깊이 이해할 수 있게 되었습니다. 스켈레톤 향상애니메이션 미러링이제 미러 데이터 테이블(Mirror Data Table) 및 Mirror 노드 를 사용하여 애니메이션 블루프린트에서 캐릭터 애니메이션을 손쉽게 미러링할 수 있습니다. 미러 데이터 테이블로 애니메이션 시퀀스뿐만 아니라 커브, 싱크 마커, 노티파이도 미러링할 수 있습니다. 이 기능에 대한 자세한 정보는 애니메이션 미러링 페이지를 참조하세요. 스켈레톤 호환성새로운 스켈레톤 호환성(Skeleton Compatibility) 프로퍼티로 장황한 리타깃 또는 리임포트 워크플로 작업 없이도 다른 스켈레톤 간 데이터를 공유할 수 있습니다. 이 기능을 사용하면 유사한 스켈레톤이 애니메이션 시퀀스, 애니메이션 블루프린트, 블렌드 스페이스 같은 애니메이션 데이터를 쉽게 공유할 수 있습니다. 스켈레톤 호환성을 유지하려면 호환하려는 스켈레톤의 이름이 동일해야 합니다. 향상된 로코모션이제 언리얼 엔진 5.0에 다양한 게임플레이 시나리오에 맞춰 애니메이션을 조정하는 기능이 포함됩니다. 디스턴스 매칭애니메이션 블루프린트에서 새로운 디스턴스 매칭(Distance Matching) 기능을 사용하여 게임플레이 애니메이션의 속도와 재생을 절차적으로 관리합니다. 디스턴스 매칭을 사용하면 애니메이션 재생을 애니메이션 커브 데이터를 사용하는 캐릭터 모션에 동기화합니다. 해당 조정을 스트라이드 워핑 에 결합하여 흔한 발 미끄러짐과 관련된 문제를 해결할 수 있습니다. 디스턴스 매칭 없음 디스턴스 매칭 사용 포즈 워핑이제 포즈 워핑(Pose Warping) 으로 캐릭터의 보폭 방향, 걷기 속도, 발 배치를 절차적으로 변경할 수 있습니다. 포즈 워핑은 애니메이션 포즈의 컴포넌트를 동적으로 워프할 수 있는 애니메이션 블루프린트의 새 노드 세트입니다. 이러한 노드를 사용하면 캐릭터의 복잡한 애니메이션을 개발하는 데 필요한 수작업이 줄어듭니다. 새 노드와 그 기능에 대한 자세한 정보는 포즈 워핑 페이지를 참조하세요. 오리엔테이션 워핑 없음 오리엔테이션 워핑 사용 모션 워핑신기능 모션 워핑(Motion Warping) 으로 캐릭터의 루트 모션을 동적으로 워프합니다. 모션 워핑을 사용하면 애니메이션 노티파이를 이용해 ‘워핑 윈도'를 정의한 뒤 블루프린트에서 설정하여 임의의 타깃으로 워프할 수 있습니다. 자세한 정보는 모션 워핑 페이지를 참조하세요. 머신 러닝 디포머이제 새로운 머신 러닝(Machine Learning, ML) 디포머를 사용하여 실시간 메시 디포메이션을 생성할 수 있습니다. ML 디포머의 목표는 영화 수준으로 오프라인에서 작업된 디포메이션을 실시간으로 가져오는 것입니다. 이 작업은 선형 스키닝된 스켈레탈 메시 위에 보정 디포메이션을 적용하는 방식으로 작동합니다. 이렇게 보정을 적용하면 오프라인 디포메이션에 더욱 근접하게 보입니다. 보정은 머신 러닝 알고리즘에 의해 학습됩니다. ML 디포머를 훈련하는 데에는 복잡한 디포메이션과 선형 스키닝을 둘 다 사용하는 변형된 예시 포즈가 수천, 수만 개 필요하고 디포머는 그 예시 포즈들의 차이를 학습하여 런타임에 적용합니다. 에픽은 훈련 데이터 생성을 돕기 위해 Maya 플러그인도 만들었습니다. 하지만 이 플러그인을 반드시 사용해야 하는 것은 아닙니다. 이 기능은 아직 완전히 실험단계에 있습니다. 메모리가 상당히 많이 필요하며 아직 퍼포먼스가 최적화되지 않았습니다. ML 디포머 사용법에 대한 자세한 정보는 머신 러닝 디포머 사용하기 페이지를 참조하세요. 오디오메타사운드완전히 프로그래밍 가능한 머티리얼 및 렌더링 파이프라인을 가진 머티리얼 에디터와 유사한 이 새로운 시스템을 통해 오디오 렌더링의 모든 측면을 관리하여 차세대 프로시저럴 오디오 경험을 끌어낼 수 있습니다. 메타사운드는 게임 데이터 및 블루프린트의 오디오 파라미터와 오디오 이벤트를 사용하여 사운드를 샘플 단위로 정확하게 제어 및 변조합니다. 또한 메타사운드 내에서 메타사운드를 구성하고, 파라미터 인터페이스를 정의 및 구현하고, 사용자 워크플로를 효율화하는 프리셋 시스템을 사용하도록 해 줍니다. 메타사운드는 사운드 큐 전반에서도 퍼포먼스가 크게 개선되었으며, 서드파티 플러그인에서 사용할 수 있는 완전 확장 가능 API를 제공합니다. 프로젝트 어쿠스틱에픽은 마이크로소프트(Microsoft)의 프로젝트 어쿠스틱(Project Acoustics) 팀과 협업하여 UE5용 프로젝트 어쿠스틱 플러그인을 심층 통합했습니다. 프로젝트 어쿠스틱은 오디오 프로퍼게이션, 리버브 및 기타 고급 음향 프로세싱의 시뮬레이션을 가능하게 해 주는 베이크된 차세대 음향 시스템입니다. 퍼포먼스 및 확장성에 중점을 둔 프로젝트 어쿠스틱은 이미 수많은 AAA 게임에서 활용하고 있으며, 곧 모든 언리얼 엔진 사용자가 언리얼 마켓플레이스에서 사용할 수 있습니다. 프로젝트 어쿠스틱에 대한 자세한 정보는 마이크로소프트의 프로젝트 어쿠스틱 개요에서 읽어보실 수 있습니다. 지오메트리 툴지오메트리 툴은 모든 산업의 언리얼 아티스트들에게 모든 해상도에서 메시를 생성 및 편집할 수 있는 다양한 툴을 제공합니다. UE 5.0에는 모델링, 베이킹, UV 편집에 필요한 새로운 툴 및 향상된 툴의 호스트가 포함됩니다. 아키텍처 기술의 발전은 이러한 향상을 지원하여 미래를 위한 프레임워크를 만듭니다. 모델링 툴트랜스폼 툴
스내핑
프리미티브 툴
폴리 편집 툴
큐브 그리드 툴
LOD 매니저
피벗 액터
서브디비전
폴리컷
불린
트림 툴
래티스 디포머
워프 디포머
스컬프팅
메시 단순화
메시 프로젝트
리메시
메시 디플레이스먼트
볼륨 생성 및 편집
복셀 블렌드 및 감쇠
재키팅
스태틱 메시 에디터 모델링 툴
베이크 및 메시 어트리뷰트(베타)언리얼 엔진 5는 텍스처링 및 머티리얼 베이킹 툴세트를 한층 확장하고 업데이트했습니다. 텍스처 및 머티리얼 베이킹은 에셋 개발에서 매우 중요한 부분입니다. 베이킹 툴은 LOD 생성에 중요한 역할을 할 뿐만 아니라, 에디터에서 바로 고급 머티리얼을 생성하는 워크플로를 만듭니다. 텍스처 베이크베이크 툴은 언리얼 엔진 5.0 얼리 액세스 출시 이후로 다음과 같이 다양하게 향상되었습니다.
모두 베이크 툴새로운 모두 베이크(BakeAll) 툴은 모델링 모드에서 사용 가능합니다. 텍스처 베이크(Bake Texture) 툴은 단일 메시의 디테일을 타깃 메시에 베이크하는 솔루션을 제공하는 반면, 모두 베이크(Bake All) 툴은 여러 소스 메시의 디테일을 상대적으로 폴리곤 수가 적은 단일 타깃 메시에 구울 수 있도록 지원합니다. UV 편집(베타)언리얼 엔진 5.0 내 UV 편집 툴이 크게 업데이트 및 확장되어 에디터 내부에서 직접 UV를 생성하고 편집하는 기능이 극적으로 확대되었습니다. 새로운 UV 에디터 패널새로운 UV 에디터 패널은 UV 레이아웃을 편집하는 주요 작업 공간입니다. 2D UV 패널은 레이아웃 패킹과 UV 오리엔테이션을 평가하는 주요 영역으로, 다음을 지원합니다.
프로젝트 UV 툴
자동 UV 툴
언리얼 에디터 인터페이스유저 인터페이스 업데이트언리얼 엔진 5를 제작하며 일관성 있고 간결한 유저 인터페이스(UI)를 업데이트했습니다. 디폴트 컬러를 이전보다 어두운 기본 테마로 조정했습니다. 사용자는 에디터 개인설정(Editor Preferences) 에서 테마(Themes) 를 설정해 에디터를 취향대로 커스터마이징할 수 있습니다. 아이콘은 보다 조밀하고 통일성 있는 형태로 업데이트했습니다. 콘텐츠 드로어, 사이드바 탭, 메뉴 생성 같은 신규 기능을 통해 원하는 툴에 손쉽게 접근하고, 뷰포트에 최대 스페이스를 구현할 수 있습니다. 콘텐츠 드로어콘텐츠 드로어 는 콘텐츠 브라우저 오버레이를 실행하는 신규 기능입니다. 콘텐츠 드로어로 패널을 도킹할 공간을 걱정하지 않고 빠르게 에셋을 찾을 수 있습니다. Ctrl+스페이스 바 를 누르면 콘텐츠 드로어를 열 수 있습니다. 아니면 콘텐츠 드로어의 탭 이름을 클릭해 드로어를 펼쳐도 됩니다. 콘텐츠 드로어는 에디터 레이아웃에 고정하거나 기존 콘텐츠 브라우저와 함께 사용할 수 있습니다. 사이드바 탭사용자는 이제 패널을 에디터 양쪽에 배치된 사이드바 탭에 도킹할 수 있습니다. 탭을 도킹해 스크린 공간을 가릴 필요 없이 자주 사용하는 패널에 접근할 수 있습니다. 얼리 액세스를 출시 후로 핀을 눌러 패널이 열린 채 고정할 수 있도록 업데이트했습니다. 로딩 및 배경 진행도 표시프로젝트가 실행되는 동안 스플래시 화면에 표시되는 디테일을 추가해, 로드하는 동안 더 많은 컨텍스트롤 제공하고 가시성을 개선합니다. 에디터 상태 표시줄의 우측 하단에 백그라운드 작업 진행도를 알려주는 인디케이터가 추가되었습니다. 이 프로그레스 바는 모든 백그라운드 작업의 진행도를 표시하며, 이 표시줄을 펼쳐 관련 작업별 진행도를 확인할 수 있습니다. 디테일 패널디테일 패널의 상단에 추가된 섹션 프로퍼티의 관련 카테고리에 신속히 접근해 스크롤 비용을 줄일 수 있습니다. 또한 주어진 액터 타입의 디테일 패널 상단에 자주 사용하는 프로퍼티를 즐겨찾기로 추가할 수 있습니다. 생성 메뉴이제 레벨 에디터 의 메인 툴바에 생성 버튼이 생겼습니다. 배치 가능한 액터와 퀵셀 브리지 혹은 언리얼 마켓플레이스 같은 콘텐츠의 소스에 빠르게 액세스할 수 있습니다. 액터는 드롭다운 메뉴에서 뷰포트로 직접 드래그하거나 카메라의 정면에서 빠른 배치를 클릭해도 추가할 수 있습니다. 이 방식으로 액터를 배치하면 이전처럼 액터 배치 패널을 레벨 에디터의 레이아웃에 고정하지 않아도 됩니다. 퀵셀 브리지 통합퀵셀 브리지가 언리얼 에디터에 직접 통합되었습니다. 에디터 레이아웃에서 퀵셀 브리지를 고정한 뒤, 에셋을 레벨로 직접 드래그하면 추가할 수 있습니다. 퀵셀 브리지 패널은 레벨 에디터 메인 툴바에 새로 추가된 생성(Create) 메뉴를 누르거나 창(Window) > 퀵셀 브리지(Quixel Bridge) 에서 액세스할 수 있습니다. 언리얼 엔진 5.0 프리뷰 버전을 이미 설치한 분은 사용하기 전에 퀵셀 브리지를 최신 버전으로 업데이트해야 합니다. 해당 플러그인은 에픽게임즈 런처에서 업데이트할 수 있습니다. 언리얼 엔진에 통합된 퀵셀 브리지의 자세한 정보는 다음 문서를 참조하세요. 다중 탭 모드복잡하고 추가 UI 요소 표시가 필요했던 일부 모드를 디폴트 툴바와 모드 세팅 대신 탭 시스템에 포함되도록 재설계했습니다. 이 변경사항은 프랙처 모드와 애니메이션 모드에 해당합니다. 탭을 닫은 경우 항상 창(Window) > 에디터 모드(Editor Modes) 에서 탭을 선택하여 다시 열 수 있습니다. 검색 가능 메뉴이제 서브메뉴가 있는 메뉴에서 검색을 할 수 있게 되었습니다. 검색 기준과 일치하는 모든 서브메뉴 내 액션에 액세스할 수 있도록 표시됩니다. 메뉴 및 위젯 개편명료성과 사용성을 개선하기 위해 일부 메뉴를 개편했습니다.
라이라 스타터 게임언리얼 엔진 5 출시와 함께 라이라(Lyra)에 대해 알려드릴 수 있게 되어 매우 기쁩니다. 라이라는 새로운 게임을 만드는 출발점 역할을 하고 언리얼 엔진 5.0 프레임워크를 이해하는 데 필요한 리소스를 학습하도록 도와주기 위해 제작된 신규 예제 게임플레이 프로젝트입니다. 모듈식 구조인 라이라에는 언리얼 엔진 5.0 개발과 함께 정기적으로 업데이트되는 코어 시스템 및 플러그인이 포함되어 있습니다. 포함된 핵심 기능:
도시 샘플 프로젝트도시 샘플 프로젝트는 디자이너와 개발자들이 어떤 식으로 새로운 시스템과 개선된 기존 시스템을 다양하게 결합해 광범위하고 매력적인 환경을 만들 수 있는지 탐구할 수 있는 놀이터 같은 공간입니다. 해당 예제는 PlayStation 5, Xbox Series S|X 하드웨어로 출시된 매트릭스 어웨이큰스: 언리얼 엔진 5 익스피어리언스 테크니컬 데모와 동일한 에셋으로 제작했습니다. 언리얼 엔진 5에서는 신규 기능 및 개선된 기능을 사용해 디자인, 배치, 역동적 라이트 설치가 가능한 대규모 월드를 아주 디테일하게 제작해 시각적으로 큰 충격을 선사할 도시를 구현할 수 있습니다. 도시는 규칙 프로세서를 사용한 절차적 생성을 이용해 설계 및 제작하였으며, 다음 기능을 사용해 실감 나는 도시를 구현합니다.
인공 지능언리얼 엔진 5.0에 탑재되어 새로 출시되는 기능들로 그 어느 때보다 신뢰도 높은 AI 에이전트를 만들 수 있게 되었습니다. 매스 엔티티(Mass Entity) 기능을 사용하면 데이터 지향 계산의 프레임워크가 제공됩니다. 이를 씬에 존재하는 수만 개의 AI 에이전트 시뮬레이션을 포함해 퍼포먼스가 중요한 경우에 사용할 수 있습니다. 또한 언리얼 엔진 5.0에 AI 에이전트 및 플레이어와 인터랙션할 수 있는 레벨에 배치된 오브젝트 컬렉션인 스마트 오브젝트(Smart Objects) 가 추가되었습니다. 이 시스템은 손쉽게 구성이 가능하며, 씬에 전례 없는 수준의 인터랙션성을 추가할 수 있습니다. 언리얼 엔진 5.0에서는 매스 회피(Mass Avoidance) 및 존 그래프(Zone Graph) 와 같은 기능으로 AI 에이전트 내비게이션이 크게 개선되었습니다. 매스 회피로 매스 엔티티 시스템을 사용하는 모든 엔티티에서 고성능 회피를 사용할 수 있고, 존 그래프로 특정한 내비게이션 플로를 활용한 효율적인 장거리 내비게이션을 사용할 수 있습니다. 함께 출시되는 스테이트 트리(StateTree) 는 확장 가능한 범용 계층 스테이트 머신으로, 비헤이비어 트리의 선택 툴과 스테이트 머신의 스테이트 및 트랜지션을 결합하여 만들었습니다. 스테이트 트리를 통해 안정적이고 체계화된 고성능 로직을 만들 수 있습니다. 매스 엔티티(실험단계 기능)매스 엔티티(MassEntity) 는 플레이어가 높은 수준의 퍼포먼스에서 시뮬레이션된 수만 개의 엔티티와 상호작용하도록 해 주는 데이터 지향 계산을 위한 프레임워크입니다. 매스 엔티티의 주요 데이터 구조는 프래그먼트(Fragment) 로, 계산에 사용되는 최소 단위의 데이터 조각을 나타냅니다. 프래그먼트의 종류로는 트랜스폼, 속도, LOD 인덱스 등이 있습니다. 프래그먼트는 컬렉션으로 그룹화 가능하며, 이 컬렉션의 인스턴스는 ID와 연계될 수 있습니다. 이 컬렉션 인스턴스를 엔티티(Entity) 라고 부릅니다. 엔티티 생성은 객체 지향 프로그래밍의 클래스 인스턴싱과 유사합니다. 그러나 엔티티는 클래스와 기능을 엄격하게 선언하는 대신 프래그먼트 컴포지션으로 빌드되고 이 컴포지션은 런타임에서 변경할 수 있습니다. 예를 들어, 엔티티의 컴포지션은 트랜스폼과 속도처럼 두 가지의 프래그먼트를 포함할 수 있습니다. 스마트 오브젝트(실험단계 기능)스마트 오브젝트(Smart Objects) 는 레벨 내 배치되는 오브젝트로, AI 에이전트와 플레이어가 상호작용할 수 있습니다. 스마트 오브젝트는 상호작용에 필요한 모든 정보를 포함합니다. 스마트 오브젝트는 글로벌 데이터베이스의 일부이며, 공간 파티셔닝 구조를 사용합니다. 따라서 위치, 에이전트와의 근접성, 태그와 같은 필터를 사용하여 런타임에서 쿼리가 가능합니다. 크게 보면 스마트 오브젝트는 예약 시스템을 통해 사용할 수 있는 레벨 내 활동세트를 나타냅니다. 매스 회피(실험단계 기능)매스 회피(Mass Avoidance) 는 매스 엔티티(MassEntity) 와 통합된 포스 기반 회피 시스템입니다. 이 시스템은 매스 엔티티 시스템을 사용하는 모든 엔티티에 높은 퍼포먼스의 회피를 제공합니다. 존 그래프(실험단계 기능)존 그래프(ZoneGraph) 는 메타데이터를 사용하여 특정한 내비게이션 플로(차선, 보도, 산책로 등)를 표현하는 가벼운 내비게이션 시스템으로, 월드의 물리적 표현에 집중하는 내비메시(Navmesh)와 반대되는 기능입니다. 메타데이터는 세그먼트로 연결된 점과 점을 잇는 통로 구조로 표현됩니다. 이 시스템은 AI 에이전트의 효율적인 장거리 내비게이션에 사용할 수 있습니다. 또한 구체적인 내비게이션 플로를 레벨에서 직접 지정해 레벨 내 에이전트 내비게이션에 높은 수준의 컨트롤을 수행할 수도 있습니다. 스테이트 트리(실험단계 기능)스테이트 트리(StateTree) 는 언리얼 엔진의 확장 가능한 범용 계층형 스테이트 머신으로, 비헤이비어 트리의 셀렉터 와 스테이트 머신의 스테이트 및 트랜지션 을 결합하여 만들어졌습니다. 이를 통해 안정적이고 체계화된 고성능 로직을 만들 수 있습니다. 스테이트 트리에는 트리 구조로 정렬된 스테이트가 있습니다. 스테이트 선택은 트리의 어느 위치에서든 트리거될 수 있습니다(최초 선택은 루트에서 트리거). 선택 과정에서 각 스테이트의 조건 입력(Enter Conditions) 이 평가되며, 통과할 경우 선택은 스테이트의 자손 스테이트로 넘어갑니다. 스테이트를 선택하면 리프 스테이트부터 루트 스테이트까지 모든 스테이트가 활성화됩니다. 각 스테이트는 이밸류에이터(Evaluator), 태스크(Task), 트랜지션(Transition) 으로 구성됩니다. 피직스디폴트로 활성화된 카오스 피직스카오스 피직스(Chaos Physics)는 언리얼 엔진 5에서 사용 가능한 가벼운 피직스 시뮬레이션 솔루션으로, 고도로 커스터마이징 가능할 뿐만 아니라 차세대 게임의 요구 조건에 맞도록 처음부터 새로 제작되었습니다. 이 시스템의 주요 기능은 다음과 같습니다.
카오스 피직스 시스템은 기존 피직스 시스템을 대체하며, 비동기 피직스 시뮬레이션, 견고한 디스트럭션 시스템, 피직스 필드, 유체 시뮬레이션 등 새 주요 기능이 추가되었습니다. 또한 배정밀도 월드를 완전히 지원합니다. 카오스 디스트럭션카오스 디스트럭션(Chaos Destruction) 시스템은 실시간으로 시네마틱 퀄리티 수준의 디스트럭션을 얻기 위해 사용되는 툴 컬렉션입니다. 이 시스템은 훌륭한 비주얼을 제공할 뿐 아니라 퍼포먼스에 최적화되어 있으며, 아티스트와 디자이너가 지오메트리 컬렉션이라는 새 에셋 타입과 직관적인 비선형 워크플로를 사용해서 콘텐츠 제작 및 프랙처링 프로세스를 더 세밀하게 제어할 수 있게 해 줍니다. 미리 프랙처링된 지오메트리를 사용하는 시뮬레이션 에셋을 구성하고 동적으로 생성된 리지드 컨스트레인트를 활용하여 시뮬레이션 중에 구조적 연결을 모델링합니다. 시뮬레이션 내의 결과 오브젝트는 피직스 필드 및 콜리전 등 환경적 요소와의 상호작용을 기반으로 연결된 구조에서 분리할 수 있습니다. 또한 카오스 디스트럭션에는 런타임에서 퍼포먼스에 미치는 영향을 최소화하면서 복잡한 디스트럭션을 원활하게 리플레이할 수 있는 새 캐시 시스템도 포함되어 있습니다. 카오스 디스트럭션은 나이아가라, 오디오 믹서 등의 다른 언리얼 엔진 시스템과 쉽게 통합되어 시뮬레이션 중에 파티클을 스폰하거나 특정 사운드를 재생합니다. 카오스 비히클카오스 비히클(Chaos Vehicles)은 언리얼 엔진 5의 새로운 비히클 피직스 시스템의 한 부분입니다. 카오스 비히클은 휠이 2개인 모터사이클부터 6개, 8개 또는 그보다 더 많은 휠이 달린 비히클까지 모두 지원합니다. 또한 이 시스템은 전진 및 후진 기어 구성을 개수에 제한 없이 지원합니다. 뿐만 아니라 카오스 비히클은 차대의 특정 위치에 다운포스나 업리프트를 제공하는 에어로포일 표면을 몇 개든 포함하여 구성할 수도 있습니다. 이러한 표면은 자동차 스포일러, 심지어 항공기 날개까지 시뮬레이션할 수 있습니다. 또한 비히클 차대를 직접적으로 더 잘 제어하도록 다수의 아케이드 스타일 포스를 추가할 수도 있습니다. 일반적인 예시로는 모터사이클을 똑바로 서 있게 해 주는 직접 토크 적용이나, 헬리콥터의 피치 또는 롤 직접 컨트롤이 여기에 해당합니다. 비히클 디포메이션매트릭스 어웨이큰스: 언리얼 엔진 익스피어리언스 출시에서 카오스 비히클을 활용해 견고한 디포메이션 시스템을 선보이며 차량이 파손될 때 사실적인 디포메이션을 표현했습니다. 이 신규 디포메이션 시스템은 컨트롤 릭과 카오스 비히클 시스템의 향상된 기능을 결합해 비히클 별로 다른 디포메이션을 표현합니다. 비히클의 운전 역학을 활용하고 질량 중심을 수정하며 매번 다른 충돌을 연출합니다. 시스템에서는 비히클 주변에 배치된 여러 피직스 바디를 사용해 콜리전을 감지합니다. UE5에 도입된 컨스트레인트 가소성 기능을 사용하면 특정 임계점을 지난 피직스 컨스트레인트를 영구적으로 분해할 수 있습니다. 언리얼 엔진 5에 블루프린트로 컨스트레인트의 어트리뷰트를 쿼리 및 수정하는 기능을 추가해, 디포메이션을 보다 세분화된 방법으로 조작할 수 있도록 했습니다. 뿐만 아니라 디자이너들은 게임플레이 도중 다이내믹 피직스 바디의 계층구조를 활성화 및 비활성화해, 피직스 시뮬레이션에 속한 여러 파트를 활성화 혹은 비활성화하고 퍼포먼스를 향상할 수 있습니다. 마켓플레이스에서 무료 데모를 다운로드하여 시스템을 테스트하고 더 많은 내용을 학습할 수 있습니다. 카오스 클로스 시뮬레이션카오스 클로스(Chaos Cloth) 시스템은 완전히 새로운 파라미터 및 사용자 컨트롤이 특징으로, 이 기능을 사용해 클로스 시뮬레이션의 요구에 맞는 다양한 룩을 손쉽게 생성 및 관리할 수 있습니다. 클로스당 콜리전 지원 증가부터(>32) 디버그 드로 CVARs, 마스크 컨트롤 추가까지, 카오스 클로스는 퀄리티가 높은 클로스를 그 어느 때보다도 쉽게 제작할 수 있도록 설계되었습니다. 또한 콜리전 백스탑을 시각화하기 위한 직관적인 컨트롤, 보다 유용한 애님 드라이브는 물론 향상된 바람도 제공됩니다. 언리얼 엔진 클로스의 완전히 새로워진 부분은 블루프린트 인터랙터 노드를 사용해 런타임에서 클로스를 더욱 제어할 수 있는 기능입니다. 또한 클로스 이펙트를 특정 지점에 적용할 수 있는 필드를 지원할뿐만 아니라 월드 콜리전을 손쉽게 생성할 수 있는 기능도 추가했습니다. 피직스 필드피직스 필드 시스템(Physics Field System) 을 통해 런타임에서 공간 내 특정 영역의 카오스 피직스(Chaos Physics) 시뮬레이션에 직접 영향을 줄 수 있습니다. 이 필드는 리지드 바디 및 클로스에 힘을 가하거나, 지오메트리 컬렉션 클러스터를 깨뜨리거나, 프랙처 리지드 바디를 고정 또는 비활성화하거나, 리지드 바디 애니메이션 노드 및 클로스와 상호작용하는 등 다양한 방식으로 피직스 시뮬레이션에 영향을 미치도록 구성할 수 있습니다. 그리고 피직스 필드 시스템은 나이아가라, 머티리얼 등 다른 엔진 시스템과도 통신할 수 있습니다. 이 시스템에서는 특정 위치의 필드를 평가할 수 있는 내장 함수로 피직스 필드를 샘플링할 수 있습니다. 나이아가라 유체 시뮬레이션언리얼 엔진 5.0에는 유체 이펙트를 실시간으로 시뮬레이션할 수 있는 아티스트 친화적인 툴 세트가 포함됩니다. 여기에는 나이아가라 에디터 내에서 사용할 수 있는 다양한 GPU 기반 시뮬레이터, 재사용 가능 모듈, 견고한 데이터 구조 등이 있습니다. 고급 사용자라면 광범위하게 노출된 파라미터를 활용하여 필요한 만큼 시뮬레이션을 수정할 수 있습니다. 유체 시뮬레이션 시스템은 게임과 시네마틱에서 사용할 수 있는 실시간 환경의 복잡한 유체 이펙트를 생성하도록 디자인되었습니다. 시스템을 사용하여 복잡한 시뮬레이션을 다양한 사용 사례에 사용 가능한 플립북 텍스처로 베이크할 수도 있습니다. 유체 시뮬레이션에 대해 자세히 알아보려면 마켓플레이스에서 콘텐츠 샘플 프로젝트를 다운로드하고 유체 시뮬레이션 문서를 확인하세요. 비동기 피직스 시뮬레이션이제 언리얼 엔진 5 사용자는 게임 스레드가 아닌 별도의 자체 피직스 스레드에서 피직스 시뮬레이션을 실행할 수 있습니다. 피직스를 자체 스레드에서 실행할 경우의 주요 장점은 시뮬레이션이 균일한 틱 간격으로 실행되어 예측 가능한 결과가 나온다는 점입니다. 또한, 이 기능을 사용하여 시뮬레이션이 항상 예측 가능한 방식으로 동작하도록 미세 조정할 수 있습니다. 그리고 이 동작은 서버와 클라이언트가 피직스를 같은 속도로 틱하게 하여 결과를 동기화하기 쉽게 하므로 네트워크 피직스의 토대 역할도 합니다. 나이아가라대규모 월드 좌표 지원언리얼 엔진 5.0에서는 대규모 월드 좌표 에서 작업하여 단일 레벨에서 훨씬 더 커다란 월드를 빌드할 수 있습니다. 메인 엔진에서 구현할 때는 대규모 월드 좌표 출시 노트에서 언급한 것처럼 플로트 대신 더블을 코어 데이터 타입으로 사용합니다. 따라서 정밀도가 32비트에서 64비트로 높아집니다. 그러나 나이아가라에서는 CPU와 GPU에서의 렌더링을 최대한 효율적으로 유지하기 위해 더 경제적인 접근법을 계획해야 했습니다. 따라서 더블을 구현하는 대신, 월드에 그리드 시스템을 구현했습니다. 한 플로트에는 그리드 내 나이아가라 시스템의 위치를 저장하고, 다른 플로트에는 월드에서의 그리드 위치를 저장합니다. 그러므로 나이아가라에는 대규모 월드 좌표와 함께 작업하기 위한 고유한 설정이 있습니다. 자세한 내용은 나이아가라의 대규모 월드 좌표 페이지를 참조하세요. 시뮬레이션 스테이지시뮬레이션 스테이지(Simulation Stages) 는 이전 언리얼 엔진 버전의 실험단계 기능이었습니다. UE5의 시뮬레이션 스테이지는 이제 정식 버전이며, 나이아가라 에디터에서도 바로 사용할 수 있습니다. 이미터 업데이트나 파티클 업데이트와 같은 나이아가라 스택의 그룹 자체가 바로 시뮬레이션 스테이지입니다. 하지만 원하는 이펙트에 필요한 만큼 시뮬레이션 스테이지를 추가할 수 있습니다. 시뮬레이션 스테이지는 구성 가능한 스테이지로, 이를 통해 나이아가라 에디터가 계산 및 반복작업을 수행하도록 할 수 있습니다. 배열, 2D 그리드, 3D 그리드, 렌더 타깃, 파티클 세트 전반의 반복작업 여부를 정의할 수 있는 for 루프와 같다고 볼 수 있습니다. 또한 콘텐츠 샘플(Content Examples) 프로젝트의 Niagara_Fluids 샘플에서 시뮬레이션 스테이지가 중요하게 활용된 사례를 볼 수 있습니다. 일부 이미터의 경우 시뮬레이션 스테이지가 수십 개 이상 존재할 수 있습니다. GPU 레이 트레이싱 콜리전(실험단계 기능)언리얼 엔진에서는 콜리전 모듈을 사용하는 레벨의 오브젝트와 충돌하도록 파티클 시스템을 구성할 수 있습니다. 이전 언리얼 버전에서는 GPU 이미터를 사용할 때 이 모듈에서 몇 가지 옵션을 고를 수 있었습니다. 일반적으로는 환경의 시뮬레이션을 생성하는 뎁스 버퍼(Depth Buffer) 옵션을 가장 많이 사용했습니다. 이 솔루션은 비용이 적게 들지만 정확도도 낮습니다. 모양이 정확하게 그려지지 않고, 파티클이 화면에서 벗어나면 즉시 사라집니다. UE5에서는 콜리전 모듈이 GPU에서 레이 트레이싱을 사용하는 옵션이 추가되었습니다. 이미터와 그 파티클이 화면에 있을 때나 없을 때나, 또는 오브젝트 뒤에 숨겨져 있을 때도 콜리전이 레이 트레이싱을 사용하여 정확한 결과를 계산해 냅니다. 이 계산은 비동기식으로 진행되므로, 나이아가라 콜리전이 한 프레임 뒤에 진행됩니다. 이 기능을 사용하려면 하드웨이 레이 트레이싱도 필요합니다. 이 실험단계 기능을 활성화하는 방법에 대한 자세한 내용은 GPU 레이 트레이싱 콜리전 문서를 참조하세요. 퍼포먼스 예산 책정게임을 빌드할 때는 씬 컴포지션에 따라 FX 워크로드에 많은 변동이 있을 수 있습니다. 특정 범위 밖에 있거나 예산 사용량을 초과하는 인스턴스를 컬링하는 등 퍼포먼스 관리에 도움이 될 만한 작업을 하고 싶을 수 있습니다. 퍼포먼스 예산은 이펙트 타입(Effect Type)의 일환으로 환경설정할 수 있습니다. 이펙트 타입 에셋을 사용하면 다양한 세팅을 환경설정한 다음 나이아가라 이펙트 컬렉션에 전반적으로 적용할 수 있습니다. 이 옵션은 모두 예산 스케일링(Budget Scaling) 이라는 항목에서 설정할 수 있습니다. 자세한 내용은 퍼포먼스 예산 책정 문서를 참조하세요. 캐스케이드 컨버터캐스케이드-나이아가라 컨버터는 캐스케이드 에셋을 나이아가라로 이주시킵니다. 캐스케이드 에셋을 우클릭한 뒤 나이아가라 시스템으로 변환(Convert to Niagara System) 옵션을 선택하여 액세스할 수 있습니다. 변환 작동 방식과 관련하여 내부적으로 향상된 기능은 다음과 같습니다.
모듈 변경사항이번 언리얼 엔진 버전에는 몇 가지 모듈에 변경되거나 추가된 사항이 있습니다. 박스, 스피어, 실린더, 토러스 로케이션 모듈 지원이 중단되었습니다. 이 네 가지 모듈은 셰이프 로케이션(Shape Location) 모듈로 종합 및 대체됩니다. 이 모듈에서는 원하는 셰이프를 선택한 뒤 그에 맞게 세팅을 조정할 수 있습니다. 또한 링/디스크 와 원뿔 셰이프가 추가되었습니다. Add Velocity점에서 속도 추가 , 선형 속도 추가 , 원뿔로 속도 추가 모듈 지원이 중단되었습니다. 이 세 가지 모듈은 속도 추가(Add Velocity) 모듈로 종합 및 대체됩니다. 이 모듈에서는 속도를 추가할 모드를 선택할 수 있으며 그에 따라 설정이 조정됩니다. 메시의 오리엔테이션을 벡터로 , 비행 오리엔테이션 , 퓨어 롤 오리엔테이션 모듈 지원이 중단되었습니다. 이 세 가지 모듈은 메시 오리엔테이션 업데이트(Update Mesh Orientation) 모듈로 통합되었습니다. 이 모듈에서는 원하는 메시의 방향을 선택하고 그에 맞게 세팅을 조정할 수 있습니다. 기본적으로 메시 오리엔테이션 업데이트 모듈은 이전 메시 오리엔테이션 업데이트 모듈과 동일하게 회전 속도(Rotation Rate)로 설정됩니다. 파티클 초기화이전 버전에는 두 개의 모듈이 있었습니다. 바로 파티클 초기화 및 리본 초기화 입니다. 이제 리본 기능이 파티클 초기화 에 병합되었습니다. 스태틱 변수자체 커스텀 모듈을 제작할 사용자를 위해, 나이아가라 스크립트 에디터에 스태틱 변수(Static Variables)라는 새 기능을 추가했습니다. 스태틱 변수는 컴파일 시간 후에도 변경되지 않는 정보를 포함한 변수입니다. 수학 연산을 하고 싶은 정보를 저장하거나 스택 내 다수의 모듈을 통해 전파하는 데 사용할 수 있습니다. 새 스태틱 변수를 생성하려면 '파라미터(Parameters)' 창의 더하기 기호(+)를 클릭하면 됩니다. 파라미터 패널에서 생성할 수 있는 스태틱 변수 타입으로는 스태틱 부울(Static Bool)과 스태틱 int32가 있습니다. 스태틱 변수가 빨간색 S로 표시되는 모습을 볼 수 있습니다. 스태틱 변수를 사용하여 이미터에서 옵션을 설정한 뒤, 해당 옵션을 서로 다른 시뮬레이션 스테이지에서 사용할 수 있습니다. 스태틱 변수는 모듈의 스태틱 스위치를 구동하는 데에도 유용하게 사용할 수 있습니다. 특히 세팅할 하이레벨 옵션이 많은 복잡한 이미터에 적합합니다. 일반적으로 이 옵션은 모듈 스크립트 내 스태틱 스위치를 사용하여 생성됩니다. 따라서 선택된 옵션에 따라 유저 인터페이스 내 요소를 표시하고 숨길 수 있습니다. Static Switch 노드에는 핀으로 노출(Expose as Pin) 옵션이 있습니다. 활성화하면 와이어로 스태틱 변수에 연결할 수 있습니다. 연결할 수 있는 스태틱 변수의 타입은 스태틱 스위치의 타입에 따라 다릅니다. 스태틱 부울, 스태틱 int32, 스태틱 열거형에서 와이어 연결 사용이 가능합니다. 이후 '선택(Selection)' 패널에서 스태틱 변수를 활성화하면 스태틱 스위치가 유저 인터페이스에서 옵션을 활성화합니다. 이미터 개요다양한 시뮬레이션 스테이지로 인해 일부 나이아가라 시스템이 매우 복잡해졌기 때문에, 자주 조정할 세팅을 찾기가 어렵게 느껴질 수 있습니다. 이에 따라 이제 각 이미터 상단에 이미터 개요(Emitter Summary)라는 영역이 추가되었습니다. 자주 사용하는 세팅이 이미터 개요에 표시되도록 환경설정할 수 있습니다. 이미터 개요에 파라미터를 추가하려면 모듈에서 파라미터를 우클릭한 뒤 이미터 개요에 표시합니다(Show in Emitter Summary) 를 선택하면 됩니다. GPU 스플라인이전에 스플라인 컴포넌트 데이터 인터페이스는 CPU 시뮬레이션에서만 작동했습니다. 이제는 GPU에서도 작동합니다. 데이터 레지스트리언리얼 엔진 5.0에서 데이터 레지스트리를 지원합니다. 데이터 레지스트리는 효율적인 데이터 구조용 글로벌 스토리지 공간으로, USTRUCT 매크로로 태그가 지정되어 있습니다. 데이터 레지스트리는 사용자 정의 캐싱 동작을 포함한 동기식 및 비동기식 데이터 액세스를 모두 지원하며 일반 읽기 전용 데이터와 함께 작동하도록 되어 있습니다. 새 태스크 시스템(Task System) 작업 매니저는 종속 태스크의 방향성 비순환 그래프(Directed Acyclic Graph, DAG)를 빌드 및 실행하여 사용자 코드를 비동기적으로 실행하는 프레임워크를 제공합니다. 이 프레임워크에는 개발자가 멀티스레드 환경에서 태스크를 예약할 수 있는 새 일반 API와 시스템이 포함됩니다. 이 시스템을 사용하면 소규모 태스크를 최적의 스레드 수에 맞게 효율적으로 분배합니다. 새 API를 이용하면 멀티스레드 디자인을 훨씬 간단하게 표현하고, 코어 수에 상관없이 타깃에 효율적으로 실행할 수 있습니다. 또한 새 태스크 인사이트(Tasks Insights) 뷰를 사용하면 디버깅 및 최적화 프로세스를 개선할 수 있습니다. 태스크 인사이트는 언리얼 엔진의 작업 매니저인 태스크 그래프(TaskGraph)의 향상된 버전입니다. 태스크 시스템 및 태스크 그래프는 동일한 백엔드(스케쥴러 및 작업자 스레드)를 사용합니다. 언리얼 인사이트언리얼 인사이트(Unreal Insights)는 프로젝트에서 최적화가 필요한 영역을 식별합니다. 독립형 프로파일링 시스템으로 통합되어 있는 툴로, 언리얼 엔진에서 발생한 데이터를 수집, 분석, 시각화합니다. 자체 프로파일링 데이터를 추가하여 프로세스를 단순화하고, 데이터를 원격으로 기록할 수 있게 하여 실행 중에 애플리케이션이 프로젝트에 미치는 영향을 최소화합니다. 타이밍 인사이트 창타이밍 인사이트(Timing Insights) 창으로 여러 CPU 및 GPU 트랙의 프레임 퍼포먼스 데이터를 볼 수 있습니다. 타이밍 뷰에 새 툴바가 추가되어 트랙 드롭다운 메뉴가 여러 메뉴로 분할되었습니다. 빠른 찾기빠른 찾기(Quick Find) 위젯은 타이밍 뷰에 표시되는 이벤트를 검색 및 필터링하는 데 사용됩니다. 위젯은 타이밍 뷰의 컨텍스트 메뉴에서 열거나, 타이밍 뷰를 선택한 상태에서 Ctrl + F를 누르면 실행됩니다. 빠른 찾기 위젯의 검색 로직은 그룹과 필터를 사용하여 정의됩니다. 그룹 노드는 자손 필터 노드를 포함하고, 자손의 결과에 적용될 로직을 정의합니다. 메모리 인사이트메모리 인사이트(Memory Insights)는 프로젝트의 메모리 사용 및 콜 스택 트레이싱을 조사할 수 있도록 해 주는 새로운 컴포넌트입니다. 런타임 컴포넌트는 런타임에 발생하는 모든 할당, 재할당, 해제 이벤트마다 이벤트를 트레이스한 뒤, 분석 과정에서 해당 메모리 사용 패턴을 재구성합니다. 메모리 인사이트 타임라인은 북마크, 에셋 로딩, CPU/GPU 타이머 같은 추가 트랙의 오버레이를 지원합니다. 개발자는 메모리 인사이트를 사용하여 메모리 블록별로 연결된 LLM 태그, 콜스택 등 메모리 할당 및 할당 해제와 관련된 상세한 정보를 언제든지 볼 수 있습니다. 조사(Investigation) 패널은 할당과 관련된 다양한 쿼리 기능을 제공합니다. LLM 태그는 다양한 LLM 태그의 비저빌리티를 제어합니다. 개별 서버 트레이스 프로세스언리얼 트레이스 서버는 백그라운드에서 단일 서버 인스턴스로 실행되며, 프로젝트의 여러 인스턴스 간에 공유할 수 있습니다. 퍼포먼스에 최소한의 영향만을 끼치는 가벼운 프로그램으로, 유저 인터페이스는 포함되어 있지 않습니다. 늦은 연결 향상이전 버전의 언리얼 인사이트에서는 인사이트 프로그램과의 연결이 늦어지면 연결 성공 전의 전에 일회성 이벤트(중요 이벤트)를 놓치는 경우가 있었습니다. 이제는 중요 이벤트가 언리얼 엔진 클라이언트 측에 캐시되므로, 연결되는 동안 연결이 늦어진 머신에 전송됩니다. 태스크 그래프 인사이트태스크 그래프 인사이트(Task Graph Insights)는 태스크 그래프 시스템에 대한 프로파일링을 제공합니다. 이 인사이트에는 태스크별로 관련 타이밍 이벤트를 보는 기능과 중첩 및 후속 태스크와 타이밍 이벤트와의 관련성을 표시하는 태스크 종속성이 포함됩니다. 컨텍스트 스위치컨텍스트 스위치(Context Switch)는 CPU 코어 트랙 관련 정보를 표시하는 신규 트레이스 채널입니다. CPU 코어마다 기록된 트레이스의 디테일을 표시하는 트랙이 있습니다. 기록된 트레이스의 예로 각 CPU 스레드에서 실행되는 각 이벤트를 표시하는 타이밍 이벤트가 있습니다. 런타임 에셋 로딩을 위한 젠 로더젠 로더(Zen Loader)는 언리얼 엔진 5.0의 디폴트 런타임 로더로, 컨테이너 파일에서 에셋을 로드합니다. 스테이징 페이즈 중에 오프라인으로 계산되는 오브젝트 종속성 그래프 및 최적화 패키지를 사용하여 CPU의 오버헤드 현상을 줄입니다. 컨테이너 파일은 파일 시스템 추상화를 방지하고, I/O 디스패처라는 새 I/O 추상화 레이어를 사용하여 최소한의 CPU 오버헤드로 데이터 청크를 찾아내는 로더를 제공합니다. I/O 디스패처는 플랫폼별로 지정된 백엔드를 사용하여 하드웨어의 성능 및 API를 활용합니다. 젠 로더는 이벤트 기반 로더(Event Driven Loader, EDL)를 기반으로 하며, 사용하려면 이름 테이블, 임포트/익스포트 맵, 프리로드 종속성 같은 쿠커의 동일한 출력 타입이 필요합니다. 레거시 EDL 런타임 로직은 오프라인으로 이전되었으며 스테이징 페이즈 도중 생성됩니다. pak 명령을 사용하여 스테이징을 진행할 때마다 EDL 대신 젠 로더를 사용합니다. 추가 변경 사항은 다음과 같습니다.
범용 UI 플러그인(베타)언리얼 엔진 5.0에 여러 레이어, 팝업, 서브 메뉴 등 내비게이션이 복잡한 크로스 플랫폼 유저 인터페이스 개발을 지원하는 범용 UI(CommonUI) 플러그인이 도입되었습니다. 범용 UI는 플러그인(Plugins) 메뉴에서 활성화할 수 있습니다. 이 플러그인은 아직 UE 5.0에서 베타 단계이지만, 포트나이트를 포함한 에픽게임즈의 다양한 제품에서 테스트되었으며 널리 사용되고 있습니다. 다음은 범용 UI의 툴에 관한 요약입니다. 범용 UI의 사용법에 대한 포괄적인 정보는 범용 UI 문서를 참조하세요. 활성화 가능 위젯일반 활성화 가능 위젯(Common Activatable Widget) 클래스는 위젯에 사용 가능한 신규 베이스 C++ 클래스입니다. 활성화 가능 위젯에서는 활성 및 비활성 상태를 토글할 수 있습니다. 비활성 상태에서는 계속 화면에 렌더링하지만 인터랙션이 불가능합니다. 이 클래스는 회색 표시된 메뉴 옵션처럼 메뉴의 내비게이션에서 비활성화하고 건너뛸 수 있는 요소를 나타내는 데 적합합니다. 활성화 가능 위젯은 기본적으로 비활성 상태라는 점에 유의하세요. 입력 라우팅UI는 사용자가 상황에 맞지 않는 메뉴와 실수로 인터랙션하는 상황을 막아야 하므로, 다수의 레이어가 배치된 창 및 프롬프트로 이루어진 복잡한 메뉴를 만들 때 난관에 부딪힐 수 있습니다. 입력 라우팅(Input Routing) 은 게임의 뷰포트 클래스에서 입력을 캡처하여 해당 프로세스를 자동으로 처리한 후, 이를 자손뿐만 아니라 뷰포트에서 최상단에 표시된 위젯으로 전달합니다. 예를 들어 2개의 메뉴가 겹쳐진 경우, 입력 라우팅 시스템에서 둘 중 상위 메뉴에 입력을 전달합니다. 이후 메뉴에서 해당 입력을 자손에게 라우팅합니다. 하위 레이어에 속한 메뉴는 입력을 전혀 받지 못하므로, 사용자는 상위 메뉴가 제거되거나 하위 메뉴가 상위 메뉴로 옮겨지기 전까진 자손 버튼과 인터랙션할 수 없습니다. 그리고 비활성 상태인 활성화 가능 위젯은 무시합니다. 입력 라우팅 사용 시 게임패드를 이용한 내비게이션을 더 만들기 쉽지만, 터치 입력 및 마우스와 키보드에도 사용할 수 있습니다. 입력 매핑 및 플랫폼 지원입력 디바이스의 버튼을 누르면 일반 액션 위젯에서 표시하는 아이콘이 자동으로 전환됩니다. 범용 UI는 다양한 플랫폼에 다음과 같은 쾌적한 UI 입력 매핑 툴을 제공합니다.
참고로 입력 액션 데이터 테이블에 나열된 액션은 범용 UI 유저 인터페이스에서만 사용할 수 있으며, 레거시 입력 및 고급 입력 시스템의 인게임 액션에 사용되는 액션과는 관련이 없습니다. 범용 UI 위젯 및 UI 스타일링범용 UI는 UMG의 팔레트의 범용 UI 플러그인(Common UI Plugin) 섹션에 속한 신규 위젯 라이브러리를 추가합니다. 새 위젯 중 상당수는 수많은 게임 및 애플리케이션에서 흔히 제작하는 UI 기능의 일부입니다. 해당 위젯은 다음과 같습니다.
범용 UI에 사용되는 스타일링 데이터 에셋은 표준 UMG 위젯에서 보통 발견할 수 있는 머티리얼, 텍스처, 폰트, 기타 스타일링 엘리먼트를 포함하는 블루프린트 클래스입니다. 범용 UI의 위젯은 위젯 자체의 스타일링 데이터를 유지하는 대신, 이러한 에셋의 레퍼런스를 사용합니다. UI 디자이너는 이러한 레퍼런스를 활용하여 다양한 메뉴와 HUD를 사용하면서도 손쉽게 스타일의 일관성을 유지할 수 있습니다. 뿐만 아니라 범용 UI 위젯의 새 인스턴스에 적용될 글로벌 디폴트 스타일을 제공할 수도 있습니다. 해당 옵션은 프로젝트 세팅(Project Settings) > 플러그인(Plugins) > 범용 UI 에디터(Common UI Editor) 메뉴의 템플릿 텍스트, 템플릿 버튼, 템플릿 보더에서 찾을 수 있습니다. 이러한 옵션에 스타일을 제공할 경우, 변경사항이 아직 다른 스타일을 보유하지 않은 모든 범용 UI 위젯으로 전파됩니다. 프로젝트 세팅(Project Settings) > 플러그인(Plugins) > 범용 UI 프레임워크(CommonUI Framework) 에서 더 분화된 엘리먼트용 에셋을 선택할 수도 있습니다. 이러한 에셋에는 로딩 가드에 사용하는 디폴드 쓰로버 머티리얼(Default Throbber Material) , UI에 언로드 된 엘리먼트용 플레이스홀더 이미지로 사용하는 디폴트 이미지 리소스 등이 있습니다. 슬레이트 및 UMG 퍼포먼스언리얼 엔진 5.0에서는 슬레이트와 UMG의 퍼포먼스가 향상되었습니다. 주요 개선 사항은 글로벌 인밸리데이션(Global Invalidation) 및 슬레이트 어트리뷰트(Slate Attributes) 사용으로, 프레임당 TAttribute를 여러 번 업데이트할 필요성이 줄어듭니다. 슬레이트 어트리뷰트의 자세한 정보는 Engine\Source\Runtime\SlateCore\Public\Types\SlateAttribute.h에서 찾을 수 있습니다. (4.24 버전에 도입된) 글로벌 인밸리데이션은 무효화된 위젯만 업데이트/페인트합니다. 이제 글로벌 인밸리데이션을 활성화하면 슬레이트 어트리뷰트가 적절하게 업데이트되므로, 프로젝트를 글로벌 인밸리데이션으로 쉽게 전환할 수 있습니다. 퍼포먼스의 이유로 게임 위젯에 슬레이트 어트리뷰트/어트리뷰트를 사용하지 않는 편이 좋습니다. 글로벌 인밸리데이션은 디폴트로 활성화되지 않으며, 일부 마이너 SWidget은 여전히 신규 시스템으로 변환해야 합니다. SWidget 계층구조의 안정성을 테스트하기 위해 다수의 검증 함수를 추가했습니다. 해당 함수는 위젯 리플렉터 에서 활성화할 수 있습니다. 버추얼 프로덕션언리얼 엔진 5.0은 버추얼 프로덕션 워크플로에 새로운 한 획을 그었습니다. UE 4.27에서 이룩한 안정성과 숙련도가 5.0에서 한층 더 발전됐습니다. 인카메라 VFX 툴에 4.27 버전의 모든 주요 워크플로를 포함하였으며, 스테이지 작업 및 콘텐츠 프로덕션을 추가로 지원하기 위해 UE 5.0에 새 기능을 추가했습니다. 나나이트는 버추얼 프로덕션 사용 사례에서 무비 렌더 큐 및 nDisplay 렌더링 파이프라인 양쪽에서 베타 기능으로 지원됩니다. GPULM 혹은 패스 트레이서와 함께 사용할 경우, 완전한 디테일의 표면 대신 나나이트 예비 메시를 사용합니다. USD의 지원 범위를 레벨에서 시퀀서로 확장하여, USD 파이프라인을 사용할 때 레이아웃 같은 프로덕션 워크플로로 언리얼 엔진을 활용할 수 있도록 했습니다. 루멘은 MRQ 렌더링 파이프라인에서 문서화된 제약이 있는 베타 기능으로 간주됩니다. 언뜻 보면 nDisplay와 함께 작동하는 것처럼 보이지만, 아직은 루멘을 인카메라 VFX 프로덕션이나 VR 및 nDisplay 렌더링 파이프라인을 사용하는 비슷한 워크플로에 사용할 수 없습니다. 사용자는 아티팩트나 퍼포먼스 관련 문제가 발생할 가능성을 염두에 두어야 합니다. 저희는 앞으로 루멘을 계속해서 개발하여 nDisplay 및 VR 워크플로 지원을 추가할 예정입니다. 인카메라 VFX에 나나이트, GPULM, 패스 트레이서 사용영화 제작자들은 인카메라 VFX 프로덕션에서 언리얼 엔진 5.0의 새 렌더링 기능을 활용하여 퀄리티를 극대화하고 창작의 자유를 최대한 누릴 수 있습니다. 나나이트를 사용하면 포스트 프로덕션 도중에만 사용할 수 있었던 VFX 스타일 에셋을 실시간으로 사용하고 GPU 라이트매스로 라이트를 적용할 수 있습니다. nDisplay의 패스 트레이서 지원 덕분에 라이팅 워크플로를 개방하여 스테이지에서 변경한 내용을 실시간으로 미리 볼 수 있습니다. 버추얼 프로덕션 콘텐츠 제작 시 사용할 툴세트를 더욱 발전시키기 위해 이번 출시 버전에서 nDisplay에서 버추얼 텍스처를 완전히 지원합니다. nDisplay 향상내부 프러스텀에 대한 오버스캔 지원, 페일오버 지원, nDisplay 환경설정 에디터 내 뷰포트 회전을 추가하여 언리얼 엔진 5.0의 nDisplay 툴을 더욱 향상시켰습니다. 추가 변경 사항은 다음과 같습니다.
내부 프러스텀에 대한 nDisplay 디렉셔널 오버스캔이제 상하좌우 방향별로 내부 프러스텀 오버스캔을 지정할 수 있습니다. 인카메라 - VFX 시나리오의 경우 이 기능은 특정한 방향으로 내부 프러스텀을 확장하여 이동 카메라의 지연시간까지 포함하거나 세트에 의해 부분적으로 흐려진 프러스텀의 렌더링 크기를 줄이는 데 유용합니다. 오버스캔의 해상도는 선택적으로 자동 조정되며 동일한 비주얼 퀄리티를 유지합니다. 내부 프러스텀에서 경계 시각화 및 오버스캔 기능을 보여주는 인카메라 VFX 셋업. 첫 번째는 내부 프러스텀에 오버스캔이 적용되지 않은 모습, 그다음은 오버스캔을 50% 적용하여 내부 프러스텀의 오른쪽 부분을 확장한 모습, 마지막은 전체 내부 프러스텀에 1.25 배수를 적용한 모습입니다. 출력 매핑 내 뷰포트 회전이전에는 nDisplay 뷰포트에 트랜스폼 연산을 적용하려면 스태틱 메시 또는 커스텀 UV 매핑을 적용한 외부 .obj 파일을 제공해야 했습니다. 이제 nDisplay 환경설정 에디터의 출력 매핑 패널에서 회전 및 스케일과 같은 트랜스폼 연산을 뷰포트에 직접 적용할 수 있습니다. 페일오버 지원이제 nDisplay 클러스터에 대한 페일오버 정책을 활성화할 수 있습니다. 현재 사용 가능한 페일오버 정책은 실패 시 S 노드 드롭(Drop S-node on fail) 하나뿐이며, 클러스터에 대한 네트워크 재시도 세팅을 초과하면 클러스터에서 세컨더리 노드가 드롭됩니다. 실패한 노드가 드롭되면 클러스터는 실패한 노드 없이 계속 작동됩니다. 프라이머리 노드가 드롭되면 클러스터가 종료됩니다. 새로운 콘솔 변수 에디터 플러그인(베타)콘솔 변수 에디터(Console Variables Editor) 는 프로젝트에 설정된 모든 콘솔 변수와 명령에 대한 정보를 표시하는 패널로, 모든 변수를 확인하고 수정할 수 있는 중심적인 위치를 제공합니다. 여러 프로젝트에 걸쳐 동일한 콘솔 변수 및 값을 사용하도록 프리셋을 생성할 수 있습니다. 콘솔 변수 에디터는 멀티 유저 세션에서 여러 컴퓨터의 콘솔 변수 및 명령 컨트롤도 지원합니다. 새로운 OpenCV 플러그인(베타)이전 버전에서는 OpenCV가 버추얼 프로덕션 툴세트에 포함되었습니다. 이번 출시에서 OpenCV는 독립형 플러그인이 되었습니다. 플러그인은 OpenCV 4.5.5 버전을 사용하며, ArUco 마커 트래킹이나 체커보드 트래킹과 같은 새 블루프린트 노드를 추가합니다. 리모트 컨트롤 향상다음과 같이 추가된 몇 가지 방법을 통해 새로운 씬에서 리모트 컨트롤 프리셋과 웹 애플리케이션을 세팅하는 데 소요되는 시간을 줄일 수 있습니다.
카메라 렌즈 보정 향상이번 출시에서 렌즈 디스토션 및 노달 오프셋을 보정하는 새로운 두 가지 알고리즘이 프리뷰에 포함되었으며, 렌즈 보정 프로세스는 다음과 같이 향상되었습니다.
DMX 향상DMX 툴세트는 다음과 같은 부분이 향상되었습니다.
레벨 스냅샷 향상레벨 스냅샷(Level Snapshots) 플러그인에 다음과 같은 기능 지원을 추가했습니다. nDisplay용 레벨 스냅샷(Level Snapshots for nDisplay) 플러그인 제거 및 레벨 스냅샷(Level Snapshots) 플러그인에 nDisplay 지원 추가
스위치보드 향상이번 출시에서는 스위치보드에 대한 사용자 경험에 초점을 맞춰 다음을 향상시켰습니다.
시퀀서 플레이리스트새로운 시퀀서 플레이리스트(Sequencer Playlist) 기능으로 레벨 시퀀스를 즉석에서 준비, 큐 등록, 트리거할 수 있습니다. 플레이리스트는 에디터에서 재생하기 위해 모든 서브시퀀스의 시간을 미리 조절할 필요성을 제거해 주므로 버추얼 프로덕션, 브로드캐스트 및 라이브 이벤트 스테이지의 애니메이팅된 콘텐츠와 인터랙션할 때 유연성과 민첩성이 높아집니다. 시퀀서 플레이리스트에는 다음과 같은 기능이 포함됩니다.
향상된 USD에픽게임즈는 유니버설 씬 디스크립션(Universal Scene Description, USD) 에 대한 지원을 늘리고 있습니다. 언리얼 엔진 5에서는 임포트/익스포트 프로세스 개선, 나나이트 및 시퀀서 등의 기능을 대상으로 USD 지원 확장에 초점을 맞추어 USD를 몇 가지 향상했습니다. USD 스테이지의 나나이트 지원언리얼 엔진 5에서 새로 도입되는 시각화 마이크로폴리곤 지오메트리 시스템인 나나이트를 USD 스테이지 액터에도 사용할 수 있습니다. 덕분에 수백만 폴리곤으로 구성된 필름 퀄리티의 소스 아트를 임포트하고, 3D 아티스트들이 에셋의 고해상도/저해상도 버전을 제작할 때 겪던 요구사항을 없애줍니다. 사용자는 나나이트 태그를 USD 파일의 에셋에 추가하여 나나이트를 USD 에셋에 활성화할 수 있습니다. 아니면 USD 스테이지를 세팅할 때 한계치를 제공해도 됩니다. 기타 USD 개선 사항이번 출시 버전에서도 USD 임포트/익스포트 파이프라인에 다음과 같은 향상된 기능이 추가되었습니다.
개발자 툴라이브 코딩언리얼 엔진에서 Live++ 통합을 사용하여 라이브 코딩(Live Coding) 을 지원합니다. 이 기능은 UE 4.22 버전에서 실험단계 기능으로 도입되었으며, 5.0의 모든 프로젝트에 디폴트로 활성화됩니다. 라이브 코딩을 사용하면 엔진 실행 중에 C++ 코드를 리컴파일하고 프로젝트의 바이너리를 패치할 수 있습니다. 에디터에서 플레이(Play In Editor, PIE)를 사용하는 도중에도 패치가 가능합니다. 라이브 코딩은 이전 버전의 핫 리로드 시스템에 비해 반복작업이 훨씬 빠르고 유연성이 뛰어나 기본적으로 활성화 상태입니다. 그러나 라이브 코딩을 비활성화하고 대신 핫 리로드를 사용할 수도 있습니다. IDE에서 C++ 코드를 편집할 경우 라이브 코딩 콘솔(Live Coding Console) 이 자동으로 나타납니다. 라이브 코딩 콘솔은 컴파일 상태에 대한 출력 로그를 제공합니다. 이는 표준 출력 로그와는 별도이며, 라이브 코딩 빌드 정보만 표시합니다. IDE나 언리얼 에디터에서 Ctrl + Alt + F11 을 누르면 언제든지 코드를 리빌드하고 게임의 바이너리를 패치할 수 있습니다. 빌드 상태를 표시하는 알림이 화면 우측 하단에 나타납니다. 빌드가 실행되는 동안 방해받지 않고 에디터에서 작업을 계속하거나 프로젝트를 테스트할 수 있습니다. 빌드에 성공하면 코드에 따른 변경 사항이 즉각적으로 적용되는 것을 볼 수 있습니다. 라이브 코딩은 언리얼 에디터가 열려 있을 때, PIE를 사용할 때, 네이티브 데스크톱 환경에서 패키지로 만든 빌드에 어태치할 때 작동합니다. 콘솔 및 모바일 디바이스 실행 시에는 작동하지 않습니다. 참고로 변수의 디폴트값을 변경할 경우, .cpp로 구현된 생성자에서 설정한 값은 오브젝트의 기존 인스턴스에 업데이트되지 않습니다. 그러나 .h 파일에서 변경하면 변경 사항이 적용됩니다. 라이브 코딩은 값 변경이나 함수 조정 등 작은 코드 조정을 매우 쉽게 처리합니다. 그러나 오브젝트 리인스턴싱(Object Reinstancing) 을 활성화하지 않은 상태로 구조적인 대규모 변경에 사용할 경우 예측할 수 없는 방식으로 동작하여 크래시가 일어날 수 있습니다. 자세한 내용은 아래 오브젝트 리인스턴싱의 노트 부분을 참조하세요. 오브젝트 리인스턴싱오브젝트 리인스턴싱은 라이브 코딩이나 핫 리로드로 C++ 코드를 리빌드한 뒤 오브젝트 인스턴스를 재생성합니다. 다음 UE 타입과 연관된 오브젝트에 영향을 미칩니다.
여기에는 액터 및 UObject 인스턴스 자체, 연관된 변수에서 파생된 블루프린트 노드 인스턴스, 그리고 이러한 매크로를 사용할 때 언리얼 리플렉션 시스템으로 생성한 다른 오브젝트가 포함됩니다. 핫 리로드 및 라이브 코딩은 기본적으로 오브젝트 리인스턴싱을 사용합니다. 에디터 개인설정(Editor Preferences) > 일반(General) > 라이브 코딩(Live Coding) 에서 리인스턴싱 활성화(Enable Reinstancing) 옵션을 토글하여 오브젝트 리인스턴싱을 비활성화하고 라이브 코딩을 켤 수 있습니다. 활성화하면 대규모로 코드를 변경할 때 라이브 코딩의 안정성과 일관성이 크게 증가합니다. 그러나 코드가 리인스턴싱될 수 있는 오브젝트에 포인터를 유지하는 경우, ReloadReinstancingCompleteDelegate 및 ReloadCompleteDelegate를 사용하여 포인터를 업데이트하거나 나중에 다시 채울 수 있도록 캐시를 무효화해야 합니다. 핫 리로드는 리인스턴싱된 오브젝트가 적절하지 않은 방식으로 레퍼런스 해제되는 상황을 어느 정도 허용하지만, 라이브 코딩은 에디터가 리인스턴싱된 오브젝트의 소멸자와 상충하여 종료되면 크래시를 일으킵니다. 클랭 새니타이저 지원이제 언리얼 엔진 5.0의 언리얼 빌드 툴에서 Linux, Android를 대상으로 클랭(Clang) 언어의 새니타이저(Sanitizers) 를 지원합니다. 새니타이저는 초기화되지 않은 메모리 액세스, 경쟁 조건, 메모리 누수 등 런타임 시 흔히 검출되는 특정 유형의 오류가 포함된 C++ 소스 코드를 빠르게 분석합니다. 새로 추가된 여러 UBT 아규먼트를 통해 다음 새니타이저를 사용할 수 있습니다. 새니타이저를 사용하려면 원하는 새니타이저에 UBT 명령을 사용하여 언리얼 빌드 툴을 실행합니다. 그러면 새니타이저가 최종 실행파일에 연결됩니다. 예를 들어 다음 명령을 사용하면 ASan 새니타이저가 프로젝트에 연결됩니다.
이후 애플리케이션을 실행하면 로그에 새니타이저의 오류 탐지 출력이 표시됩니다. Visual Studio에서 새니타이저를 사용하려면 프로젝트의 프로퍼티(Properties) 를 열고, Nmake > 명령줄 빌드(Build Command Line) 에 아규먼트를 추가하세요. 참고로 새니타이저를 실행할 때마다 위치에 상관없이 검사하는 프로그램의 속도가 2~3x 감소합니다. 클랭의 새니타이저와 관련된 자세한 내용은 해당 툴의 정보가 자세히 수록된 클랭 문서를 참조하세요. RAD 게임 툴Bink 오디오RAD Game Tools가 개발한 Bink 오디오 코덱이 언리얼 엔진 5에 내장되었습니다. Bink 오디오는 최적화 수준과 메모리 효율성이 높은 멀티플랫폼 범용 오디오 인코딩입니다. 사운드 웨이브 에셋에서 '포맷(Format)' 헤더 아래의 체크 박스를 눌러 간단하게 활성화할 수 있습니다. 턴키 플랫폼 자동화 시스템턴키(Turnkey) 는 플랫폼 지원을 간소화하는 언리얼 자동화 툴(Unreal Automation Tool, UAT) 의 새로운 시스템으로, SDK 설치 및 디바이스에 빌드 디플로이 등이 포함됩니다. 턴키의 목적은 조직 내의 사용자 대부분이 이러한 일반적인 작업을 '원클릭' 프로세스로 간단히 사용하는 파이프라인을 제공하는 것입니다. 턴키의 옵션 대부분은 언리얼 에디터 의 플랫폼(Platforms) 메뉴에서 찾을 수 있습니다. 여기서 설치된 SDK를 체크한 다음, 새 SDK를 설치하거나 기존 SDK를 업데이트합니다. 향후 이 메뉴는 언리얼 에디터의 모든 빌드 관리 옵션을 하나로 압축해 파일(File) > 패키지 프로젝트(Package Project) 옵션과 프로젝트 런처(Project Launcher) 를 모두 대체할 예정입니다. 디바이스 발견 및 클레임에는 아직 디바이스 매니저를 사용하지만, 빠른 실행 옵션을 사용하면 지정한 디바이스에 빌드를 빠르게 디플로이할 수 있습니다. 또한 RunUAT.bat 턴키를 실행하여 명령줄 인터페이스에서 턴키에 액세스할 수도 있습니다. 이렇게 명령줄 메뉴가 표시되는 동안, 턴키의 옵션을 .bat 파일로의 초기 콜 파라미터로 지정할 수 있습니다. 예를 들어 턴키를 빌드 및 디바이스 관리에 사용할 수도 있지만, 턴키의 가장 강력한 기능은 자동화된 SDK 설치입니다. 많은 플랫폼이 SDK를 자주 업데이트하지만, 언리얼 엔진의 모든 버전은 출시 시점의 특정 SDK 버전과만 호환됩니다. 따라서 개발자는 어떤 SDK를 사용해야 할지 결정하기가 어려울 수 있으며, 특히 각각 다른 버전의 언리얼 엔진으로 다수의 프로젝트를 제작 중일 때는 더욱 그렇습니다. 또한 업그레이드 시 조직 내 모든 구성원이 계속해서 최신 상태를 유지하는 것 역시 어려워집니다. 턴키는 현재 버전의 언리얼 엔진에 맞게 사용 가능한 최적의 SDK를 자동으로 가져와 설치함으로써 이 프로세스를 단순화합니다. 데스크톱 및 콘솔에서 이 기능을 사용하려면 조직이 액세스 가능한 위치에서 SDK 파일을 호스팅해야 합니다. 턴키는 Perforce나 Google Drive, 또는 이러한 SDK 파일을 호스팅하기 위한 로컬 파일 경로를 지원하며, 사용자는 턴키에서 확인해야 할 위치 관련 규칙과 조직에서 사용 가능한 SDK를 보유한 플랫폼을 설정할 수 있습니다. 턴키 설정 및 사용에 대한 전체 문서는 턴키 문서를 참조하세요. 모바일 플랫폼에서 사용하는 턴키 기능에 관한 정보는 모바일용 턴키 지원을 참조하세요. 모바일개발 요구 사항 및 호환 가능한 하드웨어다음은 언리얼 엔진 5.0이 지원하는 모바일 디바이스의 지원되는 OS 버전 및 최소 하드웨어 요구 사항입니다. 필수 SDK 및 IDE에 대한 자세한 내용은 플랫폼 SDK 업그레이드 섹션을 참조하세요. iOS, iPad OS, tvOSUE 5.0은 각 SDK 버전 14 이상을 지원하고 Apple A8 프로세서 이상을 사용하는 iOS, iPadOS, tvOS 디바이스를 지원합니다. 다음은 최소 호환 가능 디바이스 모델입니다.
AndroidUE 5.0는 다음 사양을 충족하는 Android 디바이스를 지원합니다.
모바일용 턴키 지원턴키를 사용하여 Android SDK 를 구성하면, 턴키는 필요한 버전의 Android Studio 다운로드, 추가 셋업 단계 및 스크립트 실행 같은 대부분의 셋업 절차를 자동화합니다. 아직 수동으로 설치 마법사를 실행해야 하지만, 이 방식은 오류가 발생할 가능성이 매우 낮습니다. 수동 SDK 설치도 가능하지만 자동화 프로세스를 추천합니다. 현재 Android용 macOSX에서는 턴키를 사용할 수 없지만, 향후 출시에 추가할 예정입니다. iOS, tvOS, iPadOS의 경우 프로비저닝을 엄격하게 제어하고 있기 때문에, 아직은 턴키에서 iOS 구성을 대상으로 프로비저닝 자동화를 지원하지 않습니다. 그래도 Xcode 구성 및 SDK 점검은 지원합니다. Android 파일 서버 플러그인UE 5.0에 Android 파일 서버(Android File Server, AFS) 플러그인을 도입합니다. 이 플러그인은 빌드를 생성할 때 파일 서버를 프로젝트에 임베딩합니다. 임베딩은 기본적으로 빌드를 출시할 때 비활성화됩니다. 디바이스의 AFS 인스턴스와 통신하여 다음 작업을 할 수 있습니다.
AFS는 외부 스토리지 권한이나 지정된 스토리지가 없어도 파일 연산을 처리할 방법을 제시합니다. AFS는 디폴트로 활성화되지만, ADB를 대신 사용할 경우 프로젝트 세팅(Project Settings) > 플러그인(Plugins) > Android 파일 서버(AndroidFileServer) 에서 비활성화할 수 있습니다. 플러그인이 활성화되면 개발 및 디버그 빌드에서 AFS를 사용하여 파일을 Android 디바이스에 푸시합니다. USB 연결을 사용하거나, WiFi를 사용하여 로컬 영역 네트워크에 연결된 디바이스에 푸시할 수 있습니다. 디플로이 속도를 단축하기 위해 USB 및 네트워크 결합됨(USB and Network Combined) 을 사용하여 파일을 두 경로에 동시 푸시할 수 있습니다. 한쪽 연결이 파일이나 배치 파일의 전송 영역을 차지하면 다른 연결이 이어받습니다. 이 과정은 디플로이 프로세스의 일부로 통합됩니다. 또한 AFS는 자체적인 명령줄 툴을 보유하고 있는데, 이 툴은 Engine/Binaries/DotNET/Android/UnrealAndroidFileTool에 속한 엔진의 설치 디렉터리에서 찾을 수 있습니다. 해당 디렉터리에는 Linux, MacOS, Windows용 실행파일의 버전이 포함됩니다. 명령줄을 통해 이 실행파일을 실행할 경우, 파일의 실행가능 함수를 전부 포함한 메뉴가 표시됩니다. 파라미터가 설정된 일부 명령의 경우 뒤에 ‘-help' 명령을 추가하면 명령에 관련된 정보를 볼 수 있습니다. 마지막으로 블루프린트 라이브러리를 사용하면 언리얼 애플리케이션 내부에서 AFS를 시작 및 중단할 수 있습니다. AFS에서 프로젝트를 위해 고유 보안 토큰을 생성하는 기초적인 보안 체계를 갖추고 있긴 하지만(프로젝트 세팅의 보안 토큰 파라미터 참조), 그래도 디폴트 브로드캐스트 서버를 사용하는 경우와 비교하여 AFS를 시작 및 중단하는 보다 안전한 수단을 생성하면 큰 도움이 됩니다. Android 파일 서버를 사용하려면 Android SDK 26 이상 버전이 필요합니다. Android 바이너리 크기 향상UE 5.0에는 Android 애플리케이션의 바이너리 크기를 대폭 줄여 주는 많은 최적화를 도입했습니다. 이 최적화에는 불필요한 코드 제거, 동일한 코드 접기, 코드 블로트 클린업을 활성화하는 컴파일러와 링커 플래그가 포함됩니다. 이 최적화를 이용하여 포트나이트의 바이너리 크기를 약 50% 절감했습니다. 바이너리 크기를 줄일 뿐 아니라 코드도 조금 더 효율적으로 만들 수 있습니다. 또한 일부 고급 바이너리 최적화의 경우 직접 활성화해야 하며, Android SDK 버전이 23이상인 경우에만 사용할 수 있습니다. *Engine.ini 파일에서 최소 SDK 버전을 변경할 수 있습니다.
고급 최적화를 활성화하려면 다음 세팅을 추가합니다.
최소 SDK 버전이 23 이상인 프로젝트는 기존 포맷 대신 새로운 GNU 해시 ELF 섹션을 사용하여 퍼포먼스를 개선하고 스타트업 시간을 단축합니다. 또한 진행 중인 프로젝트에서 Android 전용 압축 포맷인 APS 리로케이션 테이블 압축(APS Relocation Table Compression)을 활용할 수 있습니다. 일례로 에픽의 테스트에서 크기가 62MB인 리로케이션 테이블이 대략 8MB로 줄어들었습니다. 최소 SDK 버전이 28 이상인 프로젝트는 APS보다 효율성이 높은 RELR 리로케이션 테이블 압축(RELR Relocation Table Compression)을 활용할 수 있습니다. 일례로 에픽의 테스트에서는 62MB의 테이블이 약 600KB 혹은 두 자릿수 크기로 줄어들었습니다. 최소 SDK 버전을 23 이상으로 업그레이드하면 다른 장점이 있습니다. Android OS에서 개발자의 애플리케이션 APK에 있는 .so 바이너리를 직접 로드할 수 있어, 해당 바이너리를 디바이스에 따로 언팩하고 설치할 필요가 없어집니다. Google Play Store에서 판매되는 프로젝트의 경우, 사용자가 앱을 다운로드할 때 스토어 자체의 즉석 APK 압축으로 인해 바이너리 크기가 더욱 줄어듭니다. 하지만 다른 App Store에서는 항상 같은 효과를 기대할 수 없습니다. 언리얼 엔진은 기본적으로 APK 압축을 강화합니다. 비활성화할 경우 다음 환경설정 변수를 추가하면 됩니다.
DXC를 Vulkan 및 GLES 3.2의 기본 셰이더 컴파일러로 활용하기UE5의 Vulkan 및 OpenGL ES3.2용 셰이더 컴파일러 툴 체인이 HLSLcc에서 Microsoft의 DirectX Shader Compiler(DXC) 로 바뀌었습니다. 이 컴파일러는 SPIR-V를 직접 생성하며, 퍼포먼스 개선을 위해 GLSL 하이레벨 소스를 생성할 필요가 없습니다. 또한 SPIRV-Tools 최적화 패스를 사용하여 효율적인 SPIR-V 코드를 생성합니다. DXC는 최신 HLSL 언어 기능에 대한 액세스도 제공합니다. 또 Microsoft, Google, AMD의 개발자들을 포함한 대규모 온라인 커뮤니티의 지원을 활용할 수 있습니다. Vulkan의 경우, UE 5.0에서 사용할 수 있는 셰이더 컴파일러는 DXC가 유일합니다. HLSLcc 컴파일러는 Vulkan 백엔드에서 완전히 제거되었으므로 더 이상 사용할 수 없습니다. OpenGL ES3.2의 경우 HLSLcc를 아직 예비로 사용할 수 있으며, 에뮬레이트된 유니폼 버퍼 비활성화 시 OpenGL ES를 지원하는 유일한 수단을 제공합니다. 모바일 렌더링 개선 사항이제 다음 렌더링 기능을 UE 5.0의 모바일 렌더링 파이프라인에서 사용할 수 있습니다. 사전 통합된 서브서피스 스캐터링 셰이딩 모델(베타)(왼쪽부터) SSS 없음, SSS 활성화(PC), SSS 활성화(모바일) 이제 모바일 포워드 렌더러가 서브서피스 프로파일(Subsurface Profile) 셰이딩 모델을 지원하므로 모바일 애플리케이션에서 스킨, 왁스, 플라스틱 등의 머티리얼을 한층 디테일하게, 정확한 라이팅으로 나타낼 수 있습니다. 효율성을 위해 디퓨전 프로파일이 룩업 테이블로 사전 통합되었으며, 이는 런타임에서 조정할 수 있습니다. 모바일 서브서피스 모델에는 커버처 맵이 필요하지만, 모바일이 아닌 서브서피스 모델은 데스크톱 및 콘솔의 서브서피스 프로파일에 사용되는 같은 파라미터와 모두 호환 가능합니다. 디스턴스 필드 섀도 지원(실험단계 기능)UE 5.0에서 모바일 렌더러는 디스턴스 필드 섀도(Distance Field Shadows) 를 지원합니다. 다이내믹 라이팅을 사용하는 모바일 프로젝트에서 이 기능을 활성화하면 캐스케이드 섀도 맵과 함께 디스턴스 필드 섀도를 제공합니다. 캐스케이드 섀도 맵이 카메라에 근접한 오브젝트에 섀도를 제공하는 반면, 디스턴스 필드 섀도는 카메라에서 더 먼 거리에 있는 섀도를 채웁니다. 다이내믹 라이팅이 필요한 게임과 캐스케이드 섀도 맵의 허용 거리보다 더 멀리서 섀도를 렌더링해야 하는 게임에 유용합니다. 디스턴스 필드 섀도는 대다수의 모바일 하드웨어에서 실험단계 기능입니다. 사용하려면 Engine/Config/Android 또는 Engine/Config/IOS에서 ‘DataDrivenPlatform.ini'를 찾습니다. 이후 타깃 플랫폼의 해당되는 [ShaderPlatform ...] 섹션에서 bSupportsMobileDistanceField, bSupportsDistanceFields, bSupportsByteBufferComputeShaders를 true로, r.DistanceFieldShadowing을 1로 설정합니다. 설정한 뒤, 레벨 내 라이팅 소스에서 디스턴스 필드 섀도를 활성화하면 됩니다. 디스턴스 필드 섀도는 뎁스 프리패스가 필요하며, 이 경우 드로 콜 수가 약 2배로 늘어난다는 점에 유의하세요. 이는 모바일 게임에 심각한 영향을 미칠 수 있으므로 게임에 사용하기 전에 타깃 하드웨어에서 퍼포먼스 테스팅을 수행해야 합니다. 모바일 퍼포먼스 향상UE 5.0의 모바일 렌더링 파이프라인에 패스 렌더링을 진행하는 동안 드로 콜과 연산 횟수를 줄일 수 있는 여러 최적화를 추가했습니다. 캐스케이드 섀도 맵 캐싱(실험단계 기능)다이내믹 라이팅에 크게 의존하는 대규모 월드는 긴 드로 디스턴스에서 잠재적으로 수백 개의 스태틱 메시에 대한 다이내믹 섀도를 필요로 하므로, 렌더링 퍼포먼스 비용이 과도하게 높아질 수 있습니다. 특히 모바일 디바이스에서 상당한 제약이 있습니다. 언리얼 엔진 5.0은 이러한 환경에서 드로 콜을 절약하고 잠재적인 퍼포먼스를 개선하는 스태틱 메시용 캐스케이드 섀도 맵(Cascaded Shadow Maps, CSM) 캐싱 시스템을 제공합니다. 이 기능을 사용하려면 '프로젝트 세팅(Project Settings)' 메뉴에서 CSM 캐싱 활성화(Enable CSM Caching) 세팅을 활성화한 뒤 언리얼 에디터를 재시작합니다. 이 기능은 실험단계이며, 퍼포먼스 향상을 보장하지는 않습니다. CSM 캐싱이 드로 콜을 절약하는 것은 사실이지만, 섀도 맵 복사 패스를 추가하여 대역폭 비용이 늘어날 수도 있습니다. CSM 캐싱이 프로젝트에 도움이 될지 여부는 항상 타깃 하드웨어에서 비교해 보아야 합니다. 스킨캐시이제 모바일 프로젝트에서 프레임 시작 시 스켈레탈 메시 스키닝을 한 번 사전 연산한 뒤 해당 연산을 동일 프레임 내 서로 다른 렌더링 패스에 재사용하는 스킨캐시(SkinCache) 가 지원됩니다. 이는 많은 수의 스켈레탈 메시를 사용하는 모바일 프로젝트에서 퍼포먼스를 비약적으로 개선합니다. 기본적으로 스킨캐시는 모든 플랫폼에서 비활성화 상태입니다. 활성화하려면 '프로젝트 세팅(Project Settings)'을 열고 스킨 캐시 계산 지원(Support Compute Skin Cache) 을 활성화합니다. GPU 씬 인스턴싱 및 컬링UE 5.0에서는 모바일의 다이내믹 인스턴싱 및 GPU 인스턴스 컬링이 향상되었습니다. GPU 씬 인스턴싱 및 컬링은 프로젝트의 드로 콜을 대폭 줄여 렌더링 퍼포먼스를 향상시킬 수 있습니다. 얻을 수 있는 효율은 프로젝트의 콘텐츠에 따라 다릅니다. 동일한 머티리얼을 포함한 메시를 많이 사용하는 프로젝트의 경우, 이 기능을 활용하여 가장 큰 이득을 볼 수 있습니다. GPU 씬 인스턴싱 및 컬링을 활성화하려면 DefaultEngine.ini 파일을 열고 [/Script/Engine.RendererSettings] 카테고리를 찾거나 추가한 뒤 r.Mobile.SupportGPUScene=1을 추가합니다. XR가변 비율 셰이딩을 위한 Vulkan 지원가변 비율 셰이딩(Variable Rate Shading, VRS)은 렌더 타깃의 픽셀 셰이딩 비율 조정하는 다양한 메서드를 제공하는 최신 GPU에서 지원하는 기능입니다. 언리얼 엔진 VRS 지원 대상이 추가되었습니다.
VR 템플릿 업데이트이번 출시에서는 VR 템플릿의 기능이 다음과 같이 향상되었습니다.
데이터스미스에디터 내 다이렉트 링크언리얼 엔진 5에서 언리얼 에디터 내 데이터스미스 다이렉트 링크에 대한 지원을 추가했습니다. 다이렉트 링크를 사용하여 언리얼 에디터에서 외부 디자인 애플리케이션(Revit, Rhino, Archicad 외 다이렉트 링크로 데이터스미스를 지원하는 기타 디자인 애플리케이션)의 씬에 생긴 변경사항을 실시간으로 시각화할 수 있습니다. 해당 기능을 사용하면 워크플로를 간소화하고, 시간이 많이 걸리는 익스포트 및 리임포트 작업을 진행할 필요가 없습니다. 대신 그 에너지를 놀라운 아키텍처 시각화 작업에 집중할 수 있습니다. 다이렉트 링크는 데이터스미스 파일의 임포트 / 리임포트 워크플로와 동일하게 작동합니다.
데이터 포맷에픽은 언리얼 엔진으로의 gITF 파일 임포트 지원을 지속적으로 개선하고 있습니다. 이번 출시에서는 gITF 임포터 플러그인에 다음 PBR 스키마 지원을 추가했습니다. 데이터스미스 CAD 임포터에도 상당한 업데이트가 이루어졌습니다. 유저 인터페이스 및 워크플로는 비슷하지만, 임포트 결과는 언리얼 엔진의 기존 버전에 비해 많은 변화가 있었습니다. 이제 JT 파일 내부에서 파라메트릭 데이터와 메시 중 임포트할 대상을 지정할 수 있습니다. 덕분에 언리얼 엔진에 임포트할 데이터에 대한 제어 및 작업의 유연성이 증가했습니다. 이 옵션은 ds.CADTranslator.PreferJtFileEmbeddedTessellation 콘솔 변수에서 볼 수 있습니다. ds.CADTranslator.SitchingTolerance 콘솔 변수를 사용하여 힐(Heal) & 소우(Sew) 봉합 기법에 대한 봉합 허용치를 수정할 수 있습니다. 해당 값은 언리얼 유닛에 속합니다. Solidworks데이터스미스를 이용해 Solidworks에서 언리얼 엔진으로 익스포트할 수 있는 기능의 범위를 확장했습니다. 이제 Solidworks 프로젝트를 *.udatasmith 파일에 더 높은 퀄리티로 익스포트할 수 있습니다. 언리얼 엔진 5를 출시하며 다음 Solidworks 기능에 대한 익스포트 지원을 추가했습니다.
Revit이번 출시에서는 Revit에서 *.udatasmith 파일로 익스포트하거나 다이렉트 링크를 통해 익스포트할 데이터에 대한 사용자 컨트롤을 향상했습니다. 덕분에 Revit 씬을 임포트/리임포트 한 뒤에 언리얼 프로젝트에서 수동으로 조정하고 불필요한 데이터 및 에셋을 제거할 필요성이 줄어듭니다. 이제 다음 추가 옵션의 환경설정할 수 있습니다.
신경망 추론신경망 추론 플러그인(The Neural Network Inference plugin, NNI)은 언리얼 엔진에서 실시간으로 신경망을 평가하기 위해 사용하는 새 플러그인입니다. 이 플러그인은 ML 디포머 시스템 기반의 머신 러닝 같은 기능을 제공하며, ML 네트워크를 통해 아주 높은 고해상도 버텍스 오프셋 데이터를 압축하고 실시간으로 재생할 수 있습니다. 이 시스템은 애니메이션, ML 기반 AI, 카메라 트래킹 등 개발상 난제를 해결하기 위해 마련한 수많은 ML 기반 접근법의 기반 역할을 합니다. NNI는 업계 표준 ONNX 모델 포맷을 지원하며, 표준 ML 훈련 프레임워크(PyTorch, TensorFlow, MXNet 등)에서 익스포트하는 모든 모델을 실행할 수 있습니다. 이를 이용하여 익스포트 된 ML 모델을 가져와 엔진에서 직접 실행할 수 있습니다. 팀에서는 Microsoft와 긴밀히 협력하여 ONNX 런타임 프로젝트를 NNI 플러그인의 추론 시스템 중 핵심으로 활용하고 있습니다. 플러그인의 초기 버전은 PC(Windows/Linux/Mac) 및 콘솔(PS5/Xbox Series X)에 대한 추론을 지원합니다. 아직 GPU 평가는 Windows DirectX 12에서만 지원합니다. 플랫폼 SDK 업그레이드출시할 때마다 플랫폼 협력사의 최신 SDK 출시를 지원하도록 엔진을 업데이트합니다.
업그레이드 노트피직스
XR
AIImprovement:
Bug Fix:
Behavior TreeNew:
Debugging ToolsNew:
New:
Improvement:
Bug Fix:
AnimationNew:
Improvement:
Crash Fix:
Bug Fix:
Deprecated:
Removed:
Animation AssetsNew:
Improvement:
Crash Fix:
Bug Fix:
Animation BlueprintsNew:
Improvement:
Crash Fix:
Bug Fix:
Deprecated:
Removed:
Animation ToolsNew:
Improvement:
Bug Fix:
Deprecated:
Import/ExportNew:
Bug Fix:
Deprecated:
Skeletal MeshNew:
Crash Fix:
Bug Fix:
Deprecated:
AudioNew:
Improvement:
Bug Fix:
Deprecated:
ConsoleAll XboxNew:
Bug Fix:
Playstation 4New:
Bug Fix:
Playstation 5New:
Bug Fix:
QuailBug Fix:
SwitchNew:
Crash Fix:
Bug Fix:
Deprecated:
XBox One GDKBug Fix:
CoreNew:
Improvement:
Crash Fix:
Bug Fix:
Deprecated:
Removed:
CookerNew:
Bug Fix:
Deprecated:
Memory ProfilerBug Fix:
Network ProfilerCrash Fix:
UnrealFrontendBug Fix:
UnrealPakNew:
Bug Fix:
DatasmithNew:
Bug Fix:
AutomationNew:
Bug Fix:
AutomationToolBug Fix:
BuildGraphNew:
UnrealBuildToolNew:
Crash Fix:
Bug Fix:
Deprecated:
New:
EditorNew:
Improvement:
Crash Fix:
Bug Fix:
Content BrowserNew:
Material EditorBug Fix:
Media FrameworkBug Fix:
ScriptingNew:
Static Mesh EditorNew:
Bug Fix:
Gameplay FrameworkNew:
Improvement:
Crash Fix:
Bug Fix:
Deprecated:
Removed:
GeometryNew:
Improvement:
Bug Fix:
Learning ResourcesContent ExamplesBug Fix:
DocumentationNew:
LocalizationNew:
Bug Fix:
MobileNew:
Bug Fix:
Removed:
AndroidNew:
Improvement:
Bug Fix:
iOSNew:
CL: 17921199
CL: 17591802
CL: 17403931
CL: 17348846
CL: 17093848
CL: 16921709 Improvement:
CL: 19089743 Crash Fix:
Platforms - iOS CL: 18581533 Bug Fix:
Rendering - Mobile Rendering CL: 19110691
CL: 18689185
CL: 18104390
CL: 17961893
CL: 17113348
Platform - Mobile - iOS CL: 19153534
CL: 19092069
CL: 19237934
Platform - Mobile - tvOS CL: 19284387
Rendering - Mobile Rendering CL: 19243809
Deprecated:
Removed:
NetworkingNew:
Crash Fix:
Bug Fix:
Deprecated:
ReplaysNew:
Bug Fix:
New:
Bug Fix:
Deprecated:
Socket SubsystemNew:
NiagaraNew:
Improvement:
Bug Fix:
OnlineNew:
Crash Fix:
Bug Fix:
HTTPNew:
[HTTP.HttpThread] RunningThreadedRequestLimit=11
Each one of these categories has soft and hard limits to be defined as follows:
When used in a configuration file, it would look like this: [HTTP] FlushSoftTimeLimitDefault=2.0 FlushHardTimeLimitDefault=4.0 FlushSoftTimeLimitBackground=2.0 FlushHardTimeLimitBackground=4.0 FlushSoftTimeLimitShutdown=2.0 FlushHardTimeLimitShutdown=4.0 FlushSoftTimeLimitFullFlush=-1.0 FlushHardTimeLimitFullFlush=-1.0 Online SubsystemNew:
[OnlineSubsystemGDK] GamertagComponentOverride=Classic Overrides can be: Classic, Modern, ModernSuffix, or UniqueModern. If no override is specified, the system will use Modern.
Improvement:
Bug Fix:
Deprecated:
Pixel StreamingNew:
Additionally, a number of the settings available in the player.html and app.js have been removed and trimmed down to a subset of settings we believe are genuinely helpful to configure through the web frontend - the rest are now only settable as console variables and launch arguments to your Pixel Streaming application. Following this decision, we have also changed the "Test Latency" button to be a "Get Report" button that reports a subset of stats using the newly exposed WebRTC stats in Pixel Streaming.
Improvement:
Crash Fix:
Bug Fix:
Removed:
WebSocketsNew:
PhysicsNew:
Bug Fix:
Deprecated:
ClothingNew:
Improvement:
Bug Fix:
Physics Asset EditorNew:
Bug Fix:
Rigid BodiesNew:
Bug Fix:
PlatformsNew:
All GDKNew:
LinuxNew:
Bug Fix:
MacNew:
Bug Fix:
VRNew:
Bug Fix:
WindowsNew:
Crash Fix:
Bug Fix:
WinGDKNew:
XRBug Fix:
RenderingNew:
Improvement:
Crash Fix:
Bug Fix:
Deprecated:
Removed:
FXNew:
Crash Fix:
Bug Fix:
LightingNew:
Improvement:
Bug Fix:
Removed:
MaterialsNew:
Improvement:
Bug Fix:
Removed:
Mobile RenderingNew:
Improvement:
Crash Fix:
Bug Fix:
Removed:
NaniteNew:
Improvement:
Crash Fix:
Bug Fix:
OptimizationsNew:
Improvement:
Bug Fix:
Deprecated:
Removed:
PostprocessingNew:
Bug Fix:
UnrealLightmassCrash Fix:
SequencerNew:
Improvement:
Bug Fix:
Removed:
New:
Improvement:
UnrealVSNew:
Improvement:
Optimization:
Bug Fix:
UINew:
Bug Fix:
SlateNew:
Crash Fix:
Bug Fix:
UMGNew:
UMG
Common UI
UMG
Common UI
UMG
Crash Fix:
Bug Fix:
Common UI
Virtual ProductionNew:
Improvement:
Crash Fix:
Bug Fix:
Deprecated:
Removed:
WorldbuildingNew:
Bug Fix:
Deprecated:
Data LayersNew:
Bug Fix:
LandscapeNew:
Bug Fix:
One File Per ActorNew:
Bug Fix:
World PartitionNew:
Bug Fix:
XRNew:
Bug Fix:
Deprecated:
ARBug Fix:
VRNew:
Bug Fix:
Upgrade NotesAIUpgrade Notes:
AnimationAnimation ToolsUpgrade Notes:
AudioUpgrade Notes:
CoreUpgrade Notes:
CookerUpgrade Notes:
DatasmithUpgrade Notes:
EditorAPI Change:
Upgrade Notes:
New:
MobileAndroidUpgrade Notes:
NetworkingUpgrade Notes:
OnlineAPI Change:
Online SubsystemAPI Change:
Upgrade Notes:
Pixel StreamingAPI Change:
Upgrade Notes:
PlatformsUpgrade Notes:
VRUpgrade Notes:
RenderingUpgrade Notes:
LightingUpgrade Notes:
Virtual ProductionUpgrade Notes:
WorldbuildingUpgrade Notes:
XRUpgrade Notes:
|