three.js CubeCamera

2023-02-16 17:29 更新

創(chuàng)建6個渲染到WebGLCubeRenderTarget的攝像機。

代碼示例

// Create cube render target
const cubeRenderTarget = new THREE.WebGLCubeRenderTarget( 128, { generateMipmaps: true, minFilter: THREE.LinearMipmapLinearFilter } );

// Create cube camera
const cubeCamera = new THREE.CubeCamera( 1, 100000, cubeRenderTarget );
scene.add( cubeCamera );

// Create car
const chromeMaterial = new THREE.MeshLambertMaterial( { color: 0xffffff, envMap: cubeRenderTarget.texture } );
const car = new THREE.Mesh( carGeometry, chromeMaterial );
scene.add( car );

// Update the render target cube
car.visible = false;
cubeCamera.position.copy( car.position );
cubeCamera.update( renderer, scene );

// Render the scene
car.visible = true;
renderer.render( scene, camera );

例子

materials / cubemap / dynamic

構(gòu)造器

CubeCamera( near : Number, far : Number, renderTarget : WebGLCubeRenderTarget )

near -- 近剪切面的距離far -- 遠剪切面的距離renderTarget -- The destination cube render target.

構(gòu)造一個包含6個PerspectiveCameras(透視攝像機)的立方攝像機, 并將其拍攝的場景渲染到一個WebGLCubeRenderTarget上。

屬性

共有屬性請參見其基類Object3D。

.renderTarget : WebGLCubeRenderTarget

目標立方體渲染目標。

方法

共有方法請參見其基類Object3D。

.update ( renderer : WebGLRenderer, scene : Scene ) : undefined

renderer -- 當前的WebGL渲染器scene -- 當前的場景

這個方法用來更新renderTarget(渲染目標對象)。

源代碼

src/cameras/CubeCamera.js


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號