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