display_set_sleep_margin 함수 설명
display_set_sleep_margin
함수는 게임의 렌더링 타이밍에 사용되는 수면 마진 값을 설정하는 데 사용됩니다. 이 함수는 밀리초 값을 요구합니다. 기본 값은 다음과 같습니다:
플랫폼 | 밀리초 |
---|---|
Windows | 10 |
macOS | 10 |
Ubuntu | 10 |
HTML | 5 |
Android | 4 |
iOS | 4 |
Xbox | 10 |
PS4 | 10 |
Nintendo Switch | 10 |
타이밍 방법이 VSync 타이밍을 사용하도록 설정되어 있더라도, 수면 마진은 게임의 렌더링에 영향을 미칠 수 있으므로 이 값을 설정할 때 주의해야 합니다. 디스플레이 타이밍에 대한 더 많은 정보는 display_set_timing_method()
를 참조하세요.
또한, Windows에서 성능과 전력 소비를 추가로 제어하려면 런타임 중에 스레드 스케줄러의 해상도를 조정할 수 있습니다.
구문
display_set_sleep_margin(milliseconds);
인수 설명
인수명 | 타입 | 설명 |
---|---|---|
milliseconds | Real | 수면 마진의 밀리초 수 |
반환값
- N/A
활용 예제
아래 코드는 타이밍 방법을 확인하고, tm_sleep
으로 설정되어 있지 않으면 이를 설정하고 수면 마진을 20으로 설정합니다.
if (display_get_timing_method() != tm_sleep) {
display_set_timing_method(tm_sleep);
if (display_get_sleep_margin() != 20) {
display_set_sleep_margin(20);
}
}
다양한 활용 예제:
- 게임 성능 최적화:
gml if (performance_mode) { display_set_sleep_margin(10); } else { display_set_sleep_margin(30); }
- 플랫폼에 따른 설정:
gml if (os_type == os_windows) { display_set_sleep_margin(15); } else if (os_type == os_android) { display_set_sleep_margin(5); }
- 사용자 설정 옵션:
gml var user_margin = get_user_defined_sleep_margin(); display_set_sleep_margin(user_margin);
- 디버깅 모드에서의 설정:
gml if (debug_mode) { display_set_sleep_margin(1); }
- 게임 종료 시 초기화:
gml display_set_sleep_margin(10); // 기본값으로 복원