Symptoms
스크립팅 API를 통해 프로퍼티를 수정합니다.
씬이 더티 상태가 되지 않습니다.
Cause
스크립팅 API에는 기본적으로 실행 취소 메커니즘이 없으며 씬을 더티 상태로 표시하지 않습니다. 하지만 강제로 이 동작을 수행하게 만들 수 있습니다.
Resolution
이를 해결하는 방법은 두 가지입니다.
방법 1:
오브젝트에 직접 액세스할 수 있으면 스크립트에서 프로퍼티를 설정하기 전에 Undo.RecordObject 메서드를 사용할 수 있습니다.
Undo.RecordObject (myGameObject.transform, "Zero Transform Position"); myGameObject.transform.position = Vector3.zero; |
Undo.RecordObject를 사용해 씬을 더티 상태로 표시한 예제를 이 아티클에서 확인할 수 있습니다.
방법 2:
다음과 같은 방법으로 씬을 더티 상태로 표시할 수 있습니다.
EditorSceneManager.MarkSceneDirty |
위의 명령어를 사용하고 스크립트에서 프로퍼티를 설정합니다.
LightmapEditorSettings.bakeResolution = 14; EditorSceneManager.MarkSceneDirty(EditorSceneManager.GetActiveScene()); |
More information