From e1be08e4d9a88154ee07583b2c7a72330232b35c Mon Sep 17 00:00:00 2001 From: "Mr.doob" Date: Sat, 11 Mar 2017 07:16:48 -0800 Subject: [PATCH] Material: Removed needsUpdate getter/setter. --- examples/js/renderers/SoftwareRenderer.js | 14 +------------ src/materials/Material.js | 25 +---------------------- 2 files changed, 2 insertions(+), 37 deletions(-) diff --git a/examples/js/renderers/SoftwareRenderer.js b/examples/js/renderers/SoftwareRenderer.js index d192619022..4ad1c88307 100644 --- a/examples/js/renderers/SoftwareRenderer.js +++ b/examples/js/renderers/SoftwareRenderer.js @@ -528,16 +528,6 @@ THREE.SoftwareRenderer = function ( parameters ) { } - function onMaterialUpdate ( event ) { - - var material = event.target; - - material.removeEventListener( 'update', onMaterialUpdate ); - - delete shaders[ material.id ]; - - } - function getMaterialShader( material ) { var id = material.id; @@ -545,9 +535,7 @@ THREE.SoftwareRenderer = function ( parameters ) { if ( shader && material.map && !textures[ material.map.id ] ) delete shaders[ id ]; - if ( shaders[ id ] === undefined ) { - - material.addEventListener( 'update', onMaterialUpdate ); + if ( shaders[ id ] === undefined || material.needsUpdate === true ) { if ( material instanceof THREE.MeshBasicMaterial || material instanceof THREE.MeshLambertMaterial || diff --git a/src/materials/Material.js b/src/materials/Material.js index b2ce073a3a..9e33aa09e9 100644 --- a/src/materials/Material.js +++ b/src/materials/Material.js @@ -59,27 +59,10 @@ function Material() { this.visible = true; - this._needsUpdate = true; + this.needsUpdate = true; } -Object.defineProperty( Material.prototype, 'needsUpdate', { - - get: function () { - - return this._needsUpdate; - - }, - - set: function ( value ) { - - if ( value === true ) this.update(); - this._needsUpdate = value; - - } - -} ); - Object.assign( Material.prototype, EventDispatcher.prototype, { isMaterial: true, @@ -336,12 +319,6 @@ Object.assign( Material.prototype, EventDispatcher.prototype, { }, - update: function () { - - this.dispatchEvent( { type: 'update' } ); - - }, - dispose: function () { this.dispatchEvent( { type: 'dispose' } ); -- GitLab