unity depth的camera的depth有什么意思

10682人阅读
Game Development(10)
Unity的camera组件
文章介绍的是个大概,其中rendering paths和culling、clear flag还有更详细的用法
正交和透视
unity的camera支持两种投影方式:正交和透视人眼看到的物体,近处的比较大、远处的比较小,unity的摄像机支持这种透视效果,称为透视相机如果不需要物体大小随到摄像机的距离改变,可以采用正交投影
一般摄像机仅关注一个范围内的物体,垂直于摄像机z轴有两个平面,分别称为远、近裁剪平面,只有两个平面之间的物体才会投影到摄像机对于正交投影,可视区域为一个长方体对于透视投影,可视区域为一个锥体的一部分,锥体顶端是摄像机,锥体底面为远裁剪面,并被近裁剪面切割掉顶部
背景图和天空盒
在户外场景,投影到2D平面后部分区域是没有任何投影的,这时可以用背景色填充,但更逼真的方法是使用天空盒摄像机转动时会看到天空盒的不同位置,但位置始终在天空盒的正中心天空盒是由6张图片拼接成的立方体盒子,显示在所有物体之后
多摄像头切换
如果多个摄像头可用,则深度最大的摄像头会显示在最上方,覆盖其他摄像头。可以设置disable完成多个摄像头之间的切换使用第二个摄像机显示小地图
深度调高,以显示在上方设置viewport rect,调整占用2D屏幕的大小
摄像头射线投影
2D屏幕上的任意点都对应一条射线,可以使用ScreenPointToRay和ViewportPointToRay来获得此射线此射线起点位于近裁剪面
camera组件参数
Clear Flags:使用什么清除像素缓存?比如天空盒或当前camera的背景色
Depth only选项配合Culling Mask可以完成单独显示一个物体不被遮挡的效果,如fps游戏中的枪
Background:背景色Culling Mask:仅渲染选中的layerProjection:正交或透视Size:当选中正交时,设置可视区域大小FOV:当选中透视时,y轴方向视角Clipping Planes:裁剪面位置Viewport Rect:显示在屏幕上的大小、位置Depth:深度,值大的渲染在最前面Rendering Path:渲染方法,包括:
延迟光照Deffered Lighting:将lighting在屏幕空间进行
Target Texture:用于截图,如果使用则会停止渲染到屏幕HDR:开启HDR
作者Focustc,来自于
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:552189次
积分:5890
积分:5890
排名:第3388名
原创:98篇
转载:10篇
评论:100条
本科就读于中国科学技术大学少年班学院理科试验班,研究生就读于中国科学技术大学信息学院。
毕业后进入网易游戏从事手游开发工作。关注Unity3D/VR/Quant/C++/Python
阅读:60758
阅读:18861
文章:12篇
阅读:130595
(1)(1)(1)(3)(5)(5)(1)(1)(2)(10)(5)(3)(2)(5)(4)(1)(3)(12)(3)(8)(15)(6)(1)(1)(4)(10)给我们留言
地址:福建省晋江市青阳街道洪山路国际工业设计园纳金网
电话: 400-067-3919
(周一到周五, 周六周日休息)
设计师入口
查看: 1114|回复: 4
最后登录注册时间阅读权限90积分33058
资深设计师, 积分 33058, 距离下一级还需 16942 积分
纳金币32449 精华23
请问中能否添加4个主Camera,然后窗口分个区域各自显示不同Camera的视角?
类似Vega Prime,可以在Window中添加Channel的方式开启N个不同的视角.
每个Channel中放不同的Observer, 这样在同一个窗口中可以同时看到4个角度.
刚接触Unity3D,不知是否支持类似功能.
请各位大虾不吝赐教!
最后登录注册时间阅读权限100积分71446
纳金币59344 精华20
可以的,设定好相机的depth与Camera的offset值就行。
最后登录注册时间阅读权限90积分33058
资深设计师, 积分 33058, 距离下一级还需 16942 积分
纳金币32449 精华23
最后登录注册时间阅读权限90积分26788
资深设计师, 积分 26788, 距离下一级还需 23212 积分
纳金币12844 精华81
来支持一下楼主的帖子哦
最后登录注册时间阅读权限90积分23569
资深设计师, 积分 23569, 距离下一级还需 26431 积分
纳金币19785 精华62
学习了,虽然还是有难度,谢谢楼主的用心
活跃且尽责职守的版主
站长推荐 /1
纳金名模第133期隔断3d模型:数量100个,大小为174MB。完全免费下载哦!这样的福利我和我的小伙伴们都惊呆了!!下载地址:
400-067-3919
Powered by - X2.5
Narkii Inc.提高 Unity 中管理多个相机的效率
招聘信息:
&&& 在Unity里管理多个相机(Camera)是一个挺痛苦的事情,"Camera Preview"也不是恨实用,在众多的相机中禁用,启用来查看相机位置设置视角,非常烦琐.
&&& Security Camera的目的就是让这个过程简化.只要将脚本放进项目目录,并且拖拽到场景中每个相机上,包括MainCamera.现在你就可以快速的切换查看各个相机的实际效果,在Unity的层次视图(Hierarchy)点击你要设置的相机,就可以在视图中看到这个相机的效果了,不必再一个个的去关闭其他相机了.
&&& 告别这可怜的相机预览吧.
&&& 要注意的是要使用Security
Camera脚本,你应该给每个相机一个唯一的名称以及确保有个主相机且标签tag为"MainCamera",如果你忘记这样做.系统会提醒你.另外脚 本还提供了一个静态方法,叫"ChangeCamera",该方法只需要一个字符串,就可以用脚本快速切换相机了.像下面这样:
using UnityE
using System.C
public class CameraSwap : MonoBehaviour
&&&&void Update ()
&&&&&&&&//pressing 0, 1, 2, and 3 will swap before the cameras named "Main Camera",
&&&&&&&&//"Camera 1", "Camera 2", and "Camera 3" which have Security Camera added:
&&&&&&&&if (Input.GetKeyDown(KeyCode.Alpha0)) {
&&&&&&&&&&&&SecurityCamera.ChangeCamera("Main Camera");
&&&&&&&&if (Input.GetKeyDown(KeyCode.Alpha1)) {
&&&&&&&&&&&&SecurityCamera.ChangeCamera("Camera 1");
&&&&&&&&if (Input.GetKeyDown(KeyCode.Alpha2)) {
&&&&&&&&&&&&SecurityCamera.ChangeCamera("Camera 2");
&&&&&&&&if (Input.GetKeyDown(KeyCode.Alpha3)) {
&&&&&&&&&&&&SecurityCamera.ChangeCamera("Camera 3");
&&& 脚本是通过设置相机的深度来实现相机切换的,Depth值会是999999和-999999.
微信扫一扫
订阅每日移动开发及APP推广热点资讯公众号:CocoaChina
您还没有登录!请或
点击量9363点击量7437点击量7366点击量4540点击量4096点击量3799点击量3254点击量3139点击量2806
&2016 Chukong Technologies,Inc.
京公网安备89

我要回帖

更多关于 unity shader depth 的文章

 

随机推荐