Wiki
검증 규칙
체크인 시 실행되는 에셋 검증 검사 : 9개의 내장 규칙, error / warning / info 심각도, JSON 설정, 내보내기 / 가져오기 / 초기화.
소개
검증 규칙은 체크인 시점에 실행되는 Unreal 에셋 검사입니다 : 명명, 텍스처 크기, 누락된 종속성 등. 콘텐츠가 저장소에 들어가기 전에 스튜디오 규약을 자동으로 강제하는 데 사용됩니다. 설정은 저장소별로 이루어집니다.
접근 권한과 역할
규칙 탭은 슈퍼 관리자와, 자신이 관리하는 저장소에서의 project_admin 이 사용할 수 있습니다.
심각도
| 심각도 | 체크인 시 효과 |
|---|---|
error | 문제가 수정될 때까지 체크인을 차단합니다. |
warning | 경고하지만 통과시킵니다. |
info | 순전히 정보 제공용입니다. |
9개의 내장 규칙
| 규칙 | 기본값 | 검사 내용 |
|---|---|---|
blueprint_compilation | error | 체크인 전에 Blueprint가 오류 없이 컴파일됩니다. |
naming_convention | warning | 명명 접두사(Allar UE5 스타일) : T_ 텍스처, M_ 머티리얼, BP_ 블루프린트, SM_ 스태틱 메시, WBP_ 위젯 등. |
max_texture_size | warning | 텍스처 최대 크기 : 기본값 4096 × 4096, 2의 거듭제곱 필수. |
material_complexity | warning | 머티리얼 복잡도 : 기본값으로 최대 256 명령, 16 텍스처 샘플. |
import_settings | warning | 규정에 맞는 임포트 설정(텍스처, 메시). |
missing_dependency | error | 누락된 종속성 없음(기본적으로 엔진 콘텐츠 무시). |
circular_dependency | error | 순환 종속성 없음(기본 탐색 깊이 20). |
unreferenced_asset | info | 참조되지 않은 에셋을 알립니다(기본적으로 맵과 위젯 제외). |
duplicate_asset | warning | 중복 에셋을 감지합니다(기본적으로 .umap 무시). |
활성화 및 설정
각 규칙에 대해 :
- 스위치 : 규칙을 활성화 / 비활성화합니다. 즉시 저장됩니다.
- 심각도 : error / warning / info 드롭다운. 즉시 저장됩니다.
- 설정(JSON) : 규칙을 펼쳐서(쉐브론) 매개변수를 JSON으로 편집한 다음 Save Config. 잘못된 JSON은 오류 세부 정보와 함께 저장을 차단합니다.
예 : 모바일 프로젝트를 위해 max_texture_size 를 2048로 낮추거나, 엄격하게 강제하기 위해
naming_convention 을 error 로 전환합니다.
내보내기, 가져오기, 초기화
- Export : 모든 규칙의 상태(활성화, 심각도, 설정)를 포함하는
rules.json파일을 다운로드합니다. - Import :
rules.json을 다시 불러와 각 항목을 해당 규칙에 적용합니다 (알 수 없는 키는 무시됩니다). - Reset to Defaults : 모든 규칙을 기본값으로 되돌립니다. 사용자 지정 설정은 손실됩니다 (확인이 필요합니다).
내보내기 / 가져오기는 한 저장소에서 다른 저장소로 검증 정책을 복제하거나, 오프라인으로 버전 관리하는 데 사용됩니다.
저장소의 rules.json
.uversion/rules.json 파일은 커밋 작성자가 manage_rules 기능을 보유한 경우에만
저장소 정책에 적용됩니다. 그렇지 않으면 파일은 저장되지만 규칙은 변경되지 않습니다. 이것은 보호 장치입니다 : 해당
경로에 쓰기 권한이 있는 기여자가 파일을 커밋하여 검증을 비활성화할 수는 없습니다.
흔한 함정
체크인이 차단됨
error 로 설정된 규칙이 실패했습니다. 메시지가 어느 규칙인지 알려줍니다. 에셋을 수정하거나, (규칙이 자신의
상황에 너무 엄격하다면) 심각도를 warning 으로 낮추세요.
초기화가 내 설정을 지웁니다
Reset to Defaults 는 사용자 지정 설정에 대해 파괴적입니다. 되돌릴 수 있기를 원한다면 먼저 Export 를 하세요.
규칙이 아무것도 하지 않는 것 같음
활성화되어 있는지(스위치) 확인하고, 차단을 예상했다면 심각도가 info 가 아닌지 확인하세요.
error 만 체크인을 차단합니다.