Unity 计算屏幕视口UV坐标的几种方法
屏幕坐标三种获取方式,得到的坐标可以用来采样图片。
1.使用unity自动将顶点着色器中齐次裁剪空间下的posCS,转换到片段着色器中时得到的屏幕空间。
struct v2f
{float4 pos:SV_POSITION;
}v2f vert (adddata v)
{o.pos = UnityObjectToClipPos(v.vertex);
}fixed frag (v2f i):SV_Target
{//这里传入的i.pos必须是SV_POSITIONfloat2 screenUV = i.pos.xy/_ScreenParams.xy;
}
2.使用从顶点着色器直接传过来的屏幕坐标,然后手动进行透视除法,注意没有进行平台差异的处理。
struct v2f
{float4 screenUV:TEXCOORD1;
}v2f vert (adddata v)
{o.pos = UnityObjectToClipPos(v.vertex);o.screenUV = o.pos;
}fixed frag (v2f i):SV_Target
{//注意未进行平台差异处理float2 uv = i.screenUV.xy/i.screenUV.w * 0.5 + 0.5;
}
3. 使用内置函数处理
struct v2f
{float4 screenUV:TEXCOORD1;
}v2f vert (adddata v)
{o.pos = UnityObjectToClipPos(v.vertex);o.screenUV = ComputeScreenPos(o.pos);
}fixed frag (v2f i):SV_Target
{float2 uv = i.screenUV.xy/i.screenUV.w;
}
Unity 计算屏幕视口UV坐标的几种方法相关推荐
- 使用ArcGIS获取行政区四至坐标的两种方法
** 使用ArcGIS获取行政区四至坐标的两种方法 ** 今天听了赵老师的课,学到好多知识.尤其是获取行政区四至坐标的两种方法. 首先,说一下数据.数据包括好多个行政区,见图. 第一种方法:使用pyt ...
- ABAP屏幕上显示LIST的三种方法
屏幕上显示LIST的三种方法 在abap开发中,经常有用户提出list的需求,实现的方法很多,通常用的有以下三种总结一下供大家参考: 1:手工添加-就是根据需要把LIST要显示的内容一条一条加到LIS ...
- PCL点云处理之计算点到空间直线距离的四种方法(二十三)
PCL点云处理之计算点到空间直线距离的四种方法(二十三) 问题表述 方法1 方法2 方法3 方法4 全部代码(四个函数) 问题表述 给定空间一条直线的两个点或者给定直线上一点和直线方向向量 求直线外一 ...
- Unity 制作小地图(Minimap)系统 两种方法
Unity 制作小地图系统 两种方法 参考官方教程:Creating A Minimap System 方法1:Github:TanksPluggableAI 方法2:Github:GentleTan ...
- python计算今年第几天_Python三种方法计算指定日期是今年的第几天
今天早上和腾讯面试官进行了视频面试,由于音量和网络以及我的垃圾电脑的原因,个人感觉黄了... 最后面试官给了我一道简单的计算题:指定日期是今年的第几年 由于电脑卡到打字都打不动,我勉勉强强写了一点,虽 ...
- Unity 得到游戏组件的常用的两种方法
看了一些别人总结的得到组件的方法,很详细,但是初学者会看得眼花缭乱(我就是),这里给出最常用的得到游戏组件的两种方法.这里都以MeshRenderer 组件为例 1.当脚本挂在当前游戏物体,需要得到当 ...
- 计算一个数字的长度的几种方法
给定一个简单类型可以存储的正整数,求这个正整数的长度. 普通方法 每次去掉一位,sum加1. int length(int n) {int sum=0;while(n){n/=10;sum++;}re ...
- java计算句子相似度的代码_4种方法计算句子相似度
Edit Distance 计算两个字符串之间,由一个转成另一个所需要的最少编辑次数,次数越多,距离越大,也就越不相关.比如,"xiaoming"和"xiamin&quo ...
- Android屏幕保持常亮的三种方法
一.界面布局文件顶层添加keepScreenOn属性 android:keepScreenOn="true" 二.Window中设置flag getWindow().addFlag ...
最新文章
- iOS开发-文件上传原理
- 盘点那些让程序员目瞪口呆的Bug都有什么?
- 2、异步HTTP编程
- TFS命令tf:undo(强制签入签出文件)
- 网易校园招聘历年经典面试题汇总:C++研发岗
- 一加7 Pro高清渲染图曝光:A+屏幕 超棒手感
- 使用k8s Ingress暴露gRPC服务
- 磁共振成像原理-物理基础2(质子在外部磁场的情况)
- Arduino DHT11温湿度传感器数据示例
- android手机如何截屏,安卓手机怎么截屏(华为手机的几种截图方法)
- AR和VR是什么,浅看一下吧
- 轨道交通通信施工学习总结(四)漏泄同轴电缆安装
- LaTex学习教程——插入较复杂的表格(合并、换行以及加标题)
- 水果店开业怎样宣传自己的水果店,新开水果店怎么发朋友圈宣传
- 离散数学:格与布尔代数
- @Transactional 的使用
- 外贸用什么邮箱好,如何选择一个好用的外贸企业邮箱
- Angular Material 学习笔记 Chips
- ColorOS怎么切换Android,OPPO怎么升级ColorOS11 OPPO升级ColorOS11方法
- NEWPLAN-博客目录