提交 db5a299c 编写于 作者: M Mr.doob

WebGLRenderer: Reuse webGLProps in WebGLObjects.

上级 04326883
...@@ -32,8 +32,6 @@ THREE.WebGLRenderer = function ( parameters ) { ...@@ -32,8 +32,6 @@ THREE.WebGLRenderer = function ( parameters ) {
_clearColor = new THREE.Color( 0x000000 ), _clearColor = new THREE.Color( 0x000000 ),
_clearAlpha = 0; _clearAlpha = 0;
var webGLProps = new THREE.WebGLProperties();
var lights = []; var lights = [];
var opaqueObjects = []; var opaqueObjects = [];
...@@ -184,7 +182,6 @@ THREE.WebGLRenderer = function ( parameters ) { ...@@ -184,7 +182,6 @@ THREE.WebGLRenderer = function ( parameters ) {
setDefaultGLState(); setDefaultGLState();
objects.objects = {}; objects.objects = {};
objects.webGLProps.deleteAll();
webGLProps.deleteAll(); webGLProps.deleteAll();
}, false); }, false);
...@@ -211,8 +208,10 @@ THREE.WebGLRenderer = function ( parameters ) { ...@@ -211,8 +208,10 @@ THREE.WebGLRenderer = function ( parameters ) {
} }
var webGLProps = new THREE.WebGLProperties();
var objects = new THREE.WebGLObjects( _gl, webGLProps, this.info );
var extensions = new THREE.WebGLExtensions( _gl ); var extensions = new THREE.WebGLExtensions( _gl );
var objects = new THREE.WebGLObjects( _gl, this.info );
extensions.get( 'OES_texture_float' ); extensions.get( 'OES_texture_float' );
extensions.get( 'OES_texture_float_linear' ); extensions.get( 'OES_texture_float_linear' );
......
...@@ -2,13 +2,11 @@ ...@@ -2,13 +2,11 @@
* @author mrdoob / http://mrdoob.com/ * @author mrdoob / http://mrdoob.com/
*/ */
THREE.WebGLObjects = function ( gl, info ) { THREE.WebGLObjects = function ( gl, webGLProps, info ) {
var objects = {}; var objects = {};
var objectsImmediate = []; var objectsImmediate = [];
var webGLProps = new THREE.WebGLProperties();
var morphInfluences = new Float32Array( 8 ); var morphInfluences = new Float32Array( 8 );
var geometries = new THREE.WebGLGeometries( gl, info ); var geometries = new THREE.WebGLGeometries( gl, info );
...@@ -67,7 +65,6 @@ THREE.WebGLObjects = function ( gl, info ) { ...@@ -67,7 +65,6 @@ THREE.WebGLObjects = function ( gl, info ) {
this.objects = objects; this.objects = objects;
this.objectsImmediate = objectsImmediate; this.objectsImmediate = objectsImmediate;
this.webGLProps = webGLProps;
this.geometries = geometries; this.geometries = geometries;
...@@ -243,7 +240,8 @@ THREE.WebGLObjects = function ( gl, info ) { ...@@ -243,7 +240,8 @@ THREE.WebGLObjects = function ( gl, info ) {
}; };
// returns the webgl buffer for a specified attribute // returns the webgl buffer for a specified attribute
this.getAttributeBuffer = function (attribute) { this.getAttributeBuffer = function ( attribute ) {
if ( attribute instanceof THREE.InterleavedBufferAttribute ) { if ( attribute instanceof THREE.InterleavedBufferAttribute ) {
return webGLProps.get( attribute.data ).__webglBuffer return webGLProps.get( attribute.data ).__webglBuffer
...@@ -251,6 +249,7 @@ THREE.WebGLObjects = function ( gl, info ) { ...@@ -251,6 +249,7 @@ THREE.WebGLObjects = function ( gl, info ) {
} }
return webGLProps.get( attribute ).__webglBuffer; return webGLProps.get( attribute ).__webglBuffer;
} }
this.update = function ( renderList ) { this.update = function ( renderList ) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册