提交 636d2e5d 编写于 作者: B Ben Houston

set render target names properly for all created render targets in ThreeJS.

上级 4f53d937
......@@ -32,6 +32,7 @@ THREE.PMREMCubeUVPacker = function( cubeTextureLods, numLods ) {
};
this.CubeUVRenderTarget = new THREE.WebGLRenderTarget( size, size, params );
this.CubeUVRenderTarget.texture.name = "PMREMCubeUVPacker.cubeUv";
this.CubeUVRenderTarget.texture.mapping = THREE.CubeUVReflectionMapping;
this.camera = new THREE.OrthographicCamera( - size * 0.5, size * 0.5, - size * 0.5, size * 0.5, 0.0, 1000 );
......
......@@ -42,6 +42,7 @@ THREE.PMREMGenerator = function( sourceTexture ) {
for ( var i = 0; i < this.numLods; i ++ ) {
var renderTarget = new THREE.WebGLRenderTargetCube( size, size, params );
renderTarget.texture.name = "PMREMGenerator.cube" + i;
this.cubeLods.push( renderTarget );
size = Math.max( 16, size / 2 );
......
......@@ -190,14 +190,17 @@ THREE.AdaptiveToneMappingPass.prototype = Object.assign( Object.create( THREE.Pa
var pars = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat }; // was RGB format. changed to RGBA format. see discussion in #8415 / #8450
this.luminanceRT = new THREE.WebGLRenderTarget( this.resolution, this.resolution, pars );
this.luminanceRT.texture.name = "AdaptiveToneMappingPass.l";
this.luminanceRT.texture.generateMipmaps = false;
this.previousLuminanceRT = new THREE.WebGLRenderTarget( this.resolution, this.resolution, pars );
this.previousLuminanceRT.texture.name = "AdaptiveToneMappingPass.pl";
this.previousLuminanceRT.texture.generateMipmaps = false;
// We only need mipmapping for the current luminosity because we want a down-sampled version to sample in our adaptive shader
pars.minFilter = THREE.LinearMipMapLinearFilter;
this.currentLuminanceRT = new THREE.WebGLRenderTarget( this.resolution, this.resolution, pars );
this.currentLuminanceRT.texture.name = "AdaptiveToneMappingPass.cl";
if ( this.adaptive ) {
......
......@@ -16,7 +16,9 @@ THREE.BloomPass = function ( strength, kernelSize, sigma, resolution ) {
var pars = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat };
this.renderTargetX = new THREE.WebGLRenderTarget( resolution, resolution, pars );
this.renderTargetX.texture.name = "BloomPass.x";
this.renderTargetY = new THREE.WebGLRenderTarget( resolution, resolution, pars );
this.renderTargetY.texture.name = "BloomPass.y";
// copy material
......
......@@ -23,10 +23,12 @@ THREE.BokehPass = function ( scene, camera, params ) {
this.renderTargetColor = new THREE.WebGLRenderTarget( width, height, {
minFilter: THREE.LinearFilter,
magFilter: THREE.LinearFilter,
format: THREE.RGBFormat
format: THREE.RGBFormat,
name: "BokehPass.color"
} );
this.renderTargetDepth = this.renderTargetColor.clone();
this.renderTargetDepth.texture.name = "BokehPass.depth";
// depth material
......
......@@ -16,11 +16,12 @@ THREE.EffectComposer = function ( renderer, renderTarget ) {
};
var size = renderer.getSize();
renderTarget = new THREE.WebGLRenderTarget( size.width, size.height, parameters );
renderTarget.texture.name = "EffectComposer.rt1";
}
this.renderTarget1 = renderTarget;
this.renderTarget2 = renderTarget.clone();
this.renderTarget2.texture.name = "EffectComposer.rt2";
this.writeBuffer = this.renderTarget1;
this.readBuffer = this.renderTarget2;
......
......@@ -28,6 +28,7 @@ THREE.OutlinePass = function ( resolution, scene, camera, selectedObjects ) {
this.maskBufferMaterial = new THREE.MeshBasicMaterial({color:0xffffff});
this.maskBufferMaterial.side = THREE.DoubleSide;
this.renderTargetMaskBuffer = new THREE.WebGLRenderTarget( this.resolution.x, this.resolution.y, pars );
this.renderTargetMaskBuffer.texture.name = "OutlinePass.mask";
this.renderTargetMaskBuffer.texture.generateMipmaps = false;
this.depthMaterial = new THREE.MeshDepthMaterial();
......@@ -39,20 +40,26 @@ THREE.OutlinePass = function ( resolution, scene, camera, selectedObjects ) {
this.prepareMaskMaterial.side = THREE.DoubleSide;
this.renderTargetDepthBuffer = new THREE.WebGLRenderTarget( this.resolution.x, this.resolution.y, pars );
this.renderTargetDepthBuffer.texture.name = "OutlinePass.depth";
this.renderTargetDepthBuffer.texture.generateMipmaps = false;
this.renderTargetMaskDownSampleBuffer = new THREE.WebGLRenderTarget( resx, resy, pars );
this.renderTargetMaskDownSampleBuffer.texture.name = "OutlinePass.depthDownSample";
this.renderTargetMaskDownSampleBuffer.texture.generateMipmaps = false;
this.renderTargetBlurBuffer1 = new THREE.WebGLRenderTarget( resx, resy, pars );
this.renderTargetBlurBuffer1.texture.name = "OutlinePass.blur1";
this.renderTargetBlurBuffer1.texture.generateMipmaps = false;
this.renderTargetBlurBuffer2 = new THREE.WebGLRenderTarget( Math.round(resx/2), Math.round(resy/2), pars );
this.renderTargetBlurBuffer2.texture.name = "OutlinePass.blur2";
this.renderTargetBlurBuffer2.texture.generateMipmaps = false;
this.edgeDetectionMaterial = this.getEdgeDetectionMaterial();
this.renderTargetEdgeBuffer1 = new THREE.WebGLRenderTarget( resx, resy, pars );
this.renderTargetEdgeBuffer1.texture.name = "OutlinePass.edge1";
this.renderTargetEdgeBuffer1.texture.generateMipmaps = false;
this.renderTargetEdgeBuffer2 = new THREE.WebGLRenderTarget( Math.round(resx/2), Math.round(resy/2), pars );
this.renderTargetEdgeBuffer2.texture.name = "OutlinePass.edge2";
this.renderTargetEdgeBuffer2.texture.generateMipmaps = false;
var MAX_EDGE_THICKNESS = 4;
......
......@@ -13,7 +13,8 @@ THREE.SMAAPass = function ( width, height ) {
stencilBuffer: false,
generateMipmaps: false,
minFilter: THREE.LinearFilter,
format: THREE.RGBFormat
format: THREE.RGBFormat,
name: "SMAAPass.edges"
} );
this.weightsRT = new THREE.WebGLRenderTarget( width, height, {
......@@ -21,7 +22,8 @@ THREE.SMAAPass = function ( width, height ) {
stencilBuffer: false,
generateMipmaps: false,
minFilter: THREE.LinearFilter,
format: THREE.RGBAFormat
format: THREE.RGBAFormat,
name: "SMAAPass.weights"
} );
// textures
......@@ -30,6 +32,7 @@ THREE.SMAAPass = function ( width, height ) {
areaTextureImage.src = this.getAreaTexture();
this.areaTexture = new THREE.Texture();
this.areaTexture.name = "SMAAPass.area";
this.areaTexture.image = areaTextureImage;
this.areaTexture.format = THREE.RGBFormat;
this.areaTexture.minFilter = THREE.LinearFilter;
......@@ -41,6 +44,7 @@ THREE.SMAAPass = function ( width, height ) {
searchTextureImage.src = this.getSearchTexture();
this.searchTexture = new THREE.Texture();
this.searchTexture.name = "SMAAPass.search";
this.searchTexture.image = searchTextureImage;
this.searchTexture.magFilter = THREE.NearestFilter;
this.searchTexture.minFilter = THREE.NearestFilter;
......
......@@ -73,7 +73,7 @@ THREE.SSAARenderPass.prototype = Object.assign( Object.create( THREE.Pass.protot
if ( ! this.sampleRenderTarget ) {
this.sampleRenderTarget = new THREE.WebGLRenderTarget( readBuffer.width, readBuffer.height,
{ minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat } );
{ minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat, name: "SSAARenderPass.sample" } );
}
......
......@@ -27,7 +27,7 @@ THREE.SavePass = function ( renderTarget ) {
if ( this.renderTarget === undefined ) {
this.renderTargetParameters = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBFormat, stencilBuffer: false };
this.renderTargetParameters = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBFormat, stencilBuffer: false, name: "SavePass.rt" };
this.renderTarget = new THREE.WebGLRenderTarget( window.innerWidth, window.innerHeight, this.renderTargetParameters );
}
......
......@@ -49,12 +49,14 @@ THREE.TAARenderPass.prototype = Object.assign( Object.create( THREE.SSAARenderPa
if ( ! this.sampleRenderTarget ) {
this.sampleRenderTarget = new THREE.WebGLRenderTarget( readBuffer.width, readBuffer.height, this.params );
this.sampleRenderTarget.texture.name = "TAARenderPass.sample";
}
if ( ! this.holdRenderTarget ) {
this.holdRenderTarget = new THREE.WebGLRenderTarget( readBuffer.width, readBuffer.height, this.params );
this.holdRenderTarget.texture.name = "TAARenderPass.hold";
}
......
......@@ -22,18 +22,21 @@ THREE.UnrealBloomPass = function ( resolution, strength, radius, threshold ) {
var resy = Math.round(this.resolution.y/2);
this.renderTargetBright = new THREE.WebGLRenderTarget( resx, resy, pars );
this.renderTargetBright.texture.name = "UnrealBloomPass.bright";
this.renderTargetBright.texture.generateMipmaps = false;
for( var i=0; i<this.nMips; i++) {
var renderTarget = new THREE.WebGLRenderTarget( resx, resy, pars );
renderTarget.texture.name = "UnrealBloomPass.h" + i;
renderTarget.texture.generateMipmaps = false;
this.renderTargetsHorizontal.push(renderTarget);
var renderTarget = new THREE.WebGLRenderTarget( resx, resy, pars );
renderTarget.texture.name = "UnrealBloomPass.v" + i;
renderTarget.texture.generateMipmaps = false;
this.renderTargetsVertical.push(renderTarget);
......
......@@ -178,7 +178,7 @@ Spiral sampling http://web.archive.org/web/20120421191837/http://www.cgafaq.info
depthMaterial.depthPacking = THREE.RGBADepthPacking;
depthMaterial.blending = THREE.NoBlending;
var pars = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter };
var pars = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, name: "SSAOShader.rt" };
depthRenderTarget = new THREE.WebGLRenderTarget( window.innerWidth, window.innerHeight, pars );
// Setup SSAO pass
......
......@@ -49,7 +49,7 @@ function CubeCamera( near, far, cubeResolution ) {
cameraNZ.lookAt( new Vector3( 0, 0, - 1 ) );
this.add( cameraNZ );
var options = { format: RGBFormat, magFilter: LinearFilter, minFilter: LinearFilter };
var options = { format: RGBFormat, magFilter: LinearFilter, minFilter: LinearFilter, name: "cubeCamera" };
this.renderTarget = new WebGLRenderTargetCube( cubeResolution, cubeResolution, options );
......
......@@ -186,7 +186,7 @@ function WebGLShadowMap( _renderer, _lights, _objects, capabilities ) {
if ( shadow.map === null ) {
var pars = { minFilter: NearestFilter, magFilter: NearestFilter, format: RGBAFormat };
var pars = { minFilter: NearestFilter, magFilter: NearestFilter, format: RGBAFormat, name: ( light.name + ".shadowMap" ) };
shadow.map = new WebGLRenderTarget( _shadowMapSize.x, _shadowMapSize.y, pars );
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册