메타 파일이란??
유니티에서 Asset을 Import하거나 새로운 파일을 (유니티 Assets폴더 안에) 생성하면 Unity 안에서는 다음과 같은 일이 일어난다.
- 유일한 ID값을 할당한다.
Unity는 새로운 Asset을 발견하면 바로 그 Asset에게 하나밖에 존재하지 않는 Unique 한 ID를 부여한다. 이 ID는 유니티 내부적으로 Asset을 참조하는데 쓰인다. 그렇게 함으로써 유니티는 Asset의 이름을 수정하거나 위치를 바꿔도 부여한 ID를 통해 그 Asset을 찾을 수 있게 된다.
- 메타 파일을 생성한다.
메타 파일은 Asset을 식별할 수 있게 하는 값과 그 Asset에 대한 설정 값, 예를 들어서 크기, pivot 위치, 상태, ... 등,을 저장하는 파일이다.
메타 파일은 Asset이 존재하는 폴더에 생성이 되고 대응되는 [asset명].meta로 이름이 정해진다.
예를 들어, groot.jpg 파일을 Assets 폴더에 추가하면 groot.jpg.meta라는 이름으로 메타 파일이 생성된다.
유니티 내에서 Asset 파일을 옮기거나 이름을 바꾸면 메타 파일의 위치(디렉토리)를 파일이 있는 곳으로 이동시켜주고 메타 파일의 이름도 자동으로 변경해준다.
하지만 유니티 외부(ex. 유니티가 아닌 윈도우)에서 파일을 조작할 경우는 유니티가 변경됐다는 것을 감지하지 못하기 때문에 그 메타 파일도 우리가 수동으로 바꿔줘야 한다.
그래서 유니티 내에서 파일을 옮기지 않고 윈도 탐색기나 맥의 finder를 통해서 Assets 폴더 내의 파일들의 이름을 바꾸거나 파일을 옮기면 유니티는 메타 파일을 잃어버리게 된다.
그렇기 때문에 유니티 외부에서 파일을 옮길 때는 해당하는 메타 파일도 같이 옮겨주고 유니티 외부에서 파일명을 바꿀 때는 메타 파일의 이름도 알맞게 변경해주자!
메타 파일의 중요성
메타 파일은 Asset을 식별하고 Asset의 설정을 저장하는 데 매우 중요하다.
만약 메타 파일을 누락하거나 손상되면 다음과 같은 문제가 발생할 수 있다.
- Asset을 사용할 수 없게 된다.
- Asset의 설정이 초기화된다.
- Prefab이 깨진다.
- FBX 설정이 초기화된다.
메타 파일 관리 방법
메타 파일을 안전하게 관리하기 위한 몇 가지 방법은 다음과 같다.
- 유니티 내에서 작업하자.
- 어쩔 수 없이 유니티 외부에서 파일을 옮기거나 이름을 바꿀 일이 생기면 그 메타 파일의 파일명도 같이 대응되도록 옮기거나 수정해주자.
- 외부로 파일을 공유해야 할 상황이 생기면 Unity Package 형식으로 공유하는 게 편하다.
- 협업 시 메타 파일이 중복되어 생성되지 않도록 주의하자.
결론
유니티 메타 파일은 Asset을 안전하게 사용하고 관리하기 위해 매우 중요한 파일이다.
메타 파일의 중요성을 이해하고 올바른 방법으로 관리한다면 Unity 개발을 보다 편리하고 안정적으로 진행할 수 있을 것이다.
'Unity > Tip' 카테고리의 다른 글
뷰포트 영역 안에 있는지 검사하는 방법 (0) | 2024.03.21 |
---|---|
콜라이더 충돌 검사 : Physics.Overlap vs NonAlloc (0) | 2024.01.05 |
AssetDatabase 클래스를 사용하여 스크립트에서 에셋 생성 및 수정 (0) | 2023.12.21 |
Unity에서 패키지의 버전을 변경하는 방법 (0) | 2023.12.17 |
오브젝트 파괴 시 OnDestroy 이벤트 함수가 호출되지 않을 수 있다?? (0) | 2023.12.09 |