three.js OrthographicCamera
这一摄像机使用orthographic projection(正交投影)来进行投影。
在这种投影模式下,无论物体距离相机距离远或者近,在最终渲染的图片中物体的大小都保持不变。
这对于渲染2D场景或者UI元素是非常有用的。
代码示例
const camera = new THREE.OrthographicCamera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 );
scene.add( camera );
例子
构造器
OrthographicCamera( left : Number, right : Number, top : Number, bottom : Number, near : Number, far : Number )
left — 摄像机视锥体左侧面。right — 摄像机视锥体右侧面。top — 摄像机视锥体上侧面。bottom — 摄像机视锥体下侧面。near — 摄像机视锥体近端面。far — 摄像机视锥体远端面。这些参数一起定义了摄像机的viewing frustum(视锥体)。
属性
共有属性请参见其基类Camera。请注意,在大多数属性发生改变之后,你将需要调用.updateProjectionMatrix来使得这些改变生效。
.bottom : Float
摄像机视锥体下侧面。
.far : Float
摄像机视锥体远端面,其默认值为2000。该值必须大于near plane(摄像机视锥体近端面)的值。
.isOrthographicCamera : Boolean
只读标志,用于检查给定对象是否属于 OrthographicCamera 类型。
.left : Float
摄像机视锥体左侧面。
.near : Float
摄像机视锥体近端面。其默认值为0.1.其值的有效范围介于0和far(摄像机视锥体远端面)之间。请注意,和PerspectiveCamera不同,0对于OrthographicCamera的近端面来说是一个有效值。
.right : Float
摄像机视锥体右侧面。
.top : Float
摄像机视锥体上侧面。
.view : Object
这个值是由setViewOffset来设置的,其默认值为null。
.zoom : number
获取或者设置摄像机的缩放倍数,其默认值为1。
方法
共有方法请参见其基类Camera。
.setViewOffset ( fullWidth : Float, fullHeight : Float, x : Float, y : Float, width : Float, height : Float ) : undefined
fullWidth — 多视图的全宽设置fullHeight — 多视图的全高设置x — 副摄像机的水平偏移y — 副摄像机的垂直偏移width — 副摄像机的宽度height — 副摄像机的高度在较大的viewing frustum(视锥体)中设置偏移量,对于多窗口或者多显示器的设置是很有用的。 对于如何使用它,请查看PerspectiveCamera中的示例。
.clearViewOffset () : undefined
清除任何由.setViewOffset设置的偏移量。
.updateProjectionMatrix () : undefined
更新摄像机投影矩阵。在任何参数被改变以后必须被调用。
.toJSON (meta : Object) : Object
meta -- 包含有元数据的对象,例如对象后代中的纹理或图像将摄像机转换为 three.js JSON Object/Scene format(three.js JSON 物体/场景格式)。
源代码
src/cameras/OrthographicCamera.js
更多建议: