赞
踩
TRANSFORM_TEX方法比较简单,就是将模型顶点的uv和Tiling、Offset两个变量进行运算,计算出实际显示用的定点uv。
该方法可以在UnityCG.cginc文件中找到,内容也很简单:
// Transforms 2D UV by scale/bias property
#define TRANSFORM_TEX(tex,name) (tex.xy * name##_ST.xy + name##_ST.zw)
配合使用时的代码:
o.uv = TRANSFORM_TEX (v.texcoord, _MainTex);
其中
v是appdata_base类型,v.texcoord就是模型顶点的uv数据。
_MainTex是使用的图片。
name##_ST实际上就是_MainTex_ST。
name##_ST.xy就是Tiling的xy值。
name##_ST.zw就是Offset的xy值。
1、appdata_base: 包含顶点位置,法线和一个纹理坐标。
2、appdata_tan:包含顶点位置,切线,法线和一个纹理坐标。
3、appdata_full:包含位置、法线、切线、顶点色和两个纹理坐标。
4、appdata_img:包含位置和一个纹理坐标。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。