,

Accessing shader properties in Cg

쉐이더는 그것의 속성을 Properties 블럭에 선언합니다. 사용자가 Cg shader program에서 그러한 속성들에 접근하기를 원한다면 사용자는 같은 이름과 매칭 타입으로 Cg 변수들을 선언할 필요가 있습니다. 하나의 예가 Shader Tutorial: Vertex and Fragment Programs에서 제공됩니다.

예를 들어 이러한 쉐이더 속성들:

_MyColor ("Some Color", Color) = (1,1,1,1) 
_MyVector ("Some Vector", Vector) = (0,0,0,0) 
_MyFloat ("My float", Float) = 0.5 
_MyTexture ("Texture", 2D) = "white" {} 
_MyCubemap ("Cubemap", CUBE) = "" {} 

Cg에서 다음처럼 접근을 위해 선언될 것입니다:

float4 _MyColor;
float4 _MyVector;
float _MyFloat; 
sampler2D _MyTexture;
samplerCUBE _MyCubemap;

Cg는 또한 uniform 키워드를 허용할 수 있으나 반드시 필요하지는 않습니다:

uniform float4 _MyColor;

ShaderLab에서의 속성 타입은 Cg 변수 타입으로 이런 방법으로 매핑됩니다: