copy method
Copy the parameters from the passed material into this material.
Implementation
@override
MeshPhysicalMaterial copy(Material source) {
super.copy(source);
defines = {'STANDARD': '', 'PHYSICAL': ''};
if(source is MeshPhysicalMaterial){
anisotropy = source.anisotropy;
anisotropyRotation = source.anisotropyRotation;
anisotropyMap = source.anisotropyMap;
dispersion = source.dispersion;
iridescence = source.iridescence;
iridescenceMap = source.iridescenceMap;
iridescenceIOR = source.iridescenceIOR;
iridescenceThicknessRange = [ ...source.iridescenceThicknessRange ];
iridescenceThicknessMap = source.iridescenceThicknessMap;
}
clearcoat = source.clearcoat;
clearcoatMap = source.clearcoatMap;
clearcoatRoughness = source.clearcoatRoughness;
clearcoatRoughnessMap = source.clearcoatRoughnessMap;
clearcoatNormalMap = source.clearcoatNormalMap;
clearcoatNormalScale!.setFrom(source.clearcoatNormalScale!);
ior = source.ior;
if (source.sheenColor != null) {
sheenColor!.setFrom(source.sheenColor!);
} else {
sheenColor = null;
}
sheenColorMap = source.sheenColorMap;
sheenRoughness = source.sheenRoughness;
sheenRoughnessMap = source.sheenRoughnessMap;
transmission = source.transmission;
transmissionMap = source.transmissionMap;
thickness = source.thickness;
thicknessMap = source.thicknessMap;
attenuationColor!.setFrom(source.attenuationColor!);
attenuationDistance = source.attenuationDistance;
specularIntensity = source.specularIntensity;
specularIntensityMap = source.specularIntensityMap;
specularColor!.setFrom(source.specularColor!);
specularColorMap = source.specularColorMap;
return this;
}