포트나이트 언리얼 에디터(Unreal Editor for Fortnite, UEFN)에서는 프로젝트의 유효성 검사 프로세스를 실행하여 제공된 프로젝트 데이터가 유효하며 사용 가능한지 확인합니다. UEFN 프로젝트는 처리 및 유효성 검사하여 에픽의 서버에서 실행됩니다.
포트나이트 또는 언리얼 엔진 5에서 사용할 수 있는 모든 에셋과 오브젝트를 UEFN 프로젝트에서 사용할 수 있는 것은 아니므로, 프로젝트를 업로드하기 전에 이 검사를 수행하는 것이 중요합니다. 유효성 검사는 프로젝트가 에픽 서버에 업로드되기 전과 업로드된 후 실행되며, 프로젝트의 모든 것이 처리되기 전에 올바르게 환경설정되었는지 확인합니다.
UEFN의 조건을 충족하지 않는 프로퍼티를 가진 오브젝트가 있는 경우, 프로젝트는 제대로 처리되지 않을 것입니다. 즉, 세션을 시작할 수 없게 되며, 퍼블리싱할 수 없게 됩니다.
이러한 유효성 검사는 시간이 흐르면서 UEFN이 변경됨에 따라 함께 변경됩니다.
UEFN 유효성 검사
UEFN에서는 다음과 같은 유효성 검사를 실행합니다.
특정 플랫폼 - UEFN 프로젝트는 모바일 플랫폼에서 실행할 수 있습니다. 모바일 플랫폼에서는 콘솔 플랫폼보다 현저히 적은 메모리가 사용됩니다.
허용된 타입 및 에셋 - UEFN에서는 UE5에 허용된 대부분의 타입이 지원되지만 전체가 지원되는 것은 아닙니다.
총 텍스처 크기 및 텍스처 사용량 - 이는 특히 콘솔 플랫폼에서 적은 메모리로 프로젝트를 실행하는 데 도움이 됩니다.
프로퍼티 유효성 검사 - 일부 오브젝트 프로퍼티의 경우 UEFN이 지원하는 모든 플랫폼에서 작동하는 것은 아니므로, 이러한 프로퍼티는 UEFN에서 비활성화됩니다.
레퍼런스 유효성 검사 - 프로젝트가 포트나이트 콘텐츠를 참조하는 경우, 퍼블리싱된 안정적인 API를 통해서만 참조할 수 있습니다.
포트나이트 구현 - 게임의 용량이 크고 엔진을 기반으로 제작되었으며 그 과정에서 선택한 사항들로 인해 일부 언리얼 엔진 기능이 동시에 존재할 수 없는 경우가 있습니다. 포트나이트에서 다이내믹 라이팅을 사용하면 구운 라이팅이 함께 작동하지 않는 것이 적절한 예입니다.
특정 시스템을 대체할 의도로 새로운 기술과 기능을 개발 중일 수도 있고, 아니면 해당 시스템을 크게 변경해야 할 수도 있습니다. 그러한 경우 에픽은 프로젝트 중단을 방지하기 위해 새로운 기능으로 전환하지 않을 수도 있습니다.
다른 검사를 통해서는 프로젝트를 쿠킹할 수 있으며 메모리 요구 사항을 충족하여 성공적으로 실행할 수 있는지 확인합니다.
프로퍼티 및 레퍼런스 유효성 검사
프로퍼티 유효성 검사를 통해 오브젝트에 UEFN에서 편집 가능한 프로퍼티만 수정 사항이 있는지 확인합니다.
보통 UEFN에 표시되지 않는 프로퍼티는 편집할 수 없지만, 에픽에서 출시한 기존의 특정 오브젝트는 이러한 변경 사항이 있을 수 있으며 언리얼 엔진에서 오브젝트를 복사하여 UEFN에 붙여 넣는 경우 이 문제가 발생할 수 있습니다.
이러한 경우 둘 다 숨겨진 편집이 제거되어야 합니다.
레퍼런스 유효성 검사는 레퍼런스가 포함된 오브젝트에 UEFN에서 허용된 에셋의 레퍼런스만 있는지 검사합니다.
콘텐츠 브라우저에 있는 모든 에셋은 일반적으로 참조하기에 안전하지만, 그러한 오브젝트의 레퍼런스를 변경하거나(예: 액터의 스태틱 메시를 직접 참조하려고 시도) 언리얼 엔진 프로젝트에서 바로 오브젝트를 복사하는 경우 허용되지 않는 레퍼런스가 생성될 수 있습니다.
유효성 검사 해결 기능은 다음과 같은 두 가지 일반적인 UEFN 유효성 검사 문제를 해결합니다.
잘못된 프로퍼티 오버라이드(Illegal Property Overrides) - UEFN에서 액세스하면 안 되는 프로퍼티를 수정하는 경우입니다.
잘못된 프로퍼티 값(Illegal Property Values) - UEFN에서 액세스하면 안 되는 항목을 참조하는 경우입니다.
해결 기능은 유효하지 않은 프로퍼티를 탐지하여 기본값으로 되돌립니다.
해결 기능에 따른 모든 변경사항은 완전히 트랜잭션으로 처리되므로 실행 취소할 수 없으며, 저장하기로 결정하기 전까지 콘텐츠의 메모리 내 상태에만 영향을 줍니다.
자동 해결은 어떤 프로퍼티를 어떤 이유로 되돌렸는지, 원래 값은 무엇이었는지 보여주는 보고서를 제공합니다. 이를 통해 자동 해결 결과를 유지할지, 실행 취소하여 직접 수동으로 해결할지 여부를 정보를 바탕으로 결정할 수 있습니다.
해결 버튼을 실행할 때 유효성 검사 문제가 모두 예상대로 사라지는 것은 아닙니다. 예를 들어, 텍스처 유효성 검사 문제 해결에는 자체적인 프로세스가 있습니다. 텍스처 유효성 검사에 대한 자세한 내용은 텍스처 크기 조절하기를 참고하세요.
유효성 검사 해결 툴
UEFN에서 유효성 검사 해결 프로세스를 실행하는 몇 가지 방법이 있습니다.
자동 해결
자동 해결은 하나 이상의 오브젝트에 대해 실행되며 유효하지 않은 상태의 프로퍼티를 자동으로 찾아 되돌립니다.
프로젝트 해결
프로젝트를 업로드하기 전에 UEFN에서 유효성 검사 오류가 탐지되는 경우, 실패한 여러 에셋/액터에 대해 자동 해결을 실행하는 옵션이 제공됩니다.
에셋 해결
콘텐츠 브라우저를 통해 주어진 에셋 또는 여러 에셋에 대해 자동 해결을 실행할 수 있습니다. 처리하려는 에셋을 선택하고 해당 에셋의 컨텍스트 메뉴에서 에셋 액션(Asset Actions) > 유효성 검사 문제 해결(Fix Validation Issues)을 선택하면 됩니다.
액터 해결
씬 아웃라이너를 통해 주어진 액터(또는 액터 세트)에 대해 자동 해결을 실행할 수 있습니다. 처리하려는 액터를 선택하고 해당 액터의 컨텍스트 메뉴에서 유효성 검사 문제 해결을 실행하면 됩니다.
수동 해결
유효하지 않은 하나의 프로퍼티에서는 수동 해결을 실행할 수 있습니다. 지원되는 유효성 검사 경고 또는 오류 아래에서 프로퍼티를 디폴트로 리셋(Reset Property to Default)을 클릭하면 됩니다.