[ 개발 일기 ] SO, Prefab을 에디터에서 저장하기

2024. 4. 26. 16:00게임 개발/개발 일기

최근 졸업 작품에서 이전에 만든 Feedback Player를 사용하는데 문제가 발생했다.

 

[ 개발 일기 ] Feedback Player ( Custom Editor )

ㅎ.ㅎ 전에 불값으로 Feedback Player의 Feedback을 키고 끄고 했었는데뭔가 확장할 일이나 Feedback을 추가할 일이 생겼을 때 불편할 것 같아 결국 컴포넌트 형식으로 변경했다. 근데 그렇다고 만들어

rivermountain.tistory.com

 

Feedback을 추가하고 저장 후 프리팹을 껐는데 추가한 Feedback이 저장되지 않는 문제가 생겼다.

 

Feedback의 Serialize Value를 수정할 경우에는 저장이 되었기에 한 번 문제에 대해 찾아보았더니

EditorUtility.SetDirty()라는 것에 대해 알게 되었다.

 

 

프리팹이나 SO에서 무언가 값이 변경되었을 경우 저장이 된다.

하지만 에디터 버튼을 눌러서 AddComponent를 했을 경우 저장이 되지 않는다.

 

그래서 추가한 컴포넌트의 값을 수정했을 때는 저장이 되었지만,

AddComponent만 하고 프리팹 에디터를 끄면 저장이 되지 않는다.

 

그렇기에 에디터에서 AddComponent를 했을 때에는 EditorUtility.SetDirty를 이용해 변경된 프리팹이나 SO를 저장해주어야 한다.

 

여러분들은 저처럼 고생하지 마시고 편한 개발하시길 바랍니다.