瀏覽代碼

Add dispose function to VREffect. Otherwise it causes a memory leak if it is instantiated several times -> always add eventlistener on window (#9787)

PaHae 8 年之前
父節點
當前提交
5cf791f9ed
共有 1 個文件被更改,包括 4 次插入0 次删除
  1. 4 0
      examples/js/effects/VREffect.js

+ 4 - 0
examples/js/effects/VREffect.js

@@ -137,6 +137,10 @@ THREE.VREffect = function ( renderer, onError ) {
 
 	window.addEventListener( 'vrdisplaypresentchange', onVRDisplayPresentChange, false );
 
+	this.dispose = function () {
+		window.removeEventListener( 'vrdisplaypresentchange', onVRDisplayPresentChange, false );
+	};
+
 	this.setFullScreen = function ( boolean ) {
 
 		return new Promise( function ( resolve, reject ) {