Three.js與計(jì)算機(jī)圖形學(xué)(三)

Three.js中的3d場(chǎng)景(scene)為無(wú)限大的,我們當(dāng)然不可能去獲取無(wú)限大的信息,在Three.js中封裝了一個(gè)相機(jī)(Camera)的概念,它作為場(chǎng)景的觀察者,獲取有限的指定參數(shù)范圍內(nèi)的信息。

相機(jī)分為兩種:

????1. [endif]正投影相機(jī)(THREE.OrthographicCamera)

????2. [endif]透視相機(jī)(THREE.PerspectiveCamera)


上圖是正投影相機(jī)的取景范圍,相機(jī)只會(huì)取立方體場(chǎng)景以內(nèi)的信息,以外的不會(huì)抓取的,正投影的相機(jī)的特點(diǎn)是視線都是平行的,同樣絕對(duì)大小的物體不會(huì)因?yàn)榫嚯x的遠(yuǎn)近而投影的大小不一,常用于工程建模。


上圖是透視相機(jī)的取景范圍,同樣相機(jī)只會(huì)抓取立方體以內(nèi)場(chǎng)景的信息,透視相機(jī)的特點(diǎn)的所有的視線都會(huì)相較于相機(jī)所在的位置,所以它會(huì)有遠(yuǎn)小近大的特點(diǎn),類似真實(shí)世界的投影成像。

不管是正投影相機(jī)還是透視相近都繼承于相機(jī)類,所以相機(jī)類中包含著一些兩者公有的屬性,想要獲取一塊需求的場(chǎng)景并通過(guò)一定的投影規(guī)則成像在瀏覽器上就必須有如下信息:

????1. [endif]相機(jī)的位置(position),首先相機(jī)的位置決定觀察者所處于的位置。

????2. [endif]相機(jī)的視點(diǎn)(lookAt),相機(jī)的位置確定后,視點(diǎn)就決定了相機(jī)觀察的方向,position與lookAt的連線的矢量是視線的正方面。

????3. [endif]實(shí)例化相機(jī)時(shí)的參數(shù),參數(shù)決定近平面遠(yuǎn)平面夾角之類的信息,至此就可以在場(chǎng)景Scene中通過(guò)相機(jī)的位置(position),視點(diǎn)(lookAt)和實(shí)例化參數(shù)確定一塊空間,并獲取信息。

????4. [endif]相機(jī)的上方向(up),空間是沒(méi)有上下左右,甚至東南西北的概念的,當(dāng)我們獲取了一塊空間時(shí),需要去定義空間的哪個(gè)方向?yàn)樯喜拍艹晒Φ耐队霸跒g覽器上。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文主要是講解 Three.js 的相關(guān)概念,幫助大家對(duì) Three.js 以及相關(guān)知識(shí)形成比較完整的理解。今年來(lái)...
    Simon王小白閱讀 8,744評(píng)論 2 9
  • function init() { function test1 () { // 第一...
    依米花1993閱讀 1,190評(píng)論 0 1
  • 看完陽(yáng)光姐妹淘 我不知道該講什么 只是覺(jué)得時(shí)間會(huì)改變很多 年少的喜歡,青春的小心思,多年后想來(lái)還是很甜 迎著和煦春...
    可愛(ài)蛋黃派閱讀 199評(píng)論 0 1
  • 胡學(xué)敏 信陽(yáng) 焦點(diǎn)網(wǎng)絡(luò)初級(jí)13期堅(jiān)持分享第273天(2019.1.27星期日) 各位家長(zhǎng)大家好,為了一個(gè)共同的目的...
    胡涂涂tutu閱讀 224評(píng)論 0 4
  • 管理中的激勵(lì)因素和保健因素----赫茨伯格的雙因素論 很多公司特別喜歡給員工做激勵(lì)、培訓(xùn),通過(guò)不斷...
    橙子的小字屋閱讀 803評(píng)論 0 0

友情鏈接更多精彩內(nèi)容