|
@@ -1,6 +1,4 @@
|
|
import { Object3D } from '../core/Object3D.js';
|
|
import { Object3D } from '../core/Object3D.js';
|
|
-import { WebGLCubeRenderTarget } from '../renderers/WebGLCubeRenderTarget.js';
|
|
|
|
-import { LinearFilter, RGBFormat } from '../constants.js';
|
|
|
|
import { Vector3 } from '../math/Vector3.js';
|
|
import { Vector3 } from '../math/Vector3.js';
|
|
import { PerspectiveCamera } from './PerspectiveCamera.js';
|
|
import { PerspectiveCamera } from './PerspectiveCamera.js';
|
|
|
|
|
|
@@ -13,12 +11,21 @@ import { PerspectiveCamera } from './PerspectiveCamera.js';
|
|
|
|
|
|
var fov = 90, aspect = 1;
|
|
var fov = 90, aspect = 1;
|
|
|
|
|
|
-function CubeCamera( near, far, cubeResolution, options ) {
|
|
|
|
|
|
+function CubeCamera( near, far, renderTarget ) {
|
|
|
|
|
|
Object3D.call( this );
|
|
Object3D.call( this );
|
|
|
|
|
|
this.type = 'CubeCamera';
|
|
this.type = 'CubeCamera';
|
|
|
|
|
|
|
|
+ if ( renderTarget.isWebGLCubeRenderTarget !== true ) {
|
|
|
|
+
|
|
|
|
+ console.error( 'THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.' );
|
|
|
|
+ return;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ this.renderTarget = renderTarget;
|
|
|
|
+
|
|
var cameraPX = new PerspectiveCamera( fov, aspect, near, far );
|
|
var cameraPX = new PerspectiveCamera( fov, aspect, near, far );
|
|
cameraPX.up.set( 0, - 1, 0 );
|
|
cameraPX.up.set( 0, - 1, 0 );
|
|
cameraPX.lookAt( new Vector3( 1, 0, 0 ) );
|
|
cameraPX.lookAt( new Vector3( 1, 0, 0 ) );
|
|
@@ -49,18 +56,12 @@ function CubeCamera( near, far, cubeResolution, options ) {
|
|
cameraNZ.lookAt( new Vector3( 0, 0, - 1 ) );
|
|
cameraNZ.lookAt( new Vector3( 0, 0, - 1 ) );
|
|
this.add( cameraNZ );
|
|
this.add( cameraNZ );
|
|
|
|
|
|
- options = options || { format: RGBFormat, magFilter: LinearFilter, minFilter: LinearFilter };
|
|
|
|
-
|
|
|
|
- this.renderTarget = new WebGLCubeRenderTarget( cubeResolution, options );
|
|
|
|
- this.renderTarget.texture.name = "CubeCamera";
|
|
|
|
-
|
|
|
|
this.update = function ( renderer, scene ) {
|
|
this.update = function ( renderer, scene ) {
|
|
|
|
|
|
if ( this.parent === null ) this.updateMatrixWorld();
|
|
if ( this.parent === null ) this.updateMatrixWorld();
|
|
|
|
|
|
var currentRenderTarget = renderer.getRenderTarget();
|
|
var currentRenderTarget = renderer.getRenderTarget();
|
|
|
|
|
|
- var renderTarget = this.renderTarget;
|
|
|
|
var generateMipmaps = renderTarget.texture.generateMipmaps;
|
|
var generateMipmaps = renderTarget.texture.generateMipmaps;
|
|
|
|
|
|
renderTarget.texture.generateMipmaps = false;
|
|
renderTarget.texture.generateMipmaps = false;
|
|
@@ -93,8 +94,6 @@ function CubeCamera( near, far, cubeResolution, options ) {
|
|
|
|
|
|
var currentRenderTarget = renderer.getRenderTarget();
|
|
var currentRenderTarget = renderer.getRenderTarget();
|
|
|
|
|
|
- var renderTarget = this.renderTarget;
|
|
|
|
-
|
|
|
|
for ( var i = 0; i < 6; i ++ ) {
|
|
for ( var i = 0; i < 6; i ++ ) {
|
|
|
|
|
|
renderer.setRenderTarget( renderTarget, i );
|
|
renderer.setRenderTarget( renderTarget, i );
|