Spaces:
Running
Running
/** | |
* @author mrdoob / http://mrdoob.com/ | |
*/ | |
function WebGLObjects( geometries, info ) { | |
var updateList = {}; | |
function update( object ) { | |
var frame = info.render.frame; | |
var geometry = object.geometry; | |
var buffergeometry = geometries.get( object, geometry ); | |
// Update once per frame | |
if ( updateList[ buffergeometry.id ] !== frame ) { | |
if ( geometry.isGeometry ) { | |
buffergeometry.updateFromObject( object ); | |
} | |
geometries.update( buffergeometry ); | |
updateList[ buffergeometry.id ] = frame; | |
} | |
return buffergeometry; | |
} | |
function dispose() { | |
updateList = {}; | |
} | |
return { | |
update: update, | |
dispose: dispose | |
}; | |
} | |
export { WebGLObjects }; | |