Skip to content
Snippets Groups Projects
Commit 7f19a1d1 authored by Tony Tung's avatar Tony Tung
Browse files

avoid creating a new function everytime we switched to the postprocessing render.

parent d3414d96
No related branches found
No related tags found
No related merge requests found
...@@ -102,6 +102,18 @@ AFRAME.registerSystem("tunneleffect", { ...@@ -102,6 +102,18 @@ AFRAME.registerSystem("tunneleffect", {
this.renderer = this.scene.renderer; this.renderer = this.scene.renderer;
this.camera = this.scene.camera; this.camera = this.scene.camera;
this.originalRenderFunc = this.scene.renderer.render; this.originalRenderFunc = this.scene.renderer.render;
this.isDigest = false;
const render = this.scene.renderer.render;
const system = this;
this.postProcessingRenderFunc = function() {
if (system.isDigest) {
render.apply(this, arguments);
} else {
system.isDigest = true;
system.composer.render(system.dt);
system.isDigest = false;
}
};
} }
if (!this.composer) { if (!this.composer) {
this.composer = new THREE.EffectComposer(this.renderer); this.composer = new THREE.EffectComposer(this.renderer);
...@@ -136,19 +148,6 @@ AFRAME.registerSystem("tunneleffect", { ...@@ -136,19 +148,6 @@ AFRAME.registerSystem("tunneleffect", {
* use the render func of the effect composer when we need the postprocessing * use the render func of the effect composer when we need the postprocessing
*/ */
_bindRenderFunc: function() { _bindRenderFunc: function() {
const renderer = this.scene.renderer; this.scene.renderer.render = this.postProcessingRenderFunc;
const render = renderer.render;
const system = this;
let isDigest = false;
renderer.render = function() {
if (isDigest) {
render.apply(this, arguments);
} else {
isDigest = true;
system.composer.render(system.dt);
isDigest = false;
}
};
} }
}); });
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment