Surface Shader中的Unity Shader顶点格式

时间:2012-03-22 16:05:54

标签: shader unity3d surface vertex

我试图在表面着色器中使用顶点数据来获取角度。我让相机居中于0,0。在顶点函数中什么坐标系是v.vertex?

#pragma surface surf Lambert vertex:vert nolightmap 

void vert (inout appdata_full v, out Input o) 
    {
        o.svc =(1-(_vc*v.vertex.z)/sqrt(pow(v.vertex.x,2) + pow(v.vertex.y,2) + pow(v.vertex.z,2)))/sqrt( 1 - _vc  * _vc);
    }

我认为这将是世界坐标系,但是对于在3DS Max中提前旋转以查看相同顶点的对象与单位旋转的对象相比,我获得了不同的结果。我用v.vertex.xyz实际收到了哪些数据?

1 个答案:

答案 0 :(得分:1)

对象/模型/本地空间。对于批处理网格,唯一不完全正确的情况。批处理将所有相关网格放入同一空间,这恰好与世界空间相同。