CG 编程中的语义是什么?

What are the semantics in CG programming?

msdn表示 语义是附加到着色器输入或输出的字符串,它传达有关参数预期用途的信息

unity表示 语义是 Cg 的一个特殊子句,用于定义 fragment/vertex Shader

的默认输入值

实际语义是什么?我们为什么用它?有必要吗?

基本上它告诉了特定字段中存储的数据类型 - 位置、法线、纹理坐标等等。

在固定功能流水线中描述顶点格式很有用,但在可编程流水线中语义由着色器描述,因此它在顶点格式中的定义可能没有意义(例如,着色器可能使用 TEXCOORD0 作为法线)但它编译器仍然需要。