anchor.diff:          member x.PlanetColor : V3d = x?PlanetColor
   
       let borderPixelSize = 64.0
  -    let sunCoronaExponent = 256.0
  +    let sunCoronaExponent = 1024.0
   
       let sunSpriteGs (v : Point<VertexSky>) =
           
  
positive.code:                         else 
                              pow (abs (1.0 - (viewAng - sunSizeAng) / (coronaAng - sunSizeAng))) sunCoronaExponent
              
              // values can get up to 1,600,000 (real luminance is x1000 -> 1.6e9)
              // max half-precision value is 65,504 
              //  -> as additive blending is used, clamp color to 30,000 for half-precision output support
              let colMax = max uniform.SunColor.X (max uniform.SunColor.Y uniform.SunColor.Z)
              let sunNorm = uniform.SunColor * 30000.0 / max 30000.0 colMax
  
              //if alpha = 1.0 then
              //    return V4d(30000.0, 0.0, 0.0, 1.0)
              //else
              return V4d(sunNorm * alpha, 1.0)
          }
  
      let moonTextureSampler = 
  
negative.code:             let shade = max 0.0 (Vec.dot moonSurfaceNormal uniform.RealSunDirection)
              let shade = 0.0001 + shade * 0.9999 // 0.01% reflection from earth https://en.wikipedia.org/wiki/Planetshine 
              
              let moonColor = uniform.MoonColor * shade / texNorm
  
              // when rendering to half-precision: max value is 65,504 
              //  -> scale all luminance values by /1000
              //  -> as additive blending is used, clamp color to 30,000 for half-precision output support
              //let colMax = max moonColor.X (max moonColor.Y moonColor.Z)
              //let moonNorm = moonColor * 30000.0 / max 30000.0 colMax
  
              //if alpha = 1.0 then
              //    return V4d(30000.0, 0.0, 0.0, 1.0)
  