diff --git a/examples/materials_gl.html b/examples/materials_gl.html
index 1bafd995..22bf0a2a 100644
--- a/examples/materials_gl.html
+++ b/examples/materials_gl.html
@@ -65,7 +65,7 @@
// Spheres
- var geometry = new Sphere( 70, 32, 16, true );
+ var geometry1 = new Sphere( 70, 32, 16, true );
var generatedTexture = new THREE.Texture( generateTexture() );
generatedTexture.loaded = 1;
@@ -86,9 +86,13 @@
materials.push( { material: new THREE.MeshBasicMaterial( { map: generatedTexture } ), overdraw: true, doubleSided: false } );
materials.push( { material: new THREE.MeshLambertMaterial( { map: generatedTexture } ), overdraw: true, doubleSided: false } );
- for ( var i = 0, l = geometry.faces.length; i < l; i ++ ) {
+ // Extra mesh to be broken down for MeshFaceMaterial
+
+ var geometry2 = new Sphere( 70, 32, 16, true );
+
+ for ( var i = 0, l = geometry2.faces.length; i < l; i ++ ) {
- var face = geometry.faces[ i ];
+ var face = geometry2.faces[ i ];
if ( Math.random() > 0.7 ) face.material = [ materials[ Math.floor( Math.random() * materials.length ) ].material ];
}
@@ -97,9 +101,14 @@
objects = [];
+ var sphere, geometry;
+
for ( var i = 0, l = materials.length; i < l; i ++ ) {
-
- var sphere = new THREE.Mesh( geometry, materials[ i ].material );
+
+ geometry = materials[ i ].material instanceof THREE.MeshFaceMaterial ? geometry2 : geometry1;
+
+ sphere = new THREE.Mesh( geometry, materials[ i ].material );
+
sphere.overdraw = materials[ i ].overdraw;
sphere.doubleSided = materials[ i ].doubleSided;