Unity(四) Orthographic Camera正交相机的Size
来源:互联网 发布:网络推广营销方案 编辑:程序博客网 时间:2024/05/29 08:55
PS:最近在开发游戏中使用到了正交相机作为俯视视角,需要换算所拍摄的区域,这样控制它移动不超出场景边界也避免拍摄场景外的东西,感谢给予思路的其他作者
链接1:http://blog.csdn.net/u012169685/article/details/51142839 Unity 3D 正交(Orthographic)摄像机尺寸学习笔记
Unity正交相机官方介绍 https://docs.unity3d.com/Manual/2Dor3D.html
正交相机:拉近拉远不会有近大远小现象,立体感更明显。Size类同于透视相机的FOV,不过它却代表了当前相机显示在屏幕的竖直方向上所绘制出来的区域的一半,举个栗子来说,Size=50,在场景中竖直方向所绘制的距离就是100个Unity单位。这里的相机Size可不等于Screen.Height/2,你可以改变Game视图的大小结合Debug看出。但是分辨率却是可定的值,例如我们选择16:10或其他
如图表明:相机Size=50绘制出了场景宽度*5的区域,刚好在屏幕的竖直方向把场景的宽完整显示出
那么相机在垂直地面的情况下,根据当前坐标可以获得上下移动的限制范围,如有倾斜再计算tan或sin
根据当前屏幕的分辨率Screen.width/Screen.Height宽高比,换算出实际在场景中绘制出的 拍摄的长度/Size*2(长宽比)
那么在Size不变的情况下,场景的上下左右坐标为已知,根据相机坐标以及拍摄区域的面积不难得出可移动的左右范围
Size若变同理可得
总结:
正交相机的Size定义了它所拍摄的一个宽度区域,size*2把在Unity拍摄区域对象竖直方向的长显示在了屏幕上=Unity的单位长,拍摄面积的长度值需要根据屏幕的分辨率再次换算
这里均未采用像素换算,因为只是场景,如果是UI仍需要换算屏幕像素,我偷懒了嘿嘿
重复看了几遍人家写的文章结合实验终于发现了这点东西,果然是要书读百遍昂!
欢迎指正,共同交流!
- Unity(四) Orthographic Camera正交相机的Size
- Unity Camera Orthographic Size
- Orthographic camera-正交摄像头
- Unity 3D 正交(Orthographic)摄像机尺寸学习笔记
- Unity 3D 正交(Orthographic)摄像机尺寸学习笔记
- unity perspective透视摄像机和orthographic正交摄像机解析
- Camera Perspective/orthographic
- Unity3D Unity Camera摄像机类 - 相机的函数方法
- {Unity} Unity2D camera size和分辨率
- Cesium学习笔记(四): 相机(camera)
- unity5 Orthographic模式相机视截体尺寸计算
- unity5 Orthographic模式相机视截体尺寸计算
- Unity -- 正交/透视相机切换(2D/3D相机切换)
- Camera类之orthographic-摄像机投影模式
- Unity3D Unity Camera摄像机类 - 相机的函数方法(转)
- Unity摄像机的正交视图与透视图
- Unity的camera组件
- 正交相机视野控制
- 图像滤波处理:空间滤波器实现
- 第七周项目一
- LoadRunner录制app脚本详解
- 第十二周项目二——Kruskal算法的验证
- javascript-data type
- Unity(四) Orthographic Camera正交相机的Size
- 第七周 项目三 负数把正数赶出队列
- Editplus 删除空行
- java 十六进制输出
- 第八周(2) 项目3.1-稀疏矩阵的三元组表示的实现及应用
- 《图解HTTP》读书笔记(1)第1章了解Web及网络基础(关键词:HTTP/)
- 下拉框半角还有数组
- 一文秒懂CI, CD AND CD
- android7.0, 8以上AOSP编译配置