Version: 2019.3
GLSL 셰이더 프로그램
셰이더 컴파일 타겟 레벨

Unity에서 사용하는 셰이딩 언어

Unity 셰이더 프로그램HLSL 언어의 배리언트를 사용합니다. HLSL은 때때로 Cg라고도 불리지만, Unity는 Cg를 사용하지 않는다는 점에 유의하십시오.

셰이더 컴파일러

다음과 같이 플랫폼마다 서로 다른 셰이더 컴파일러를 셰이더 프로그램 컴파일에 사용합니다.

  • Windows 및 Microsoft 플랫폼(DX11, DX12 및 Xbox One)은 모두 Microsoft의 HLSL 컴파일러(현재 d3dcompiler_47)를 사용합니다.
  • OpenGL Core, OpenGL ES 3, OpenGL ES 2.0 및 Metal은 Microsoft의 HLSL을 사용한 후 HLSLcc를 사용하여 GLSL 또는 Metal로 바이트코드 이동을 합니다.
  • 기타 콘솔 플랫폼은 해당되는 컴파일러를 사용합니다(예: PS4에서는 PSSL).
  • 표면 셰이더는 코드 생성 분석 단계에 HLSL 및 MojoShader를 사용합니다.

사전 정의된 셰이더 매크로를 사용하면 한 컴파일러에서만 지원되는 HLSL 구문을 사용하거나 컴파일러 버그를 피하기 위해 Unity가 사용 중인 컴파일러를 식별할 수 있습니다.

관련 항목

GLSL 셰이더 프로그램
셰이더 컴파일 타겟 레벨