未验证 提交 22db2d7d 编写于 作者: M Mr.doob 提交者: GitHub

Merge pull request #14597 from oguzeroglu/unreal_bloom_pass_memory_optimization

UnrealBloomPass memory optimization
/**
* @author spidersharma / http://eduperiment.com/
*
*
* Inspired from Unreal Engine
* https://docs.unrealengine.com/latest/INT/Engine/Rendering/PostProcessEffects/Bloom/
*/
......@@ -13,6 +13,9 @@ THREE.UnrealBloomPass = function ( resolution, strength, radius, threshold ) {
this.threshold = threshold;
this.resolution = ( resolution !== undefined ) ? new THREE.Vector2( resolution.x, resolution.y ) : new THREE.Vector2( 256, 256 );
// create color only once here, reuse it later inside the render function
this.clearColor = new THREE.Color( 0, 0, 0 );
// render targets
var pars = { minFilter: THREE.LinearFilter, magFilter: THREE.LinearFilter, format: THREE.RGBAFormat };
this.renderTargetsHorizontal = [];
......@@ -189,7 +192,7 @@ THREE.UnrealBloomPass.prototype = Object.assign( Object.create( THREE.Pass.proto
var oldAutoClear = renderer.autoClear;
renderer.autoClear = false;
renderer.setClearColor( new THREE.Color( 0, 0, 0 ), 0 );
renderer.setClearColor( this.clearColor, 0 );
if ( maskActive ) renderer.context.disable( renderer.context.STENCIL_TEST );
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册