makeGlow = () => {
let customMaterial = new THREE.ShaderMaterial(
{
uniforms:
{
"c": { type: "f", value: 0.2 },
"p": { type: "f", value: 1.9 },
glowColor: { type: "c", value: new THREE.Color(0xdddd00) },
viewVector: { type: "v3", value: camera.position }
},
vertexShader: vertexShader ,
fragmentShader: fragmentShader,
side: THREE.FrontSide,
blending: THREE.AdditiveBlending,
transparent: true
} );
let sphereGeom = new THREE.SphereGeometry(
sunAttr.radius,
sunAttr.segments,
sunAttr.rings)
let moonGlow = new THREE.Mesh( sphereGeom.clone(), customMaterial.clone() );
moonGlow.scale.multiplyScalar(1.4);
return moonGlow;
}