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

Updated builds.

上级 23dadbe3
......@@ -26510,21 +26510,10 @@ THREE.WebGLRenderer = function ( parameters ) {
}
function loadUniformsGeneric ( uniforms ) {
function loadUniform( uniform, type, location, value ) {
var texture, textureUnit;
for ( var j = 0, jl = uniforms.length; j < jl; j ++ ) {
var uniform = uniforms[ j ][ 0 ];
// needsUpdate property is not added to all uniforms.
if ( uniform.needsUpdate === false ) continue;
var type = uniform.type;
var value = uniform.value;
var location = uniforms[ j ][ 1 ];
if ( type === '1i' ) {
_gl.uniform1i( location, value );
......@@ -26613,93 +26602,37 @@ THREE.WebGLRenderer = function ( parameters ) {
// single THREE.Color
_gl.uniform3f( location, value.r, value.g, value.b );
/*
} else if ( type === 's' ) {
// TODO: Optimize this
for ( var propertyName in uniform.properties ) {
var property = uniform.properties[ propertyName ];
var locationProperty = location[ propertyName ];
var valueProperty = value[ propertyName ];
type = property.type;
var properties = uniform.properties;
if ( type === 'i' ) {
for ( var name in properties ) {
_gl.uniform1i( locationProperty, valueProperty );
var property = properties[ name ];
var locationProperty = location[ name ];
var valueProperty = value[ name ];
} else if ( type === 'f' ) {
_gl.uniform1f( locationProperty, valueProperty );
} else if ( type === 'v2' ) {
_gl.uniform2f( locationProperty, valueProperty.x, valueProperty.y );
} else if ( type === 'v3' ) {
_gl.uniform3f( locationProperty, valueProperty.x, valueProperty.y, valueProperty.z );
} else if ( type === 'v4' ) {
_gl.uniform4f( locationProperty, valueProperty.x, valueProperty.y, valueProperty.z, valueProperty.w );
} else if ( type === 'c' ) {
_gl.uniform3f( locationProperty, valueProperty.r, valueProperty.g, valueProperty.b );
}
loadUniform( property, property.type, locationProperty, valueProperty );
}
*/
} else if ( type === 'sa' ) {
// TODO: Optimize this
for ( var i = 0; i < value.length; i ++ ) {
for ( var propertyName in uniform.properties ) {
var properties = uniform.properties;
var property = uniform.properties[ propertyName ];
var locationProperty = location[ i ][ propertyName ];
var valueProperty = value[ i ][ propertyName ];
for ( var i = 0, l = value.length; i < l; i ++ ) {
type = property.type;
for ( var name in properties ) {
if ( type === 'i' ) {
var property = properties[ name ];
var locationProperty = location[ i ][ name ];
var valueProperty = value[ i ][ name ];
_gl.uniform1i( locationProperty, valueProperty );
} else if ( type === 'f' ) {
_gl.uniform1f( locationProperty, valueProperty );
} else if ( type === 'v2' ) {
_gl.uniform2f( locationProperty, valueProperty.x, valueProperty.y );
} else if ( type === 'v3' ) {
_gl.uniform3f( locationProperty, valueProperty.x, valueProperty.y, valueProperty.z );
} else if ( type === 'v4' ) {
_gl.uniform4f( locationProperty, valueProperty.x, valueProperty.y, valueProperty.z, valueProperty.w );
} else if ( type === 'c' ) {
_gl.uniform3f( locationProperty, valueProperty.r, valueProperty.g, valueProperty.b );
} else if ( type === 'm4' ) {
_gl.uniformMatrix4fv( locationProperty, false, valueProperty.elements );
}
loadUniform( property, property.type, locationProperty, valueProperty );
}
......@@ -26845,7 +26778,7 @@ THREE.WebGLRenderer = function ( parameters ) {
_gl.uniform1i( location, textureUnit );
if ( ! texture ) continue;
if ( ! texture ) return;
if ( texture instanceof THREE.CubeTexture ||
( Array.isArray( texture.image ) && texture.image.length === 6 ) ) {
......@@ -26924,6 +26857,23 @@ THREE.WebGLRenderer = function ( parameters ) {
}
function loadUniformsGeneric( uniforms ) {
for ( var i = 0, l = uniforms.length; i < l; i ++ ) {
var uniform = uniforms[ i ][ 0 ];
// needsUpdate property is not added to all uniforms.
if ( uniform.needsUpdate === false ) continue;
var type = uniform.type;
var location = uniforms[ i ][ 1 ];
var value = uniform.value;
loadUniform( uniform, type, location, value );
}
}
function setupLights ( lights, camera ) {
......
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册