Browse Source

Merge pull request #8398 from huningxin/fix_8358

Support Uint8Array in BufferAttribute
Mr.doob 9 years ago
parent
commit
75fe679076
1 changed files with 12 additions and 1 deletions
  1. 12 1
      src/renderers/WebGLRenderer.js

+ 12 - 1
src/renderers/WebGLRenderer.js

@@ -1015,8 +1015,19 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 						}
 
+						var type = _gl.FLOAT;
+						var normalized = false;
+						var array = geometryAttribute.array;
+
+						if ( array instanceof Uint8Array ) {
+
+							type = _gl.UNSIGNED_BYTE;
+							normalized = true;
+
+						}
+
 						_gl.bindBuffer( _gl.ARRAY_BUFFER, buffer );
-						_gl.vertexAttribPointer( programAttribute, size, _gl.FLOAT, false, 0, startIndex * size * 4 ); // 4 bytes per Float32
+						_gl.vertexAttribPointer( programAttribute, size, type, normalized, 0, startIndex * size * array.BYTES_PER_ELEMENT );
 
 					}