three.js的改变渲染物体大小的一些小心得


相机类型

  three.js库里有两种相机:透视投影相机(Perspective Camera)和正交投影相机(Orthographic Camera)。两者的区别:

使用透视投影相机:

使用正交投影相机:

 

可以看出,使用正交投影相机渲染的小方块尺寸相同,方块与相机之间的距离没有影响渲染结果,而透视投影相机渲染结果则与距离有关系,类似“近大远小”,因而也更接近真实。

 如何改变渲染物体大小

  如果使用的是透视投影相机,可以通过设置相机的fov(视场)属性,fov越大,渲染出的物体越小。也可以通过设置相机的位置(即:camera.position.set(x,y,z);)来达到相同的目的。

 

  如果使用的是正交投影相机,测试发现设置相机的位置没有作用,一个简单的方法是通过相机的zoom属性来完成,需要注意的是,设置完相机的zoom值后(如,camera.zoom = 3;),

需要添加语句:camera.updateProjectionMatrix();来更新相机。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM