UnityCG.cginc中一些常用的帮助函数

csharp 复制代码
//输入一个模型空间中顶点位置,返回世界空间中该点到摄像机的方向,内部使用了UnityWorldSpaceViewDir函数
float3 WorldSpaceViewDir(float4 v) 
//输入一个世界空间中顶点位置,返回世界空间中该点到摄像机的方向
float3 UnityWorldSpaceViewDir(float4 v) -> normalize(_WorldSpaceCameraPos.xyz - i.worldPos.xyz)
//输入一个模型空间中的顶点位置,返回模型空间中该点到摄像机的方向
float3 ObjSpaceViewDir(float4 v)
//仅可用于前向渲染中,输入一个模型空间顶点位置,返回世界空间中从该点到光源的光照方向, 内部使用了UnityWorldSpaceLightDir函数,没有被归一化
float3 WorldSpaceLightDir(float4 v)
//仅可用于前向渲染中,输入一个世界空间顶点位置,返回世界空间中从该点到光源的光照方向。没有被归一化
float3 UnityWorldSpaceLightDir(float4 v)
//仅可用于前向渲染中,输入一个模型空间顶点位置,返回模型空间中从该点到光源的光照方向。没有被归一化
float3 ObjSpaceLightDir(float4 v)
//把法线方向从模型空间转移到世界空间
float3 UnityObjectToWorldNormal(float3 norm)
//把方向矢量从模型空间变换到世界空间中
float3 UnityObjectToWorldDir(float3 dir)
//把方向矢量从世界空间变换到模型空间中
float3 UnityWorldToObjectDir(float3 dir)
相关推荐
天涯过客TYGK1 小时前
unity A星寻路
unity·游戏引擎
KhalilRuan2 小时前
Unity Demo——3D平台跳跃游戏笔记
笔记·游戏·unity·游戏引擎
AA陈超20 小时前
虚幻引擎UE5专用服务器游戏开发-20 添加基础能力类与连招能力
c++·游戏·ue5·游戏引擎·虚幻
ttod_qzstudio1 天前
Unity中使用EzySlice实现模型切割与UV控制完全指南
unity
南無忘码至尊1 天前
Unity 实现与 Ollama API 交互的实时流式响应处理
unity·游戏引擎·交互
平行云1 天前
如何实现UE程序大并发多集群的像素流部署
unity·ue5·图形渲染
mit6.8242 天前
[shad-PS4] Vulkan渲染器 | 着色器_重新编译器 | SPIR-V 格式
c++·游戏引擎·ps4
向宇it2 天前
【unity小技巧】在 Unity 中将 2D 精灵添加到 3D 游戏中,并实现阴影投射效果,实现类《八分旅人》《饥荒》等等的2.5D游戏效果
游戏·3d·unity·编辑器·游戏引擎·材质
向宇it2 天前
Unity Universal Render Pipeline/Lit光照材质介绍
游戏·unity·c#·游戏引擎·材质
__water3 天前
RHA《Unity兼容AndroidStudio打Apk包》
android·unity·jdk·游戏引擎·sdk·打包·androidstudio