컨트롤 릭의 디버그 툴을 사용하면 릭 행동을 평가하고, 릭 그래프에서 문제를 찾아 수정할 수 있습니다. 이 문서에서는 이 툴에 대해 살펴봅니다.
전제 조건
- 컨트롤 릭 에셋을 생성한 상태여야 합니다. 자세한 내용은 컨트롤 릭 퀵스타트 페이지를 참고하세요.
디버그 모드
블루프린트 디버깅 과 유사하게 컨트롤 릭은 디버그 모드(Debug Mode) 를 통해 디버깅할 수 있습니다. 이 모드를 사용하면 노드에 중단점을 추가하고, 그래프 로직을 분석하고, 그래프의 어느 포인트에서든 프로퍼티의 라이브 값을 검사할 수 있습니다.
'디버그 모드'는 컨트롤 릭 툴바에서 릴리즈 모드(Release Mode) 버튼을 클릭하여 활성화할 수 있습니다. 이 버튼은 디버그(Debug) 와 릴리즈(Release) 모드 사이를 토글합니다.
'디버그 모드'는 솔브 방향 컨텍스트를 지원하며, 정방향 솔브(Forwards Solve), 역방향 솔브(Backwards Solve) 또는 이벤트 구성(Setup Event) 중 무엇을 평가하는지에 따라 적용됩니다.
중단점
노드 그래프를 디버깅하는 경우, 중단점을 사용하여 지정된 노드에서의 그래프 평가를 중지하고 후속 노드를 단계별로 살펴볼 수 있습니다. 이를 통해 뷰포트 내에서 중단점 이전에 평가된 그래프의 일부를 일시적으로 프리뷰할 수 있습니다. 중단점을 사용하면 평가가 그래프 끝에 도달할 때까지는 시간이 진행되지 않으므로, 누적된 시간 노드의 결과가 변경되지 않습니다.
릭 그래프 노드를 우클릭하고 중단점 추가(Add Breakpoint) 를 선택하면 중단점을 추가하여 선택된 노드에서 그래프 평가를 일시정지할 수 있습니다. 중단점을 추가하면 디버그 모드가 이미 활성화되어 있지 않은 경우 자동으로 활성화합니다.
중단점을 지정하고 스텝(Step) 툴바 버튼을 사용하여 그래프 평가를 노드 하나씩 단계별로 살펴볼 수 있습니다. 컨트롤 릭은 중단점 또는 현재 평가된 노드에 대해서만 평가합니다.
이 '스텝' 버튼은 다음과 같은 기능을 수행합니다.
| 이름 | 아이콘 | 설명 |
|---|---|---|
| 재개(Resume) | 실행이 중단점에서 중단된 후 재개됩니다. 또 다른 중단점을 만나면 중지됩니다. | |
| 포커스(Focus) | 현재 디버깅 중인 노드에 그래프 뷰의 포커스를 맞춥니다. | |
| 다음으로 진행(Step Next) | 중단점에서 멈추면 평가 중인 다음 노드로 디버그 포커스를 이동합니다. | |
| 함수 안으로 진행(Step Into Function) | 중단점에서 멈추면 평가 중인 다음 노드로 디버그 포커스를 이동합니다. 다음 노드가 함수 또는 축소된 그룹에 포함되어 있는 경우, 뷰가 함수 안으로 진입하여 해당 그룹의 첫 번째 노드에 포커스를 맞춥니다. | |
| 함수 밖으로 진행(Step out of Function) | 중단점에서 멈추면 평가 중인 다음 노드로 디버그 포커스를 이동합니다. 현재 노드가 함수 또는 축소된 그룹에 포함되어 있고 다음 노드가 해당 함수 또는 그룹 바깥에 위치해 있는 경우, 그래프 뷰가 해당 그룹 바깥의 다음 노드로 포커스를 변경합니다. |
프로퍼티 감시
디버깅할 때 각 그래프 노드의 프로퍼티 값은 업데이트된 값을 실시간으로 표시하도록 환경설정할 수 있습니다. 이를 활성화하려면 실시간으로 업데이트할 노드 핀을 우클릭하고 이 값 감시(Watch this value) 를 선택합니다.
프로퍼티 감시를 설정하면 노드 상단에 해당 값 정보가 표시하며, 프로퍼티 옆에 감시 중임을 나타내는 아이콘이 표시됩니다.
프로퍼티 디버깅을 중단하려면 이 핀을 우클릭하고 이 값 감시 중지(Stop watching this value) 를 선택합니다.
클래스 세팅 디버그 및 프로파일링
'클래스 세팅(Class Settings)'의 '디테일(Details)' 패널에는 그래프의 퍼포먼스를 디버깅하는 데 필요한 툴과 프로퍼티가 포함되어 있습니다. 이 패널을 열려면 클래스 세팅 을 클릭합니다.
노드 실행 수 표시(Show Node Run Counts) 를 활성화하면 실행 중에 노드가 실행된 횟수가 표시됩니다. 이는 루핑 또는 컬렉션 노드가 올바르게 실행되고 있는지 확인할 때 유용합니다.
VM 프로파일링
버추얼 머신 프로파일링(Virtual Machine Profiling), 즉 VM 프로파일링(VM Profiling) 도 그래프 퍼포먼스 및 노드 실행 속도를 실시간으로 디버깅하는 데 사용할 수 있습니다.
릭 그래프 프로파일링을 시작하려면 VM 런타임 세팅(VMRuntime Settings) > 프로파일링 활성화(Enable Profiling) 를 클릭합니다. 최소(Min) 및 최대 기간 컬러(Max Duration Color) 프로퍼티는 어떤 노드의 실행 시간이 가장 길게 걸리거나 짧게 걸리는지 마이크로초 단위로 보여줍니다. 총 마이크로초(μs) 수도 노드 옆에 표시됩니다.
실행 스택
'실행 스택(Execution Stack)' 패널은 그래프 내 노드의 연산 순서에 대한 레퍼런스를 제공합니다. 따라서 노드를 디버그하고 이벤트 시퀀스를 평가하는 용도로 사용할 수 있습니다.
'실행 스택' 패널은 '컨트롤 릭' 메뉴 바에서 창(Window) > 실행 스택 을 선택하여 열 수 있습니다.
'실행 스택'을 실행하면 다음과 같은 정보가 표시됩니다.
-
노드 열(Node Column) 은 지정된 솔브 방향에서 모든 노드의 평가 순서를 표시합니다. 여기서 아무 노드나 더블클릭하면 릭 그래프 뷰의 프레임이 해당 노드에 맞춰집니다. 또한 릭 그래프에서 노드를 선택하면 노드와 관련된 인스트럭션이 하이라이트됩니다.
-
노드 실행 수(Node Run Count) 는 노드가 실행된 횟수를 표시합니다. 클래스 세팅 에서 노드 실행 수 표시(Show Node Run Counts) 가 활성화되어 있는 경우에만 표시됩니다.
-
마이크로초 수(Microsecond Count) 는 프로파일링 이 활성화되어 있는 경우 노드가 실행되는 데까지 걸리는 총 시간을 마이크로초 (μs) 단위로 표시합니다.