UDN
Search public documentation:

ContentAuditCommandletKR
English Translation
日本語訳
中国翻译

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 홈 > 커맨드렛 > Content Audit 커맨드렛
UE3 홈 > 퍼포먼스, 프로파일링과 최적화 > 콘텐츠 프로파일링과 최적화 > Content Audit 커맨드렛

Content Audit 커맨드렛


한 줄 목적


손을 보거나 고치거나 해야 할 "문제있는" 콘텐츠를 찾아냅니다.

상세 동기


비용 최대 절감을 위한 콘텐츠 최대화시에, 콘텐츠가 따라/지켜야 할 "규칙"을 다수 알아내게 되었습니다. ContentAudit Commandlet, 콘텐츠검사 커맨드릿은 전체 게임의 콘텐츠를 살펴본 뒤 (택을 통해) 어느 콘텐츠가 문제있는/규칙을 어겼는지를 보고해 줍니다.

실행


이 커맨드렛을 실행하려면, cmd 창을 띄운 다음 UnrealEngine3\Binaries 디렉토리로 이동합니다.

구문

구문은 다음과 같습니다:

[GameName].exe ContentAuditCommandlet

사용 / 발동법


매일밤, 게임명 ContentAuditCommandlet 을 실행하는게 택을 최신으로 확실히 유지하는 최상의 방법일 겁니다.

"규칙"을 따르지 않는 콘텐츠들은 콘텐츠브라우저에 택을 통해 노출됩니다.

각 "규칙"에 대해서, 해당 "규칙"을 표현하는 택이 있습니다. 각 택에는 또한 _whitelist 택이 있습니다. "문제있는" 콘텐츠 중 사용 가능한 것임을 말합니다.

ContentAudit 커맨드릿은 모든 Audit 택 목록과 그 수도 출력해 주므로, 제작진과 돌려볼 수도 있습니다. 목적은 각 부분의 수를 0으로 하는 것이겠지요.

상세 노트: 시간에 따라 _whitelist "항목" 수가 늘어날 것입니다. 그렇게 되면 각 _whitelist 에 대해서도 실제로 그런지 "검사"를 하고 싶어질 테지요. _whitelist 항목이 커지게 되면 왜 그렇게 많은 애셋에 그런 택이 붙었는지 따져야 할 것입니다. (항상 whitelist 되는 오브젝트를 제거하려면 아마도 더 나은 "규칙"이 필요할 것입니다.)

상세 예제


예: G8 텍스처는 메모리 측면에서 무겁습니다. G8 텍스처는 보통 품질 손상 없이 DXT1로 대체 가능합니다.

예: 한 텍스처가 G8이라 메모리를 많이 잡아먹고 있는데, 실제로 G8 이어야 합니다. 그래서 이 애셋 택을 Texture_G8_Whitelist 로 하여 "whitelist"화 시킵니다. 즉 타인에게 이게 원래 그런 용도로 쓰인 거라 알려주는 것입니다.

ContentAudit 커맨드릿이 검사하는 것은:

  • Texture_NormalmapNonDXT1CompressionNoAlphaIsTrue
  • Texture_LODBiasIsNegative
  • Texture_NeverStream
  • Texture_G8

  • Material_MissingPhysicalMaterial

  • PhysAsset_MissingPhysicalMaterial

  • Particle_BadFixedRelativeBoundingBox
  • Particle_MissingFixedRelativeBoundingBox

  • SoundCue_DiconnectedSoundNodes
  • SoundCue_MoreThan3Waves
  • SoundCue_HasMixerWithMoreThan2Children
  • SoundCue_NoSoundClass
  • SoundCue_IncorrectAmbientSoundClass

  • SoundWave_QualityHigherThan40

  • StaticMesh_WithMissingUVSets
  • StaticMesh_WithBadUVSets
  • StaticMesh_EmptySections