From 9b365be73b65ce6d1c01bbbd6c4ee2b0fcf69a03 Mon Sep 17 00:00:00 2001 From: "Mr.doob" Date: Thu, 20 Apr 2017 16:40:11 -0700 Subject: [PATCH] Clean up. --- examples/files.js | 1 + ...iple.html => webgl_materials_compile.html} | 0 src/renderers/WebGLRenderer.js | 67 +++++++++---------- 3 files changed, 34 insertions(+), 34 deletions(-) rename examples/{webgl_materials_nodes_multiple.html => webgl_materials_compile.html} (100%) diff --git a/examples/files.js b/examples/files.js index a132fcda79..8c5c658211 100644 --- a/examples/files.js +++ b/examples/files.js @@ -131,6 +131,7 @@ var files = { "webgl_materials_bumpmap_skin", "webgl_materials_cars", "webgl_materials_channels", + "webgl_materials_compile", "webgl_materials_cubemap", "webgl_materials_cubemap_balls_reflection", "webgl_materials_cubemap_balls_refraction", diff --git a/examples/webgl_materials_nodes_multiple.html b/examples/webgl_materials_compile.html similarity index 100% rename from examples/webgl_materials_nodes_multiple.html rename to examples/webgl_materials_compile.html diff --git a/src/renderers/WebGLRenderer.js b/src/renderers/WebGLRenderer.js index 962830e9cc..09dcd75891 100644 --- a/src/renderers/WebGLRenderer.js +++ b/src/renderers/WebGLRenderer.js @@ -688,6 +688,12 @@ function WebGLRenderer( parameters ) { }; + function absNumericalSort( a, b ) { + + return Math.abs( b[ 0 ] ) - Math.abs( a[ 0 ] ); + + } + this.renderBufferDirect = function ( camera, fog, geometry, material, object, group ) { state.setMaterial( material ); @@ -1026,52 +1032,45 @@ function WebGLRenderer( parameters ) { } - // Sorting + // Compile - function absNumericalSort( a, b ) { + this.compile = function ( scene, camera ) { - return Math.abs( b[ 0 ] ) - Math.abs( a[ 0 ] ); + lights = []; - } - - this.compile = function(scene, camera){ + scene.traverse( function ( object ) { - lights = []; - - scene.traverse(function( object ) { - if ( object.isLight ) { - - lights.push(object); - + + lights.push( object ); + } - - }); - - setupLights(lights,camera); - - scene.traverse(function( object ) { - - - if (object.material) { - + + } ); + + setupLights( lights, camera ); + + scene.traverse( function ( object ) { + + if ( object.material ) { + if ( Array.isArray( object.material ) ) { - + for ( var i = 0; i < object.material.length; i ++ ) { - - initMaterial(object.material[i], scene.fog, object); - + + initMaterial( object.material[ i ], scene.fog, object ); + } - + } else { - - initMaterial(object.material, scene.fog, object); - + + initMaterial( object.material, scene.fog, object ); + } - + } - - }); + + } ); }; -- GitLab