NPOT Memory Leak

Maybe a memory leak when load a NPOT image.

by liyuanqiu

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/three.js/r73/three.min.js"></script>

JavaScript

var scene = new THREE.Scene();

var camera = new THREE.PerspectiveCamera(50, window.innerWidth / window.innerHeight, 1, 10000);
camera.position.set(3000, 3000, 3000);
scene.add(camera);

var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);

var axisHelper = new THREE.AxisHelper( 5000 );
scene.add( axisHelper );

setInterval(function () {

  var image = new Image();
  image.onload = function () {
  
    var texture = new THREE.Texture();
    texture.image = image;
    texture.needsUpdate = true;
    
    var material = new THREE.MeshBasicMaterial({
    	map: texture,
      transparent: true,
      side: THREE.DoubleSide,
      depthWrite: false
    });
    
    var geometry = new THREE.PlaneGeometry(image.width, image.height);
    
    var plane = new THREE.Mesh(geometry, material);
    
    scene.add(plane);
    
    console.log('one done.', image.width, image.height);
  };
  //image.src = "https://st.hotrod.com/uploads/sites/21/2015/11/3-1973-plymouth-cuda-hellfish-front-quarter.jpg";
  image.src = "https://ssl.gstatic.com/trends_tpt/340b37856b4124ddee24fa64e826e313f076299b758914932c63fa061d4eb901.jpg";
}, 3000);

animate(renderer);
function animate() {
  requestAnimationFrame(animate);
  renderer.render(scene, camera);
}