three.js 相機camera屬性解析

在使用three.js初始化相機的時候經(jīng)常看到如下代碼:

function initCamera() {

????camera = new THREE.PerspectiveCamera(45, width / height, 1, 10000);?

????camera.position.x = 0;//相機的位置

????camera.position.y = 0;

????camera.position.z = 600;

????camera.up.x = 0;//相機以哪個方向為上方

????camera.up.y = 1;

????camera.up.z = 0;

????camera.lookAt(0,0,0);//相機看向的坐標

}

第一句很容易理解,即聲明了一個透視投影相機,那么下面的代碼都是什么意思呢,我們來看一下:

1.camera.position.(x,y,z):用來確定相機的位置,來個栗子


camera.position.(0,1000,0);

2.camera.up.(x/y/z):用來確定相機以哪個方向為上方,再來個栗子


camera.up.x=0;? ? ? ?camera.up.y=1;? ? ? ? ?camera.up.z=0;? (y軸為上方)


camera.up.x=0;? ? ? camera.up.y=0;? ? ? camera.up.z=1;? (z軸為上方)

通俗的理解就是相機正著拍,側(cè)著拍,旋轉(zhuǎn)拍

3.camera.lookAt(0,0,0):用來確定相機看向的坐標,上栗子


相機位置在camera.position(500,500,1000)? ? ? 看向原點camera.lookAt(0,0,0)


不設(shè)置lookAt時,相機默認由正z軸看向xy平面, 所以只能看到y(tǒng)軸500位置的線條了
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

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