언리얼 엔진 4 에서는 어떤 문제 발생시 그 원인이나 수정 방법도 모른 채 수동으로 추적해 내려가는 대신, 맵 체크 오류와 경고라는 형태로 문제가 있을 수 있는 부분에 대해 경고해 주는 수단이 제공됩니다. 이러한 오류를 통해 어디에 문제가 있는지를 자동화된 방식으로 알 수 있으며, 게임에 심각한 영향을 끼치기 전에 고칠 수 있도록 해 줍니다.
맵 체크 실행하기
맵 체크 오류와 경고는 맵의 '모두 빌드'를 실행한 이후 표시되며, 레벨 에디터 툴바 의 빌드 메뉴에 있는 맵 체크 옵션을 통해서도 별도로 실행할 수 있습니다.
오류
오류는 실행이 중단될 수 있는 심각한 문제를 말합니다. 계속하기 전 고쳐 줘야 합니다.
라이팅
(#MatchingLightGUID) [라이트 액터] 에 [라이트 액터] 와 같은 라이트 GUID 가 있습니다 (복제하여 원본을 새 것으로 갈음해 주세요)
원본을 복제해서 새 것으로 대체시켜 줍니다.
경고
경고는 심각하지는 않지만 게임의 정상 작동을 방해하거나 최적의 퍼포먼스를 내지 못하도록 할 수 있는 문제를 말합니다. 처리는 해 주는 것이 좋지만, 그렇다고 진행을 막을 정도는 아닙니다.
액터
(#ActorLargeShadowCaster)
[액터]: 커다란 액터가 그림자를 드리우는데 그림자를 드리우는 옵션을 끄지 않으면 퍼포먼스에 엄청난 영향을 끼칠 것입니다.
커다란 액터가 그림자를 드리우도록 설정되어 있습니다. 퍼포먼스 영향이 엄청날 것이기에 bUseBooleanEnvironmentShadowing 를 True 로 설정하는 것이 좋습니다.
(#NoDamageType)
[볼륨] : 대미지를 입히나 정의된 DamageType 이 없습니다.
이 경고는 대미지를 입히도록 설정된 볼륨이 있으나 대미지 유형이 정의되지 않은 경우 발생합니다. 대미지 유형은 액터가 피해를 입었을 때 액터의 반응 처리방식을 게임 코드에 알려줘야 하기에 중요합니다. 액터의 프로퍼티 창->피직스 볼륨 으로 가서 'DamageType' 프로퍼티를 설정하여 고칠 수 있습니다.
(#NonCoPlanarPolys)
[액터] : 브러시에 면이 접하지 않은 폴리곤이 있습니다.
이 경고는 레벨에 있는 브러시에 면이 접하지 않은 폴리곤이 있을 때 발생합니다. 보통은 지오메트리 모드의 브러시 편집 툴을 극단적인 방식으로 사용했을 때 발생하며, 레벨에 폴리곤 실종 현상이 유발될 수 있습니다. 이 경고는 브러시를 지우고 재생성하면 해결됩니다.
(#SameLocation)
[액터] 가 [다른 액터] 와 같은 위치에 있습니다.
한 액터가 다른 액터와 정확히 같은 위치에 있을 때 발생하는 경고입니다. 보통 복제나 붙여넣기 실수로 인해 발생하는 문제입니다. 액터 중 하나를 지우는 것으로 해결할 수 있으며, 의도적으로 배치한 경우는 무시해 주면 됩니다.
(#InvalidDrawscale)
[액터] : 유효한 DrawScale/DrawScale3D 가 아닙니다.
DrawScale, DrawScale3D X, DrawScale3D Y, DrawScale 3D Z 중 하나가 0 일 때 발생하는 경고입니다. 즉 어느 축 하나의 스케일이 0 이기 때문에 액터가 표시되지 않는다는 뜻입니다. 이 문제를 해결하려면 해당 액터를 선택한 후 메인 언리얼 에디터 창 하단의 DrawScale 을 0 이외의 값으로 바꿔주면 됩니다.
(#ActorIsObselete)
[액터] 는 낡아서 제거해야 합니다.
레벨에 폐기(deprecated) 마킹된 액터 인스턴스가 있을 때 발생하는 경고입니다. 보통 레벨 생성 이후 액터가 폐기 마킹되었는데, 그 후 맵이 업데이트되지 않은 경우 발생합니다. 액터를 지워주기만 하면 해결됩니다.
(#StaticPhysNone)
[액터] bStatic 이 참이나 Physics 가 PHYS_None 이외의 것으로 설정되었습니다!
bStatic 플래그가 True 로 설정된 액터가 있는데 그 Physics 는 PHYS_None 이 아닐 때 발생하는 경고입니다. bStatic 은 액터가 움직일 수 없다는 뜻이므로, Physics 가 PHYS_None 인 것은 필수입니다. bStatic 플래그로 설정된 액터는 틱(업데이트)되지도 않습니다. 이 오류는 액터의 프로퍼티로 가서 Physics 를 PHYS_None 으로 바꿔주면 됩니다.
(#VolumeActorCollisionComponentNULL)
[액터] : 볼륨 액터에 NULL 콜리전 컴포넌트가 있습니다. 지워 주세요.
지정된 볼륨 액터에 NULL 콜리전 컴포넌트가 있으며, 아마도 지워야 할 것입니다.
(#VolumeActorZeroRadius)
[액터] : 볼륨 액터에 반경이 0 인 콜리전 컴포넌트가 있습니다. 지워 주세요.
지정된 볼륨 액터의 콜리전 컴포넌트에 대한 반경이 0 으로 되어 있어, 아마도 지워야 할 것입니다.
(#VertexColorsNotMatchOriginalMesh)
[액터] (LOD [인덱스]) 에 손수 칠한 버텍스 컬러가 있는데, 원본 [스태틱 메시] 스태틱 메시와 더이상 일치하지 않습니다.
원본 메시의 인스턴스에 버텍스 컬러를 칠한 이후 원본 메시가 변경된 것 같습니다. 새로고침이 필요할 듯 합니다.
(#CollisionEnabledNoCollisionGeom)
[액터] 에 콜리전이 켜져 있으나 [스태틱 메시 이름] 스태틱 메시에 단순 또는 복합 콜리전이 없습니다.
액터에 Collision Enabled (콜리전 켜짐) 옵션을 No Collision (콜리전 없음)으로 설정하거나, 메시에 콜리전을 추가(단순 콜리전 모양을 추가 및/또는 섹션에 콜리전을 켜거나) 하면 됩니다.
(#ShadowCasterUsingBoundsScale)
액터가 다이내믹 섀도를 드리우면서 BoundsScale 이 1 보다 큽니다! 퍼포먼스에 엄청난 영향을 끼칠 것입니다.
심각한 퍼포먼스 경고입니다. BoundScale 을 1 이하로 줄이거나 다이내믹 섀도를 없애세요...
(#InvalidTrace)
[액터이름] 에 WorldTrace 가 블록되어 있습니다. 월드 지오메트리로 간주됩니다.
BSP 브러시
(#BrushZeroPolygons)
[브러시 액터] : 브러시에 0 폴리곤이 있습니다. 지워주세요!
레벨에 있는 브러시에 연관된 폴리곤이 아무것도 없는 것이 있음을 나타내는 경고입니다. 브러시가 별다른 작업을 하지 않고 있으니 지워줘야 합니다.
(#CleanBSPMaterials)
'Clean BSP Materials' 를 실행하여 불필요한 머티리얼 레퍼런스 [x] 개를 정리합니다.
브러시 면에 BSP 에 공헌하지 않는 머티리얼 레퍼런스가 있으며, 툴->"BSP 머티리얼 비우기' 명령으로 그 레퍼런스를 지울 수 있습니다.
(#BrushComponentNull)
[액터] : 브러시에 NULL BrushComponent 프로퍼티가 있습니다. 지워 주세요.
"None" ConstraintInstance 컴포넌트가 포함된 브러시가 있을 때 발생하는 경고입니다. 보통 브러시 복제를 통해 만든 구형 맵에서 발생하는 문제로, 경고를 유발하는 브러시를 지운 다음 재생성해 주는 것으로 고칠 수 있습니다.
(#PlanarBrush)
[브러시] : 브러시가 평면입니다.
평면 브러시가 사용되었습니다. 콜리전과는 제대로 작동하지 않음에 주의해 주세요.
카메라
(#CameraAspectRatioIsZero)
카메라에 AspectRatio=0 입니다. 이 값을 0 이외로 설정해 주십시오.
클래스
(#AbstractClass)
[ ]::[ ] 는 낡아서 제거해야 합니다. (클래스는 abstract)
(#DeprecatedClass)
[ ]::[ ] 는 낡아서 제거해야 합니다. (클래스는 deprecated)
폴리지
(#FoliageMissingStaticMesh)
없는 스태틱 메시에 대한 폴리지 인스턴스가 제거되었습니다.
(#FoliageMissingStaticMesh)
이 맵의 폴리지에 없는 클러스터 컴포넌트가 [x] 개, 스태틱 메시 [이름] 에 대한 것입니다. 폴리지 툴을 열면 이 문제가 해결됩니다.
랜드스케이프
(#FixedUpDeletedLayerWeightmap)
[랜드스케이프 컴포넌트] : 삭제된 레이어 웨이트맵을 고쳤습니다.
(#FixedUpIncorrectLayerWeightmap)
[랜드스케이프 컴포넌트] : 잘못된 레이어 웨이트맵 텍스처 인덱스를 고쳤습니다.
(#FixedUpSharedLayerWeightmap)
[레이어] 레이어, [컴포넌트] 컴포넌트 (에서 [이름] 과 공유하는) 레이어에 대한 공유 웨이트맵 텍스처를 고쳤습니다.
(#LandscapeComponentPostLoad_Warning)
랜드스케이프 ([프록시명]) 의 ([X,Y]) 위치에 겹치는 렌더 컴포넌트가 있습니다.
레벨
(#DuplicateLevelInfo)
레벨 인포가 중복되었습니다.
어쩌다가 WorldInfo 가 두 개 생겼습니다...
(#NoKillZ)
맵에 KillZ 를 설정해야 합니다.
맵의 WorldInfo 내 KillZ 프로퍼티가 기본값으로 설정되어 있을 때 발생하는 경고입니다. 모든 맵은 레벨에 맞게끔 적당한 KillZ 값을 지정해 줘야 플레이어가 플레이가능 월드 바운드에 도달할 때까지 영원히 떨어지지 않습니다.
라이팅
(#LightComponentNull)
[액터] : 라이트 액터에 NULL LightComponent 프로퍼티가 있습니다. 지워 주세요.
"None" LightComponent 가 포함된 라이트 액터가 있을 때 발생하는 경고입니다. 액터를 복제해서 만들던 구형 맵에서 보통 발생하던 것으로, 경고를 유발하는 액터를 지운 다음 새로 만들어 주면 해결됩니다.
(#RebuildLighting)
맵에 라이팅을 리빌드해야 합니다.
라이트 액터를 움직이거나 변경하여 유효하지 않게 되었을 때 발생하는 경고입니다. 레벨에 렌더링되는 라이팅이 레벨의 현재 라이트 상태를 정확하게 나타내지 못하기에 문제가 생길 수 있습니다. 이 오류는 빌드 메뉴로 가서 맵의 라이팅을 리빌드하는 것으로 해결 가능합니다.
(#StaticComponentHasInvalidLightmapSettings)
컴포넌트가 정적인 유형인데 라이트맵 세팅이 잘못되어 있습니다! 간접광이 검게 나올 것입니다. 흔한 원인은 라이트맵 해상도 0, LightmapCoordinateIndex 범위 초과 등입니다.
내비게이션
(#RebuildPaths)
패스를 리빌드해야 합니다.
파티클 시스템
(#ParticleSystemComponentNull)
[액터] : Emitter 액터에 NULL ParticleSystemComponent 프로퍼티가 있습니다. 지워 주세요.
"None" ParticleSystemComponent 가 있는 이미터 액터가 있을 때 발생하는 경고입니다. 보통 복제하는 방식을 통해 액터를 만들던 구형 맵에서 발생하는 문제로, 경고를 유발하는 액터를 지운 다음 새로 만들어 주는 것으로 해결 가능합니다.
(#PSysCompErrorEmptyActorRef)
PSysComp에 빈 파라미터 액터 레퍼런스가 있습니다. 인덱스 [인덱스] ([액터])
Param.Actor 는 NULL 이어서는 안됩니다.
(#PSysCompErrorEmptyMaterialRef)
PSysComp에 빈 파라미터 머티리얼 레퍼런스가 있습니다. 인덱스 [인덱스] ([액터])
Param.Material 은 NULL 이어서는 안됩니다.
스켈레탈 메시
(#SkelMeshActorNoPhysAsset)
[액터] : 스켈레탈 메시 액터에 할당된 피직스 애셋이 없습니다.
스켈레탈 메시의 바운딩 박스가 정확히 나오도록 하기 위해서는, 그 스켈레탈 메시 컴포넌트에 피직스 애셋을 할당해 줘야 합니다. 바운딩 박스가 잘못되거나 정확하지 않으면 메시의 원점이 시야에 있지 않을 때 사라지거나, 바운딩 박스가 너무 커져서 그림자 해상도가 나빠지는 결과가 나게 됩니다.
(#SkeletalMeshComponent)
[액터] : 스켈레탈 메시 액터에 NULL SkeletalMeshComponent 프로퍼티가 있습니다.
지정된 스켈레탈 메시 액터에 NULL SkeletalMeshComponent 가 있습니다.
(#SkeletalMeshNull)
[액터] : 스켈레탈 메시 액터에 NULL SkeletalMesh 프로퍼티가 있습니다.
지정된 스켈레탈 메시 액터에 NULL SkeletalMesh 가 있습니다.
사운드
(#AudioComponentNull)
[액터] : 앰비언트 사운드 액터에 NULL AudioComponent 프로퍼티가 있습니다. 지워 주세요.
"None" AudioComponent 가 있는 앰비언트 사운드 액터가 있을 때 발생하는 경고입니다. 액터를 복제해서 만들던 구형 맵에 주로 발생하던 문제로, 경고를 유발하는 액터를 지운 다음 새로 만드는 것으로 해결 가능합니다.
(#SoundCueNull)
앰비언트 사운드 액터의 AudioComponent 에 NULL SoundCue 프로퍼티가 있습니다.
NULL SoundCue 프로퍼티가 있는 앰비언트 사운드가 있을 때 발생하는 경고입니다. 액터가 실제 아무런 소리도 재생하지 않기에 문제가 됩니다. 콘텐츠 브라우저에서 사운드 큐를 선택한 다음 액터의 프로퍼티 창에서 Audio -> Audio Component 아래 'SoundCue' 프로퍼티를 설정해 주면 됩니다.
스태틱 메시
(#StaticMeshNull)
[스태틱 메시 액터] : Actor 에 NULL StaticMesh 프로퍼티가 있는 스태틱 메시 컴포넌트가 있습니다.
레벨에 있는 스태틱 메시 액터에 NULL StaticMesh 프로퍼티가 있을 때 발생하는 경고입니다. 액터는 존재하기에 메모리를 사용은 하나, 실제 그릴 스태틱 메시가 없기에 문제가 됩니다. 콘텐츠 브라우저에서 스태틱 메시를 먼저 선택하지 않은 상태로 스태틱 메시를 만들 때 주로 발생하는 경고입니다. 이 경고는 콘텐츠 브라우저에서 스태틱 메시를 먼저 선택한 다음, 스태틱 메시 액터의 프로퍼티 창 -> StaticMeshActor 카테고리 -> StaticMeshComponent 로 가서 'StaticMesh' 프로퍼티를 설정해 주면 됩니다.
(#StaticMeshComponent)
[액터] : 스태틱 메시 액터에 NULL StaticMeshComponent 프로퍼티가 있습니다. 지워 주세요.
"None" StaticMeshComponent 가 있는 스태틱 메시 액터가 있을 때 발생하는 경고입니다. 보통 액터를 복제해서 만든 구형 맵에 발생하는 문제로, 경고를 유발하는 액터를 지운 다음 새로 만드는 것으로 해결 가능합니다.
(#SimpleCollisionButNonUniformScale)
[스태틱 메시] 에 심플 콜리전이 있으나 비균등 스케일이 적용되고 있어서, 콜리전 생성에 실패할 것입니다.
심플 콜리전은 비균등 스케일에 사용할 수 없습니다. 스케일이나 콜리전 유형을 고쳐 주시기 바랍니다.
(#MoreMaterialsThanReferenced)
스태틱 메시 컴포넌트 위에 덮어쓰여진 머티리얼 수[x]가 레퍼런스된 수[y], '[스태틱 메시]' 소스 메시에 있는 것보다 많습니다.
(#ElementsWithZeroTriangles)
트라이앵글이 0 인 [x] 개의 엘리먼트가 '[스태틱 메시]' 스태틱 메시에 있습니다.
볼륨
(#LevelGridVolume)
LevelGridVolumes 는 퍼시스턴트 레벨에서만 허용됩니다.
스트리밍 레벨에 LevelGridVolume 이 놓였을 때 발생하는 경고입니다. 이러한 볼륨 유형은 퍼시스턴트 레벨에서만 허용됩니다. 이 문제는 LevelGridVolume 을 퍼시스턴트 레벨로 옮기면 해결 가능합니다.
(#LevelStreamingVolume)
LevelStreamingVolume 이 퍼시스턴트 레벨에 있지 않습니다. 지워 주세요.
퍼시스턴트 레벨에 존재하지 않는 레벨 스트리밍 볼륨이 있을 때 발생하는 경고입니다. 스트리밍 레벨을 로드할지 말지 검사할 때 이 볼륨이 고려되지 않기에 문제가 될 수 있습니다. 레벨 스트리밍 볼륨을 삭제한 후 재생성하는 것으로 해결 가능합니다.
(#NoLevelsAssociated)
스트리밍 볼륨에 관련된 레벨이 없습니다.
레벨 스트리밍 볼륨에 관련된 레벨이 없어, 별다른 기능을 하지 못할 때 발생하는 경고입니다. 문제가 되는 레벨 스트리밍 볼륨에 하나 이상의 스트리밍 레벨을 연관시켜 주는 것으로 해결 가능한 문제입니다.
미분류
(#FilenameIsTooLongForCooking)
[파일명] 파일명이 너무 깁니다. 콘솔용 쿠킹에 걸리적거릴 수가 있습니다. 언리얼 파일명은 [길이] 글자 이하여야 합니다.
지정된 길이 내로 파일 이름을 변경해 주세요.
(#UsingExternalObject)
[오브젝트명] : 외부적으로 레퍼런스되었습니다.
인포
인포는 사용자가 처리해 줄 필요는 없지만 알아두면 좋을 내용입니다.
액터
(#RepairedPaintedVertexColors)
[액터] : 칠해진 버텍스 컬러를 고쳤습니다.
이 액터 위에 칠해진 버텍스 컬러가 고쳐졌습니다.