* Creates a new render target. * * @private * @param {Boolean} depthBuffer - Whether the render target should have a depth buffer. * @param {Boolean} stencilBuffer - Whether the render target should have a stencil buffer. * @param {Number} type - The frame buffer type. * @param {Number}
(depthBuffer, stencilBuffer, type, multisampling)
| 407 | */ |
| 408 | |
| 409 | createBuffer(depthBuffer, stencilBuffer, type, multisampling) { |
| 410 | |
| 411 | const renderer = this.renderer; |
| 412 | const size = (renderer === null) ? new Vector2() : renderer.getDrawingBufferSize(new Vector2()); |
| 413 | |
| 414 | const options = { |
| 415 | minFilter: LinearFilter, |
| 416 | magFilter: LinearFilter, |
| 417 | stencilBuffer, |
| 418 | depthBuffer, |
| 419 | type |
| 420 | }; |
| 421 | |
| 422 | const renderTarget = new WebGLRenderTarget(size.width, size.height, options); |
| 423 | |
| 424 | if(multisampling > 0) { |
| 425 | |
| 426 | renderTarget.samples = multisampling; |
| 427 | |
| 428 | } |
| 429 | |
| 430 | if(type === UnsignedByteType && renderer !== null && renderer.outputColorSpace === SRGBColorSpace) { |
| 431 | |
| 432 | renderTarget.texture.colorSpace = SRGBColorSpace; |
| 433 | |
| 434 | } |
| 435 | |
| 436 | renderTarget.texture.name = "EffectComposer.Buffer"; |
| 437 | renderTarget.texture.generateMipmaps = false; |
| 438 | |
| 439 | return renderTarget; |
| 440 | |
| 441 | } |
| 442 | |
| 443 | /** |
| 444 | * Can be used to change the main scene for all registered passes and effects. |
no outgoing calls
no test coverage detected