스프라이트 애니메이션을 개발하며
유니티 애니메이션 클립 미리보기같은 느낌으로
에디터에서 애니메이션을 미리보는 기능을 만들었다
개발하다보니 문제가 생겼는데
에디터의 OnInspectorGUI나 OnPreviewGUI 같은 함수는
"마우스가 인스펙터 위로 지나갈 때"만 다시 그려진다는 것
https://docs.unity3d.com/ScriptReference/Editor.RequiresConstantRepaint.html
요 함수를 오버라이드해 주기적으로 Repaint를 요청할 수 있다
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
using UnityEngine;
using UnityEditor;
[CustomEditor(typeof(AnimationData), true)]
public class AnimationDataEditor : Editor
{
private double lastTime;
public override bool RequiresConstantRepaint() => true;
public override void OnInspectorGUI()
{
// EditorApplication.timeSinceStartup 을 사용해 에디터에서 시간 측정을 할 수 있다
var currentTime = (float) (EditorApplication.timeSinceStartup - lastTime);
...
}
}
|
cs |
'프로그래밍 > 유니티' 카테고리의 다른 글
Newtonsoft Json 유니티 패키지 (0) | 2023.07.12 |
---|---|
유니티 URP 좌표에 따른 정렬 기준 바꾸기 (Transparency Sort Mode) (0) | 2023.04.11 |
유니티 urp 렌더링 디버거 진입 방법 변경하는 법 (0) | 2023.03.01 |
유니티 기기 언어 아는 방법 (0) | 2019.07.10 |
유니티 스프라이트 밝게 만들기 (0) | 2019.05.09 |