관리 메뉴

개발블로그

[유니티] 유니티의 메타파일 (.meta) 본문

Unity

[유니티] 유니티의 메타파일 (.meta)

dvmoo 2021. 8. 5. 10:18

💪 GOAL

유니티 프로젝트로 작업할 때 생성되는 .meta 파일에 대해서 이해한다.

유니티의 내부처리(Behind the Scenes) 에 대해서 이해한다.

 


 

그림 1 CountSlot 프리팹의 Deactive 

 

프로젝트에서 사용할 CountSlot이라는 프리팹을 생성 후 인스펙터에서 사용할 목적에 맞게  

Deactive 오브젝트는 Image 컴포넌트에 Source Image와 Color 값을 변경해주었다. 그림 1

 

 

그림 2 UnityProject/Assets/Prefabs 폴더 캡쳐

 

 

프리팹이 위치한 익스플로러 창을 띄워보았다. 그림 2

폴더를 확인해보면 PREFAB 파일과 META 파일이 같이 생성된 것을 확인할 수 있다.

 

여기서 이 META 파일은 무엇일까?

 

 

🔶  유니티의 메타(meta) 파일

Asset을 식별할 수 있게 하는 값과 그 Asset에 대한 설정 값 등을 저장하는 파일.
그림 1을 예로 들면 Deactive 오브젝트의 Source Image와 Color값의 변경 값을 저장한 파일이라고 생각하면 된다.

 

 

 

유니티가 메타 파일을 생성하는 이유는 유니티의 내부 처리(Behind the Scenes) 방법에 있다.

 

 

유니티는 Asset을 Import하거나 유니티 프로젝트의 Assets 폴더 안에새로운 파일을 생성했을 때,

 

① 새 파일이 추가되었음을 감지하고 해당 Asset에 고유한 ID값을 할당한다.

 ID는 해당 asset의 참조값으로 쓰이기 때문에 이름이나 위치를 변경해도 할당된 ID를 통해서 해당 asset을 찾을 수 있다.

asset의 이름을 수정해도 asset에는 할당된 고유 ID가 있기 때문에 그 파일을 참조할 수 있는 것이다.

 

② 해당 asset의 .meta 파일을 생성한다.

 생성된 asset의 고유ID는 .meta 파일에 저장되고, 메타 파일은 asset이 존재하는 폴더에 생성된다.

유니티 내에서 해당 asset 파일을 이동하면 메타파일 또한 같은 위치로 이동하지만, 

유니티 외부에서 파일의 위치를 변경할 때에는 반드시 메타파일도 함께 변경해주어야한다.

 

 

✔ Git이나 SVN등으로 협업할 때에는 작업한 Asset과 메타파일도 반드시 Push 해야한다.

만약 .meta 파일이 누락된 상태에서 Push 한다면 다른 팀원이 Project를 Pull 받고 프로젝트를 열었을 때 작업한 asset의 .meta 파일이 새로 생성된다. 후에 다른 팀원이 다시 Push 하면 Conflict 이 날 것이다.

메타 파일은 에셋의 Import Settings도 저장하고 있기 때문에 메타파일이 누락되면 Prefab이 깨지거나 FBX 설정이 망가질 수 있다.

협업할 때에는 meta파일이 누락되지 않도록 하고 중복되어 생성되지 않도록 주의해야 한다.

 

 


 

 

 

 

 

* 공부하는 단계입니다. 잘못된 정보가 있다면 피드백 부탁드립니다😊

* e-mail : heehee970@naver.com