S.A*_*hid 9 shader unity-game-engine
在unity3d中,有一段顶点着色器的代码:
v2f vert(appdata_full v) {
v2f o;
o.pos = mul (UNITY_MATRIX_MVP, v.vertex);
o.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
o.vertexColor = v.color * _TintColor;
return o;
}
Run Code Online (Sandbox Code Playgroud)
在下面的行中:
o.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
Run Code Online (Sandbox Code Playgroud)
TRANSFORM_TEX函数的主要任务是什么,它在CgFx中是等价的!
Hei*_*bug 12
它只是一个Unity3D特定的宏,没有Cg相应的.您可以在文件中找到此宏定义:
团结\编辑\ DATA\CGIncludes\UnityCG.inc
它是这样定义的:
// Transforms 2D UV by scale/bias property
#define TRANSFORM_TEX(tex,name) (tex.xy * name##_ST.xy + name##_ST.zw)
Run Code Online (Sandbox Code Playgroud)
它缩放和偏移纹理坐标.
XY值控制所述纹理平铺和ZW所述偏移.
| 归档时间: |
|
| 查看次数: |
13115 次 |
| 最近记录: |