//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). */