首页 > 计算机图形学 > Shader > UnityShader内置函数
2022
01-21

UnityShader内置函数

UnityCG.cginc 常用数据结构体

输入

appdata_base

顶点着色器输入,包含位置、法线和一个纹理坐标。

appdata_tan

顶点着色器输入,包含位置、法线、切线和一个纹理坐标。

appdata_full

顶点着色器输入,包含位置、法线、切线、顶点颜色和两个纹理坐标。

appdata_img

顶点着色器输入,包含位置和一个纹理坐标。

输出

v2f_img

可用于顶点着色器的输出,包含裁剪空间中的位置,纹理坐标

UnityCG.cginc 常用函数

摄像机方向(视角方向)

float3 WorldSpaceViewDir(float4 v)

输入一个模型空间中的顶点位置,返回世界空间中从该点到摄像机的观察方向

float3 UnityWorldSpaceViewDir(float4 v)

输入一个世界空间中的顶点位置,返回世界空间中从该点到摄像机的观察方向

float3 ObjSpaceViewDir(float4 v)

输入一个模型空间中的顶点位置,返回模型空间中从该店到摄像机的观察方向

光源方向

仅当使用前向渲染(ForwardBase 或 ForwardAdd 通道类型)时,这些函数才有用

float3 WorldSpaceLightDir(float4 v)

输入一个模型空间中的顶点位置,返回世界空间中从这个点到平行光源的方向

float3 UnityWorldSpaceLightDir(float3 v)

输入一个世界空间中的顶点位置,返回世界空间中从这个点到平行光源的方向

float3 ObjSpaceLightDir(float4 v)

输入一个模型空间中的顶点位置,返回模型空间中从这个点到平行光源的方向

方向转换

float3 UnityObjectToWorldNormal(float3 norm)

把法线方向,从模型空间转为世界空间

float3 UnityObjectToWorldDir(float3 dir)

把方向从模型空间,转为世界空间

float3 UnityWorldToObjectDir(float3 dir)

把方向从世界空间,转为模型空间

最后编辑:
作者:网虫虫
网虫虫
分享是一种快乐; 分享是一种美德; 分享是一种幸福!

0 0 votes
Article Rating
Subscribe
提醒
guest
0 评论
Inline Feedbacks
View all comments