셰이더 지원 여부 확인 함수
이 문서는 현재 타겟 플랫폼이 셰이더를 지원하는지 여부를 확인하는 함수에 대해 설명합니다. 이 함수는 셰이더를 지원하면 true를 반환하고, 지원하지 않으면 false를 반환합니다. 예를 들어, HTML5에서 WebGL이 없거나 구형 안드로이드 기기에서는 false가 반환됩니다. 안드로이드에서는 프로젝트에 셰이더 자산이 정의되지 않은 경우, 장치가 셰이더를 지원하더라도 항상 false를 반환합니다.
문법
shaders_are_supported();
반환값
- Boolean: 셰이더 지원 여부
예제
global.GFX = false;
if (shaders_are_supported()) {
if (shader_is_compiled(sh_glass) && shader_is_compiled(sh_warp)) {
global.GFX = true;
}
}
위의 코드는 global.GFX 변수를 false로 설정한 후, 플랫폼이 셰이더를 지원하고 두 개의 셰이더가 올바르게 컴파일되었는지 확인합니다. 조건이 충족되면 global.GFX를 true로 설정합니다.
활용 예제
| 예제 번호 | 설명 |
|---|---|
| 1 | 셰이더 지원 여부에 따라 다른 그래픽 효과를 적용하는 게임 로직 |
| 2 | 셰이더가 지원되지 않는 경우 대체 그래픽을 로드하는 방법 |
| 3 | 다양한 플랫폼에서의 셰이더 지원 상태를 체크하여 최적화하는 방법 |
| 4 | 셰이더가 지원되는 경우에만 고급 그래픽 기능을 활성화하는 설정 |
| 5 | 셰이더가 지원되지 않는 경우 사용자에게 경고 메시지를 표시하는 방법 |
// 예제 1: 셰이더 지원 여부에 따라 다른 그래픽 효과 적용
if (shaders_are_supported()) {
// 고급 그래픽 효과 적용
} else {
// 기본 그래픽 효과 적용
}
// 예제 2: 셰이더가 지원되지 않는 경우 대체 그래픽 로드
if (!shaders_are_supported()) {
// 대체 그래픽 로드
}
// 예제 3: 다양한 플랫폼에서 셰이더 지원 상태 체크
if (shaders_are_supported()) {
// 최적화된 그래픽 사용
} else {
// 기본 그래픽 사용
}
// 예제 4: 셰이더가 지원되는 경우 고급 기능 활성화
if (shaders_are_supported()) {
// 고급 기능 활성화
}
// 예제 5: 셰이더가 지원되지 않는 경우 경고 메시지 표시
if (!shaders_are_supported()) {
show_message("이 장치는 셰이더를 지원하지 않습니다.");
}