three.js OrthographicCamera

2023-02-16 17:29 更新

這一攝像機使用orthographic projection(正交投影)來進行投影。

在這種投影模式下,無論物體距離相機距離遠或者近,在最終渲染的圖片中物體的大小都保持不變。

這對于渲染2D場景或者UI元素是非常有用的。

代碼示例

const camera = new THREE.OrthographicCamera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 );
scene.add( camera );

例子

camera

interactive / cubes / ortho

materials / cubemap / dynamic

postprocessing / advanced

postprocessing / dof2

postprocessing / godrays

rtt

shaders / tonemapping

shadowmap

構造器

OrthographicCamera( left : Number, right : Number, top : Number, bottom : Number, near : Number, far : Number )

left — 攝像機視錐體左側面。right — 攝像機視錐體右側面。top — 攝像機視錐體上側面。bottom — 攝像機視錐體下側面。near — 攝像機視錐體近端面。far — 攝像機視錐體遠端面。這些參數一起定義了攝像機的viewing frustum(視錐體)。

屬性

共有屬性請參見其基類Camera。請注意,在大多數屬性發(fā)生改變之后,你將需要調用.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


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號