프로파일러 사용법
프로파일러는 코드의 문제를 찾아내는 디버거와는 달리, 게임을 최적화하기 위해 더 미세한 세부 사항을 확인할 수 있도록 도와줍니다. 프로파일러 옵션은 성능 개요를 제공하며, 함수, 스크립트 호출 시간 및 특정 이벤트 완료 시간 등을 보여줍니다.
프로파일러 기능
프로파일러를 사용하기 위한 주요 기능은 다음과 같습니다:
기능 | 설명 |
---|---|
Enable / Disable | 프로파일러를 활성화하거나 비활성화하는 버튼입니다. 활성화하면 이벤트, 스크립트 및 함수가 메인 창에 나열됩니다. |
Time Display | 평균 시간과 절대 시간 간 전환할 수 있는 체크박스입니다. 체크하지 않으면 총 호출 수와 총 소요 시간을 보여줍니다. |
View Mode | Top Down 또는 Bottom Up 보기 모드를 선택할 수 있습니다. 각 모드에 따라 데이터 표시 방식이 달라집니다. |
View Target | 프로젝트 GML, 백그라운드 엔진 프로세스 또는 둘 다를 선택하여 볼 수 있습니다. |
프로파일러 데이터 표시
프로파일러 데이터는 네 개의 열로 표시되며, 각 열을 클릭하면 해당 기준에 따라 데이터를 정렬할 수 있습니다.
열 이름 | 설명 |
---|---|
Name | 호출된 이벤트, 스크립트 또는 함수의 이름입니다. 추가 호출이 있을 경우 아이콘이 표시됩니다. |
Time | 프로파일링 동안 함수가 소요한 총 시간 또는 평균 시간을 보여줍니다. |
Calls | 주어진 이벤트, 함수 또는 스크립트에 대한 총 호출 수 또는 평균 호출 수를 보여줍니다. |
Step% | 호출이 단일 단계에서 차지하는 전체 비율을 나타냅니다. |
활용 예제
다음은 프로파일러를 활용하는 몇 가지 예제입니다:
// 예제 1: 특정 함수의 성능 측정
function exampleFunction() {
// 함수 내용
}
// 프로파일러 활성화
profiler_enable();
// 함수 호출
exampleFunction();
// 프로파일러 비활성화
profiler_disable();
// 예제 2: 평균 호출 시간 확인
function anotherFunction() {
// 함수 내용
}
// 프로파일러 활성화
profiler_enable();
// 함수 호출
for (var i = 0; i < 100; i++) {
anotherFunction();
}
// 프로파일러 비활성화
profiler_disable();
// 예제 3: 이벤트 성능 분석
event_perform(ev_mousebutton, mb_left);
// 프로파일러 활성화
profiler_enable();
// 이벤트 호출
event_perform(ev_mousebutton, mb_left);
// 프로파일러 비활성화
profiler_disable();
이러한 예제들은 프로파일러를 통해 게임의 성능을 분석하고 최적화하는 데 도움이 될 수 있습니다.