Three.js OrthographicCamera 正投影相机参数理解

最近在使用OrthographicCamera正投影相机的时候,发现总是无法看到场景,折腾了许久才发现原来是对OrthographicCamera的参数理解有问题。查阅了网上,大部分资料对参数的解释都是和官方一直的,但是我在官方解析的基础上总结了自己的理解。

官方解释:

       OrthographicCamera( left, right, top, bottom, near, far )
       left — 相机视椎体(Camera frustum)左面。
       right — 相机视椎体(Camera frustum)右面。
       top — 相机视椎体(Camera frustum)上面。
       bottom — 相机视椎体(Camera frustum)下面。
       near — 相机视椎体(Camera frustum)前面(靠近相机的这一面)。
       far — 相机视椎体(Camera frustum)后面(远离相机的这一面)。

我的理解:

       left:左面,即以摄像机(初始相机)所在点为原点,向左的最大距离。

       right:右面,即以摄像机(初始相机)所在点为原点,向右的最大距离。

       top:上面,即以摄像机(初始相机)所在点为原点,向上的最大距离

       bottom:下面,即以摄像机(初始相机)所在点为原点,向下最大距离。

       near :渲染起点。以摄像机(初始相机)所在点为原点,垂直于left\right\top\bottom构成的十字坐标系,从距离原点什么位置开始进行渲染。

       far:渲染重点。以摄像机所在点为原点,垂直于left\right\top\bottom构成的十字坐标系,到距离原点什么位置结束渲染。

也就是说,6个参数都是相对于原点的长度,而不是模型的最大坐标点和最小坐标点。

我一开始是计算模型的box3的最大坐标点和最小坐标点,使用最大坐标点最小坐标点作为正投影相机的初始化参数,导致不管如何设置都看不到场景的任何信息。后面换成上诉的理解后才可以正常的使用。

 

 

如果有理解错误,欢迎大家指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值