diff --git a/src/core/graphics/Graphics.js b/src/core/graphics/Graphics.js index 6d923b5..f341e56 100644 --- a/src/core/graphics/Graphics.js +++ b/src/core/graphics/Graphics.js @@ -672,11 +672,12 @@ * @param scaleMode {number} Should be one of the scaleMode consts * @return {Texture} a texture of the graphics object */ -Graphics.prototype.generateTexture = function (resolution, scaleMode) +Graphics.prototype.generateTexture = function (renderer, resolution, scaleMode) { + resolution = resolution || 1; - var bounds = this.getBounds(); + var bounds = this.getLocalBounds(); var canvasBuffer = new CanvasBuffer(bounds.width * resolution, bounds.height * resolution); diff --git a/src/core/graphics/Graphics.js b/src/core/graphics/Graphics.js index 6d923b5..f341e56 100644 --- a/src/core/graphics/Graphics.js +++ b/src/core/graphics/Graphics.js @@ -672,11 +672,12 @@ * @param scaleMode {number} Should be one of the scaleMode consts * @return {Texture} a texture of the graphics object */ -Graphics.prototype.generateTexture = function (resolution, scaleMode) +Graphics.prototype.generateTexture = function (renderer, resolution, scaleMode) { + resolution = resolution || 1; - var bounds = this.getBounds(); + var bounds = this.getLocalBounds(); var canvasBuffer = new CanvasBuffer(bounds.width * resolution, bounds.height * resolution); diff --git a/src/core/renderers/SystemRenderer.js b/src/core/renderers/SystemRenderer.js index bc3cebe..19ea62a 100644 --- a/src/core/renderers/SystemRenderer.js +++ b/src/core/renderers/SystemRenderer.js @@ -134,7 +134,7 @@ * @member {number} * @private */ - this._backgroundColor = 0xFFFFFF; + this._backgroundColor = options.backgroundColor || 0x000000; /** * The background color as an [R, G, B] array. diff --git a/src/core/graphics/Graphics.js b/src/core/graphics/Graphics.js index 6d923b5..f341e56 100644 --- a/src/core/graphics/Graphics.js +++ b/src/core/graphics/Graphics.js @@ -672,11 +672,12 @@ * @param scaleMode {number} Should be one of the scaleMode consts * @return {Texture} a texture of the graphics object */ -Graphics.prototype.generateTexture = function (resolution, scaleMode) +Graphics.prototype.generateTexture = function (renderer, resolution, scaleMode) { + resolution = resolution || 1; - var bounds = this.getBounds(); + var bounds = this.getLocalBounds(); var canvasBuffer = new CanvasBuffer(bounds.width * resolution, bounds.height * resolution); diff --git a/src/core/renderers/SystemRenderer.js b/src/core/renderers/SystemRenderer.js index bc3cebe..19ea62a 100644 --- a/src/core/renderers/SystemRenderer.js +++ b/src/core/renderers/SystemRenderer.js @@ -134,7 +134,7 @@ * @member {number} * @private */ - this._backgroundColor = 0xFFFFFF; + this._backgroundColor = options.backgroundColor || 0x000000; /** * The background color as an [R, G, B] array. diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index 99123db..2e3129d 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -266,12 +266,17 @@ * @param renderTarget {RenderTarget} The render target to use to render this display object * */ -WebGLRenderer.prototype.renderDisplayObject = function (displayObject, renderTarget)//projection, buffer) +WebGLRenderer.prototype.renderDisplayObject = function (displayObject, renderTarget, clear)//projection, buffer) { // TODO is this needed... //this.blendModeManager.setBlendMode(CONST.BLEND_MODES.NORMAL); this.setRenderTarget(renderTarget); + if(clear) + { + renderTarget.clear(); + } + // start the filter manager this.filterManager.setFilterStack( renderTarget.filterStack ); diff --git a/src/core/graphics/Graphics.js b/src/core/graphics/Graphics.js index 6d923b5..f341e56 100644 --- a/src/core/graphics/Graphics.js +++ b/src/core/graphics/Graphics.js @@ -672,11 +672,12 @@ * @param scaleMode {number} Should be one of the scaleMode consts * @return {Texture} a texture of the graphics object */ -Graphics.prototype.generateTexture = function (resolution, scaleMode) +Graphics.prototype.generateTexture = function (renderer, resolution, scaleMode) { + resolution = resolution || 1; - var bounds = this.getBounds(); + var bounds = this.getLocalBounds(); var canvasBuffer = new CanvasBuffer(bounds.width * resolution, bounds.height * resolution); diff --git a/src/core/renderers/SystemRenderer.js b/src/core/renderers/SystemRenderer.js index bc3cebe..19ea62a 100644 --- a/src/core/renderers/SystemRenderer.js +++ b/src/core/renderers/SystemRenderer.js @@ -134,7 +134,7 @@ * @member {number} * @private */ - this._backgroundColor = 0xFFFFFF; + this._backgroundColor = options.backgroundColor || 0x000000; /** * The background color as an [R, G, B] array. diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index 99123db..2e3129d 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -266,12 +266,17 @@ * @param renderTarget {RenderTarget} The render target to use to render this display object * */ -WebGLRenderer.prototype.renderDisplayObject = function (displayObject, renderTarget)//projection, buffer) +WebGLRenderer.prototype.renderDisplayObject = function (displayObject, renderTarget, clear)//projection, buffer) { // TODO is this needed... //this.blendModeManager.setBlendMode(CONST.BLEND_MODES.NORMAL); this.setRenderTarget(renderTarget); + if(clear) + { + renderTarget.clear(); + } + // start the filter manager this.filterManager.setFilterStack( renderTarget.filterStack ); diff --git a/src/core/textures/RenderTexture.js b/src/core/textures/RenderTexture.js index 8731e50..61ca53b 100644 --- a/src/core/textures/RenderTexture.js +++ b/src/core/textures/RenderTexture.js @@ -277,17 +277,11 @@ } } - - if (clear) - { - this.textureBuffer.clear(); - } - //TODO rename textureBuffer to renderTarget.. var temp = this.renderer.filterManager; this.renderer.filterManager = this.filterManager; - this.renderer.renderDisplayObject(displayObject, this.textureBuffer); + this.renderer.renderDisplayObject(displayObject, this.textureBuffer, clear); this.renderer.filterManager = temp; }; diff --git a/src/core/graphics/Graphics.js b/src/core/graphics/Graphics.js index 6d923b5..f341e56 100644 --- a/src/core/graphics/Graphics.js +++ b/src/core/graphics/Graphics.js @@ -672,11 +672,12 @@ * @param scaleMode {number} Should be one of the scaleMode consts * @return {Texture} a texture of the graphics object */ -Graphics.prototype.generateTexture = function (resolution, scaleMode) +Graphics.prototype.generateTexture = function (renderer, resolution, scaleMode) { + resolution = resolution || 1; - var bounds = this.getBounds(); + var bounds = this.getLocalBounds(); var canvasBuffer = new CanvasBuffer(bounds.width * resolution, bounds.height * resolution); diff --git a/src/core/renderers/SystemRenderer.js b/src/core/renderers/SystemRenderer.js index bc3cebe..19ea62a 100644 --- a/src/core/renderers/SystemRenderer.js +++ b/src/core/renderers/SystemRenderer.js @@ -134,7 +134,7 @@ * @member {number} * @private */ - this._backgroundColor = 0xFFFFFF; + this._backgroundColor = options.backgroundColor || 0x000000; /** * The background color as an [R, G, B] array. diff --git a/src/core/renderers/webgl/WebGLRenderer.js b/src/core/renderers/webgl/WebGLRenderer.js index 99123db..2e3129d 100644 --- a/src/core/renderers/webgl/WebGLRenderer.js +++ b/src/core/renderers/webgl/WebGLRenderer.js @@ -266,12 +266,17 @@ * @param renderTarget {RenderTarget} The render target to use to render this display object * */ -WebGLRenderer.prototype.renderDisplayObject = function (displayObject, renderTarget)//projection, buffer) +WebGLRenderer.prototype.renderDisplayObject = function (displayObject, renderTarget, clear)//projection, buffer) { // TODO is this needed... //this.blendModeManager.setBlendMode(CONST.BLEND_MODES.NORMAL); this.setRenderTarget(renderTarget); + if(clear) + { + renderTarget.clear(); + } + // start the filter manager this.filterManager.setFilterStack( renderTarget.filterStack ); diff --git a/src/core/textures/RenderTexture.js b/src/core/textures/RenderTexture.js index 8731e50..61ca53b 100644 --- a/src/core/textures/RenderTexture.js +++ b/src/core/textures/RenderTexture.js @@ -277,17 +277,11 @@ } } - - if (clear) - { - this.textureBuffer.clear(); - } - //TODO rename textureBuffer to renderTarget.. var temp = this.renderer.filterManager; this.renderer.filterManager = this.filterManager; - this.renderer.renderDisplayObject(displayObject, this.textureBuffer); + this.renderer.renderDisplayObject(displayObject, this.textureBuffer, clear); this.renderer.filterManager = temp; }; diff --git a/src/interaction/InteractionManager.js b/src/interaction/InteractionManager.js index 9a85af6..6874701 100644 --- a/src/interaction/InteractionManager.js +++ b/src/interaction/InteractionManager.js @@ -799,5 +799,47 @@ this.interactiveDataPool.push( touchData ); }; +/** + * Destroys the interaction manager + */ +InteractionManager.prototype.destroy = function () { + this.renderer = null; + + this.mouse = null; + + this.eventData = null; + + this.interactiveDataPool = null; + + this.interactionDOMElement = null; + + this.onMouseUp = null; + this.processMouseUp = null; + + + this.onMouseDown = null; + this.processMouseDown = null; + + this.onMouseMove = null; + this.processMouseMove = null; + + this.onMouseOut = null; + this.processMouseOverOut = null; + + + this.onTouchStart = null; + this.processTouchStart = null; + + this.onTouchEnd = null; + this.processTouchEnd = null; + + this.onTouchMove = null; + this.processTouchMove = null; + + this._tempPoint = null; + + this.updateBound = null; +}; + core.WebGLRenderer.registerPlugin('interaction', InteractionManager); core.CanvasRenderer.registerPlugin('interaction', InteractionManager);