//50-300 mm Zoom Custom Lens Flare File (v1)
//==========================================
// Created by Zeger Knaepen (C) 1998
//==========================================
// Best defaults:
//==========================================
//
//		#declare rays_frequency=1
//		#declare rays_intensity=1.5
//		#declare rays_scale=1.5
//		#declare spots_intensity=.6
//		#declare glow_colour = <2, 1, 1>
//		#declare glow_intensity=.25
//		#declare spots_contract_to_centre=on
//
//==========================================
// Options:
//==========================================
//
//	LensReflections	(def=on)
//	Ring					(def=on)
//		RingSize			(def=.2)
//		RingWidth		(def=.03)
//		RingTrans		(def=.78)
//		RingColor		(def=<2.9,1.2,1>)
//
//==========================================

    #declare _LE_tmpvar = rand(_LE_raysrand) * 3
		#while (_LE_tmpvar < 360)
         object {_LE_baseobj
			pigment {onion color_map {
               [0 rgb rays_colour transmit pow(.95, _LE_raysint)]
               [1 rgb rays_colour transmit 1]}}
            translate y
            scale <.01, 1, 1> * (1 + ( - .5) * 2)
            rotate z * _LE_tmpvar scale .1 * _LE_raysscale rotate _LE_srotate
            translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
			}
         #declare _LE_tmpvar = _LE_tmpvar + (4 / rays_frequency)

		#end

#ifndef (LensReflections) #declare LensReflections=on #end
#ifndef (Ring) #declare Ring=on #end
#if (Ring=on)
	#ifndef (RingSize) #declare RingSize=.2 #end
	#ifndef (RingWidth) #declare RingWidth=.03 #end
	#ifndef (RingTrans) #declare RingTrans= .78 #end
	#ifndef (RingColor) #declare RingColor=<2.9,1.2,1> #end
	#declare RingColor=RingColor*_LE_colour*glow_colour
object {_LE_baseobj //The Ring
	pigment {
		onion
		scallop_wave
		color_map {
			[RingSize color RingColor transmit 1]
			[RingSize+(RingWidth/2) color RingColor transmit pow(RingTrans,_LE_glowint)]
			[RingSize+RingWidth color RingColor transmit 1]
		}
		scale 2
	}
	scale .75*_LE_scale
	rotate z * _LE_rotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
#end



object {_LE_baseobj pigment {onion colour_map {
            [0 rgb 1.8 * source_colour transmit pow(.01, _LE_glowint)]
            [1 rgb _LE_colour * glow_colour transmit 1]}
            scallop_wave scale 2}
         scale .12 * _LE_glowscale rotate _LE_srotate
         translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}

   object {_LE_baseobj //The big glow
   pigment {
      #declare big_glow_size  = 1
      #declare big_glow_color = <10/7.5,8/7.5,1>
      #declare big_glow_tr    = .68525

  onion
  color_map {
  	[0 color big_glow_color transmit pow(big_glow_tr,_LE_glowint)]
	[big_glow_size color big_glow_color transmit 1]
  } 

	}

   scale 1 * _LE_scale
   rotate z * _LE_rotate

   translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
   }
   object {_LE_baseobj //The smaller glow
   pigment {
      #declare big_glow_size  = 1//.6
      #declare big_glow_color = <10/7.5,8/7.5,1>
      #declare big_glow_tr    = pow(.523911,_LE_glowint)

  onion
  color_map {
  	[0 color big_glow_color transmit big_glow_tr]
	[big_glow_size color big_glow_color transmit 1]
  } 

	}

   scale .5 * _LE_scale
   rotate z * _LE_rotate

   translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
   }

   object {_LE_baseobj //The small red glow
   pigment {
      #declare streak_a_size  = .35
      #declare streak_a_color = <10/3, 1, 3.2/3>*_LE_colour
      #declare streak_a_center_color = <10/3.5,3.8/3.5,1>*_LE_colour
      #declare streak_a_tr    = pow(.4168453,_LE_glowint)
      #declare streak_a_scale = <1,1,1>
      #declare streak_a_rotate = 0
      #declare streak_a_auto_rotate = false

  onion
  color_map {
  	[0 color streak_a_center_color transmit streak_a_tr]
	[streak_a_size color streak_a_color transmit 1]
  }
scallop_wave scale 2
	}

   scale 1 * _LE_scale
   rotate z * _LE_rotate

   translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
  }


#if (LensReflections=on)
//The Spots:

object { //Big spot (inside biggest spot)
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.98 rgb <10/4,7/4,1>*_LE_colour transmit pow(.97969173,_LE_spotsint)]
			[1 rgb <10/4,7/4,1>*_LE_colour transmit 1]
		}
	}
	scale .15 * _LE_scale
	rotate z * _LE_rotate
	translate x * .25 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
object { //Biggest spot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.98 rgb <10/4,7/4,1>*_LE_colour transmit pow(.9755536,_LE_spotsint)]
			[1 rgb <10/4,7/4,1>*_LE_colour transmit 1]
		}
	}
	scale .5 * _LE_scale
	rotate z * _LE_rotate
	translate x * .25 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}

object { //Small green spot in the middle of the screen
	_LE_baseobj
	pigment {
		onion
		color_map {
			[0 rgb <1,10/6,1>*_LE_colour transmit pow(.251189,_LE_spotsint)]
			[1 rgb <1,4.5,1>*_LE_colour transmit 1]
		}
	}
	scale .005 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .5 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}

object { //Greenyellow spot behind source
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.3 rgb <1,2,1>*_LE_colour transmit 1]
			[.87 rgb <1,2,1>*_LE_colour transmit pow(.83666,_LE_spotsint)]
			[.89 rgb <6/4,7.7/4,1>*_LE_colour transmit pow(.861186,_LE_spotsint)]
			[.93 rgb <7/4,7/4,1>*_LE_colour transmit pow(.88028408,_LE_spotsint)]
			[1 rgb <7/4,7/4,1>*_LE_colour transmit 1]
		}
	}
	scale .05 * _LE_scale
	rotate z * _LE_rotate
	translate x * .13 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}

object { //Biggest blue spot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[0 rgb <1,2,7>*_LE_colour transmit pow(.98506121,_LE_spotsint)]
			[.91 rgb <1,2,7>*_LE_colour transmit pow(.9686251,_LE_spotsint)]
			[1 rgb <1,1,7>*_LE_colour transmit 1]
		}
	}
	scale .09 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .28 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
object { //Small blue spot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.91 rgb <1,2,8>*_LE_colour transmit pow(.9724925,_LE_spotsint)]
			[1 rgb <1,1,7>*_LE_colour transmit 1]
		}
	}
	scale .05 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .3 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
object { //Smallest blue spot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.91 rgb <3,1,8>*_LE_colour transmit pow(.9724925,_LE_spotsint)]
			[1 rgb <2,1,7>*_LE_colour transmit 1]
		}
	}
	scale .03 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .25 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}

object { //Lonely brown spot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.92 rgb <6,3,1>*_LE_colour transmit pow(.9531843,_LE_spotsint)]
			[1 rgb <6,3,1>*_LE_colour transmit 1]
		}
	}
	scale .03 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .42 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}

object { //Biggest brown spot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[0 rgb <6,3,1>*_LE_colour transmit pow(.9925932,_LE_spotsint)]
			[.92 rgb <6,3,1>*_LE_colour transmit pow(.9831843,_LE_spotsint)]
			[1 rgb <6,3,1>*_LE_colour transmit 1]
		}
	}
	scale .1 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .75 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
object { //Small brown spot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[0 rgb <6,3,1>*_LE_colour transmit pow(.9834925,_LE_spotsint)]
			[.92 rgb <6,3,1>*_LE_colour transmit pow(.9731843,_LE_spotsint)]
			[1 rgb <6,3,1>*_LE_colour transmit 1]
		}
	}
	scale .06 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .73 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
object { //Smallest brown spot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.92 rgb <6,3,1>*_LE_colour transmit pow(.9831843,_LE_spotsint)]
			[1 rgb <6,3,1>*_LE_colour transmit 1]
		}
	}
	scale .03 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .755 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
object { //Blurry brightgreen dot
	_LE_baseobj
	pigment {
		onion
		color_map {
			[0 rgb <1,10/8,1>*_LE_colour transmit pow(.15848932,_LE_spotsint)]
			[.25 rgb <1,9/3,1>*_LE_colour transmit pow(.916565,_LE_spotsint)]
			[1 rgb <2,9/2,1>*_LE_colour transmit 1]
		}
	}
	scale .02 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .68 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
object { //Green spot (with blurry blue spot in it)
	_LE_baseobj
	pigment {
		onion
		color_map {
			[0 rgb <5/4,10/4,1>*_LE_colour transmit pow(.95873152,_LE_spotsint)]
			[.91 rgb <4/3,3,1>*_LE_colour transmit pow(.9085603,_LE_spotsint)]
			[1 rgb <4/3,3,1>*_LE_colour transmit 1]
		}
	}
	scale .05 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .83 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
object { //Blurry blue spot (inside green spot)
	_LE_baseobj
	pigment {
		onion
		color_map {
			[0 rgb <1,1,5>*_LE_colour transmit pow(.9028805,_LE_spotsint)]
			[1 rgb <1,1,4.5>*_LE_colour transmit 1]
		}
	}
	scale .02 * _LE_scale
	rotate z * _LE_rotate
	translate -x * .835 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}

object { //Greenyellow spot nearby rainbowring
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.3 rgb <1,8/5,1>*_LE_colour transmit 1]
			[.82 rgb <1,8/5,1>*_LE_colour transmit pow(.919824,_LE_spotsint)]
			[.88 rgb <6/5,7.7/5,1>*_LE_colour transmit pow(.9098459,_LE_spotsint)]
			[.89 rgb <10/5,10/5,1>*_LE_colour transmit pow(.847505,_LE_spotsint)]
			[1 rgb <10/5,10/5,1>*_LE_colour transmit 1]
		}
	}
	scale .13 * _LE_scale
	rotate z * _LE_rotate
	translate -x * 1 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}

object { //Rainbow-ring
	_LE_baseobj
	pigment {
		onion
		color_map {
			[.888 rgb <3,1,3>*_LE_colour transmit pow(.99949988,_LE_spotsint)]
			[.895 rgb <3,1,3>*_LE_colour transmit pow(.932738,_LE_spotsint)]
			[.915 rgb <1,1,3>*_LE_colour transmit pow(.92736185,_LE_spotsint)]
			[.935 rgb <1,3,3>*_LE_colour transmit pow(.92195445,_LE_spotsint)]
			[.955 rgb <1,3,1>*_LE_colour transmit pow(.9273619,_LE_spotsint)]
			[.975 rgb <3,3,1>*_LE_colour transmit pow(.93273791,_LE_spotsint)]
			[.995 rgb <3,1,1>*_LE_colour transmit pow(.9486833,_LE_spotsint)]
			[1 rgb <3,1,1>*_LE_colour transmit 1]
		}
	}
	scale .25 * _LE_scale
	rotate z * _LE_rotate
	translate -x * 1.12 * _LE_sspacing
	rotate _LE_srotate
	translate _LE_translate scale _LE_lensscale #declare _LE_lensscale = _LE_lensscale + _LE_layersep
}
#end //Lensreflections

/*
(C) 1998 Zeger Knaepen
This Custom LensFlare file may be used freely, but please mention my name on
the images using it.

If you make a real great improvement, please let me know, and don't just
distribute it.  You however may distribute this file (altered or not) if
I know it, as long as you make clear that, if you altered it, you started
from my file.

You may also post me some of your images you made with this file, but please
don't send me a 900Kb TGA file or worse, so first convert them in a JPEG or
a GIF file (that should be small enough)!
(Also only send me the best you have, I don't want to get dozens of
checkered-plane-with-sphere-and-lensflare images, especially not because it's
my brother's E-Mail address).

E-Mail: hendrik.knaepen@skynet.be
URL: (none yet, if I will have one, it'll probably contain the best
pictures I made with this file, and the best I got from you).
*/

    Source: geocities.com/siliconvalley/lakes/1434/download

               ( geocities.com/siliconvalley/lakes/1434)                   ( geocities.com/siliconvalley/lakes)                   ( geocities.com/siliconvalley)