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

.setValues() was also copying 'setValues' and 'clone' :D

上级 7695c253
......@@ -190,7 +190,7 @@ x.parameters.map;a.enableDiffuse.value=true}if(x.parameters.lightMap){a.tAO.text
uniforms:a,lights:true,fog:true})}else M=new THREE[x.type](x.parameters);N.materials[m]=M}e(N.scene,B.objects);i.callbackSync(N);h()};THREE.TextureLoader=function(){THREE.EventTarget.call(this);this.crossOrigin=null};
THREE.TextureLoader.prototype={constructor:THREE.TextureLoader,load:function(a){var b=this,c=new Image;c.addEventListener("load",function(){var a=new THREE.Texture(c);a.needsUpdate=true;b.dispatchEvent({type:"load",content:a})},false);c.addEventListener("error",function(){b.dispatchEvent({type:"error",message:"Couldn't load URL ["+a+"]"})},false);if(b.crossOrigin)c.crossOrigin=b.crossOrigin;c.src=a}};
THREE.Material=function(){this.id=THREE.MaterialCount++;this.name="";this.side=THREE.FrontSide;this.opacity=1;this.transparent=false;this.blending=THREE.NormalBlending;this.blendSrc=THREE.SrcAlphaFactor;this.blendDst=THREE.OneMinusSrcAlphaFactor;this.blendEquation=THREE.AddEquation;this.depthWrite=this.depthTest=true;this.polygonOffset=false;this.alphaTest=this.polygonOffsetUnits=this.polygonOffsetFactor=0;this.overdraw=false;this.needsUpdate=this.visible=true};
THREE.Material.prototype.setValues=function(a){a===void 0&&(a={});for(var b in a){var c=a[b];if(this[b]!==void 0)switch(b){case "id":break;case "color":case "ambient":case "emissive":case "specular":c instanceof THREE.Color?this[b].copy(c):this[b].setHex(c);break;case "wrapRGB":this[b].copy(c);break;default:this[b]=c}}};THREE.Material.prototype.clone=function(){return new THREE.Material(this)};THREE.MaterialCount=0;
THREE.Material.prototype.setValues=function(a){if(a!==void 0)for(var b in a)if(!(b==="id"||b==="setValues"||b==="clone")){var c=a[b];this[b]!==void 0&&(this[b]instanceof THREE.Color?c instanceof THREE.Color?this[b].copy(c):this[b].setHex(c):this[b]instanceof THREE.Vector3?this[b].copy(c):this[b]=c)}};THREE.Material.prototype.clone=function(){return new THREE.Material(this)};THREE.MaterialCount=0;
THREE.LineBasicMaterial=function(a){THREE.Material.call(this);this.color=new THREE.Color(16777215);this.linewidth=1;this.linejoin=this.linecap="round";this.vertexColors=false;this.fog=true;this.setValues(a)};THREE.LineBasicMaterial.prototype=Object.create(THREE.Material.prototype);THREE.LineBasicMaterial.prototype.clone=function(){return new THREE.LineBasicMaterial(this)};
THREE.MeshBasicMaterial=function(a){THREE.Material.call(this);this.color=new THREE.Color(16777215);this.envMap=this.lightMap=this.map=null;this.combine=THREE.MultiplyOperation;this.reflectivity=1;this.refractionRatio=0.98;this.fog=true;this.shading=THREE.SmoothShading;this.wireframe=false;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.vertexColors=THREE.NoColors;this.morphTargets=this.skinning=false;this.setValues(a)};THREE.MeshBasicMaterial.prototype=Object.create(THREE.Material.prototype);
THREE.MeshBasicMaterial.prototype.clone=function(){return new THREE.MeshBasicMaterial(this)};
......
......@@ -183,7 +183,7 @@ u.parameters.map;a.enableDiffuse.value=true}if(u.parameters.lightMap){a.tAO.text
uniforms:a,lights:true,fog:true})}else K=new THREE[u.type](u.parameters);z.materials[n]=K}f(z.scene,t.objects);m.callbackSync(z);j()};THREE.TextureLoader=function(){THREE.EventTarget.call(this);this.crossOrigin=null};
THREE.TextureLoader.prototype={constructor:THREE.TextureLoader,load:function(a){var b=this,c=new Image;c.addEventListener("load",function(){var a=new THREE.Texture(c);a.needsUpdate=true;b.dispatchEvent({type:"load",content:a})},false);c.addEventListener("error",function(){b.dispatchEvent({type:"error",message:"Couldn't load URL ["+a+"]"})},false);if(b.crossOrigin)c.crossOrigin=b.crossOrigin;c.src=a}};
THREE.Material=function(){this.id=THREE.MaterialCount++;this.name="";this.side=THREE.FrontSide;this.opacity=1;this.transparent=false;this.blending=THREE.NormalBlending;this.blendSrc=THREE.SrcAlphaFactor;this.blendDst=THREE.OneMinusSrcAlphaFactor;this.blendEquation=THREE.AddEquation;this.depthWrite=this.depthTest=true;this.polygonOffset=false;this.alphaTest=this.polygonOffsetUnits=this.polygonOffsetFactor=0;this.overdraw=false;this.needsUpdate=this.visible=true};
THREE.Material.prototype.setValues=function(a){a===void 0&&(a={});for(var b in a){var c=a[b];if(this[b]!==void 0)switch(b){case "id":break;case "color":case "ambient":case "emissive":case "specular":c instanceof THREE.Color?this[b].copy(c):this[b].setHex(c);break;case "wrapRGB":this[b].copy(c);break;default:this[b]=c}}};THREE.Material.prototype.clone=function(){return new THREE.Material(this)};THREE.MaterialCount=0;
THREE.Material.prototype.setValues=function(a){if(a!==void 0)for(var b in a)if(!(b==="id"||b==="setValues"||b==="clone")){var c=a[b];this[b]!==void 0&&(this[b]instanceof THREE.Color?c instanceof THREE.Color?this[b].copy(c):this[b].setHex(c):this[b]instanceof THREE.Vector3?this[b].copy(c):this[b]=c)}};THREE.Material.prototype.clone=function(){return new THREE.Material(this)};THREE.MaterialCount=0;
THREE.LineBasicMaterial=function(a){THREE.Material.call(this);this.color=new THREE.Color(16777215);this.linewidth=1;this.linejoin=this.linecap="round";this.vertexColors=false;this.fog=true;this.setValues(a)};THREE.LineBasicMaterial.prototype=Object.create(THREE.Material.prototype);THREE.LineBasicMaterial.prototype.clone=function(){return new THREE.LineBasicMaterial(this)};
THREE.MeshBasicMaterial=function(a){THREE.Material.call(this);this.color=new THREE.Color(16777215);this.envMap=this.lightMap=this.map=null;this.combine=THREE.MultiplyOperation;this.reflectivity=1;this.refractionRatio=0.98;this.fog=true;this.shading=THREE.SmoothShading;this.wireframe=false;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.vertexColors=THREE.NoColors;this.morphTargets=this.skinning=false;this.setValues(a)};THREE.MeshBasicMaterial.prototype=Object.create(THREE.Material.prototype);
THREE.MeshBasicMaterial.prototype.clone=function(){return new THREE.MeshBasicMaterial(this)};
......
......@@ -189,7 +189,7 @@ if(x.parameters.map){a.tDiffuse.texture=x.parameters.map;a.enableDiffuse.value=t
vertexShader:r.vertexShader,uniforms:a,lights:true,fog:true})}else U=new THREE[x.type](x.parameters);N.materials[m]=U}e(N.scene,z.objects);l.callbackSync(N);j()};THREE.TextureLoader=function(){THREE.EventTarget.call(this);this.crossOrigin=null};
THREE.TextureLoader.prototype={constructor:THREE.TextureLoader,load:function(a){var b=this,c=new Image;c.addEventListener("load",function(){var a=new THREE.Texture(c);a.needsUpdate=true;b.dispatchEvent({type:"load",content:a})},false);c.addEventListener("error",function(){b.dispatchEvent({type:"error",message:"Couldn't load URL ["+a+"]"})},false);if(b.crossOrigin)c.crossOrigin=b.crossOrigin;c.src=a}};
THREE.Material=function(){this.id=THREE.MaterialCount++;this.name="";this.side=THREE.FrontSide;this.opacity=1;this.transparent=false;this.blending=THREE.NormalBlending;this.blendSrc=THREE.SrcAlphaFactor;this.blendDst=THREE.OneMinusSrcAlphaFactor;this.blendEquation=THREE.AddEquation;this.depthWrite=this.depthTest=true;this.polygonOffset=false;this.alphaTest=this.polygonOffsetUnits=this.polygonOffsetFactor=0;this.overdraw=false;this.needsUpdate=this.visible=true};
THREE.Material.prototype.setValues=function(a){a===void 0&&(a={});for(var b in a){var c=a[b];if(this[b]!==void 0)switch(b){case "id":break;case "color":case "ambient":case "emissive":case "specular":c instanceof THREE.Color?this[b].copy(c):this[b].setHex(c);break;case "wrapRGB":this[b].copy(c);break;default:this[b]=c}}};THREE.Material.prototype.clone=function(){return new THREE.Material(this)};THREE.MaterialCount=0;
THREE.Material.prototype.setValues=function(a){if(a!==void 0)for(var b in a)if(!(b==="id"||b==="setValues"||b==="clone")){var c=a[b];this[b]!==void 0&&(this[b]instanceof THREE.Color?c instanceof THREE.Color?this[b].copy(c):this[b].setHex(c):this[b]instanceof THREE.Vector3?this[b].copy(c):this[b]=c)}};THREE.Material.prototype.clone=function(){return new THREE.Material(this)};THREE.MaterialCount=0;
THREE.LineBasicMaterial=function(a){THREE.Material.call(this);this.color=new THREE.Color(16777215);this.linewidth=1;this.linejoin=this.linecap="round";this.vertexColors=false;this.fog=true;this.setValues(a)};THREE.LineBasicMaterial.prototype=Object.create(THREE.Material.prototype);THREE.LineBasicMaterial.prototype.clone=function(){return new THREE.LineBasicMaterial(this)};
THREE.MeshBasicMaterial=function(a){THREE.Material.call(this);this.color=new THREE.Color(16777215);this.envMap=this.lightMap=this.map=null;this.combine=THREE.MultiplyOperation;this.reflectivity=1;this.refractionRatio=0.98;this.fog=true;this.shading=THREE.SmoothShading;this.wireframe=false;this.wireframeLinewidth=1;this.wireframeLinejoin=this.wireframeLinecap="round";this.vertexColors=THREE.NoColors;this.morphTargets=this.skinning=false;this.setValues(a)};THREE.MeshBasicMaterial.prototype=Object.create(THREE.Material.prototype);
THREE.MeshBasicMaterial.prototype.clone=function(){return new THREE.MeshBasicMaterial(this)};
......
......@@ -43,11 +43,13 @@ THREE.Material.prototype.setValues = function ( values ) {
for ( var key in values ) {
if ( key === 'id' || key === 'setValues' || key === 'clone' ) continue;
var value = values[ key ];
if ( this[ key ] !== undefined && key !== "id") {
if ( this[ key ] !== undefined ) {
if (this[key] instanceof THREE.Color) {
if ( this[ key ] instanceof THREE.Color ) {
if ( value instanceof THREE.Color ) {
......@@ -59,10 +61,14 @@ THREE.Material.prototype.setValues = function ( values ) {
}
} else if (this[key] instanceof THREE.Vector3){
} else if ( this[ key ] instanceof THREE.Vector3 ) {
this[ key ].copy( value );
} else {
this[ key ] = value;
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册