فهرست منبع

Revert "Take out double sided materail caching since it doesn't buy anything"

This reverts commit da1d2a668f8cd614519e04baa681786f68b9b2a6.
Jeff Terrace 13 سال پیش
والد
کامیت
e76374745b
1فایلهای تغییر یافته به همراه11 افزوده شده و 2 حذف شده
  1. 11 2
      examples/js/loaders/ColladaLoader.js

+ 11 - 2
examples/js/loaders/ColladaLoader.js

@@ -711,6 +711,8 @@ THREE.ColladaLoader = function () {
 		// FIXME: multi-material mesh?
 		// geometries
 
+		var double_sided_materials = {};
+
 		for ( i = 0; i < node.geometries.length; i ++ ) {
 
 			var instance_geometry = node.geometries[i];
@@ -746,8 +748,15 @@ THREE.ColladaLoader = function () {
 
 						if ( geometry.doubleSided ) {
 
-							material3js = material3js.clone();
-							material3js.side = THREE.DoubleSide;
+							if ( !( material3js in double_sided_materials ) ) {
+
+								var _copied_material = material3js.clone();
+								_copied_material.side = THREE.DoubleSide;
+								double_sided_materials[ material3js ] = _copied_material;
+
+							}
+
+							material3js = double_sided_materials[ material3js ];
 
 						}