1
HLSL은 컴파일 전에 코드를 문자 그대로 변경하는 C (++)에 해당하는 전 처리기입니까? 이 경우 그런 메서드를 사용하면 런타임 조건문을 추가하지 않고도 쉐이더를 특수화 할 수 있습니다. 사실입니까?HLSL에서 #define을 수행하면 성능 오버 헤드가 추가됩니까?
HLSL은 컴파일 전에 코드를 문자 그대로 변경하는 C (++)에 해당하는 전 처리기입니까? 이 경우 그런 메서드를 사용하면 런타임 조건문을 추가하지 않고도 쉐이더를 특수화 할 수 있습니다. 사실입니까?HLSL에서 #define을 수행하면 성능 오버 헤드가 추가됩니까?
#define
님이 예상대로 작동합니다. 컴파일시 평가됩니다.
(불필요한) 분기가 발생하지 않도록 컴파일러의 출력을 확인하려면 HLSL 컴파일러 (fxc)에 /Fc <file>
옵션을 사용하여 컴파일 된 셰이더의 어셈블리 목록을 생성하십시오.