222 lines
6.4 KiB
JavaScript
222 lines
6.4 KiB
JavaScript
/**
|
|
* R3.D3.API.Material.Standard
|
|
* @param apiComponent
|
|
*
|
|
* @property alphaMap
|
|
* @property aoMap
|
|
* @property aoMapIntensity
|
|
* @property bumpMap
|
|
* @property bumpScale
|
|
* @property color
|
|
* @property displacementMap
|
|
* @property displacementScale
|
|
* @property displacementBias
|
|
* @property emissive
|
|
* @property emissiveMap
|
|
* @property emissiveIntensity
|
|
* @property envMap
|
|
* @property envMapIntensity
|
|
* @property lightMap
|
|
* @property lightMapIntensity
|
|
* @property diffuseMap
|
|
* @property metalness
|
|
* @property metalnessMap
|
|
* @property morphNormals
|
|
* @property morphTargets
|
|
* @property normalMap
|
|
* @property normalScale
|
|
* @property refractionRatio
|
|
* @property roughness
|
|
* @property roughnessMap
|
|
* @property skinning
|
|
* @property wireframe
|
|
* @property wireframeLinecap
|
|
* @property wireframeLinejoin
|
|
* @property wireframeLinewidth
|
|
*
|
|
* @constructor
|
|
*/
|
|
R3.D3.API.Material.Standard = function(
|
|
apiComponent
|
|
) {
|
|
|
|
__API_MATERIAL__;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.alphaMap)) {
|
|
apiComponent.alphaMap = null;
|
|
}
|
|
this.alphaMap = apiComponent.alphaMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.aoMap)) {
|
|
apiComponent.aoMap = null;
|
|
}
|
|
this.aoMap = apiComponent.aoMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.aoMapIntensity)) {
|
|
apiComponent.aoMapIntensity = 1;
|
|
}
|
|
this.aoMapIntensity = apiComponent.aoMapIntensity;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.bumpMap)) {
|
|
apiComponent.bumpMap = null;
|
|
}
|
|
this.bumpMap = apiComponent.bumpMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.bumpScale)) {
|
|
apiComponent.bumpScale = 1;
|
|
}
|
|
this.bumpScale = apiComponent.bumpScale;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.color)) {
|
|
apiComponent.color = new R3.API.Color(
|
|
{
|
|
parent : this,
|
|
register : true,
|
|
r : 1,
|
|
g : 1,
|
|
b : 1,
|
|
a : 1
|
|
}
|
|
);
|
|
}
|
|
this.color = apiComponent.color;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.displacementMap)) {
|
|
apiComponent.displacementMap = null;
|
|
}
|
|
this.displacementMap = apiComponent.displacementMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.displacementBias)) {
|
|
apiComponent.displacementBias = 0;
|
|
}
|
|
this.displacementBias = apiComponent.displacementBias;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.displacementScale)) {
|
|
apiComponent.displacementScale = 1;
|
|
}
|
|
this.displacementScale = apiComponent.displacementScale;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.emissive)) {
|
|
apiComponent.emissive = new R3.API.Color(
|
|
{
|
|
parent : this,
|
|
register : true,
|
|
r : 0,
|
|
g : 0,
|
|
b : 0,
|
|
a : 0
|
|
}
|
|
);
|
|
}
|
|
this.emissive = apiComponent.emissive;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.emissiveMap)) {
|
|
apiComponent.emissiveMap = null;
|
|
}
|
|
this.emissiveMap = apiComponent.emissiveMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.emissiveIntensity)) {
|
|
apiComponent.emissiveIntensity = 1;
|
|
}
|
|
this.emissiveIntensity = apiComponent.emissiveIntensity;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.envMap)) {
|
|
apiComponent.envMap = null;
|
|
}
|
|
this.envMap = apiComponent.envMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.envMapIntensity)) {
|
|
apiComponent.envMapIntensity = 1;
|
|
}
|
|
this.envMapIntensity = apiComponent.envMapIntensity;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.lightMap)) {
|
|
apiComponent.lightMap = null;
|
|
}
|
|
this.lightMap = apiComponent.lightMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.lightMapIntensity)) {
|
|
apiComponent.lightMapIntensity = 1;
|
|
}
|
|
this.lightMapIntensity = apiComponent.lightMapIntensity;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.diffuseMap)) {
|
|
apiComponent.diffuseMap = null;
|
|
}
|
|
this.diffuseMap = apiComponent.diffuseMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.metalness)) {
|
|
apiComponent.metalness = 0.5;
|
|
}
|
|
this.metalness = apiComponent.metalness;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.metalnessMap)) {
|
|
apiComponent.metalnessMap = null;
|
|
}
|
|
this.metalnessMap = apiComponent.metalnessMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.morphNormals)) {
|
|
apiComponent.morphNormals = false;
|
|
}
|
|
this.morphNormals = apiComponent.morphNormals;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.morphTargets)) {
|
|
apiComponent.morphTargets = false;
|
|
}
|
|
this.morphTargets = apiComponent.morphTargets;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.normalMap)) {
|
|
apiComponent.normalMap = null;
|
|
}
|
|
this.normalMap = apiComponent.normalMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.normalScale)) {
|
|
apiComponent.normalScale = 1;
|
|
}
|
|
this.normalScale = apiComponent.normalScale;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.refractionRatio)) {
|
|
apiComponent.refractionRatio = 0.98;
|
|
}
|
|
this.refractionRatio = apiComponent.refractionRatio;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.roughness)) {
|
|
apiComponent.roughness = 0.5;
|
|
}
|
|
this.roughness = apiComponent.roughness;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.roughnessMap)) {
|
|
apiComponent.roughnessMap = null;
|
|
}
|
|
this.roughnessMap = apiComponent.roughnessMap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.skinning)) {
|
|
apiComponent.skinning = false;
|
|
}
|
|
this.skinning = apiComponent.skinning;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.wireframe)) {
|
|
apiComponent.wireframe = false;
|
|
}
|
|
this.wireframe = apiComponent.wireframe;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.wireframeLinecap)) {
|
|
apiComponent.wireframeLinecap = 'round';
|
|
}
|
|
this.wireframeLinecap = apiComponent.wireframeLinecap;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.wireframeLinejoin)) {
|
|
apiComponent.wireframeLinejoin = 'round';
|
|
}
|
|
this.wireframeLinejoin = apiComponent.wireframeLinejoin;
|
|
|
|
if (R3.Utils.UndefinedOrNull(apiComponent.wireframeLinewidth)) {
|
|
apiComponent.wireframeLinewidth = 1;
|
|
}
|
|
this.wireframeLinewidth = apiComponent.wireframeLinewidth;
|
|
|
|
};
|
|
|
|
R3.D3.API.Material.Standard.prototype = Object.create(R3.D3.API.Material.prototype);
|
|
R3.D3.API.Material.Standard.prototype.constructor = R3.D3.API.Material.Standard;
|