fireball/lib/renderers/webgl/WebGLObjects.js
2018-12-25 17:29:22 +03:30

53 lines
694 B
JavaScript

/**
* @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 };