什么是摄像机
一般情况下,显示屏是二维的,如何把三维的场景显示到屏幕上呢?摄像机就是这样的一个抽象,它定义了三维空间到二维屏幕上的投影方式。
根据投影方法的不同,摄像机又分为正交投影照相机和透视投影摄像机。
正交投影:
透视投影:
对于制图、建模软件通常使用的是正交投影,它不会因为投影而改变物体的比例;其他的场景,大多数使用的是透视投影,这样更接近人眼的观察效果。
正交投影摄像机
参数如下:
THREE.OrthographicCamera(left, right, top, bottom, near, far)
这个六个参数就是正交投影到空间的六个面的位置,这六个面构成一个长方体,只有在这个长方体内部的物体,才能显示在屏幕上,其他空间的物体会被裁减掉。
near, far是指到照相机位置在深度平面上的位置,照相机不应该拍到物体的背面,所以这两个值为正值。
设置摄像机的位置:camera.position.set(4, -3, 5);
通过lookAt函数来指定原点方向:camera.lookAt(new THREE.Vector3(0, 0, 0));
透视投影摄像机
透视投影摄像机的构造函数为:
THREE.PerspectiveCamera(fov, aspect, near, far);
这个参数的示意图如下:
fov,是视图竖直方向上的张角。
aspect等于width/height,是摄像机水平方向和竖直方向长度的比值。一般是canvas的纵横比例。
near, far分别是摄像机到视图的最近、最远距离。都是正值。
关于摄像机就介绍到这里了。