POV-Ray : Newsgroups : povray.binaries.images : Ping Pong: Glory Challenge : Re: Ping Pong: Glory Challenge Server Time
1 Aug 2024 16:28:38 EDT (-0400)
  Re: Ping Pong: Glory Challenge  
From: Cousin Ricky
Date: 20 May 2008 11:20:00
Message: <web.4832eb72d2ad962985de7b680@news.povray.org>
"alphaQuad" <alp### [at] earthlinknet> wrote:
> I'd bet money it can be done, tho I cannot make it at this time.
>
> http://news.povray.org/*/attachment/%3C48202ea0%40news.povray.org%3E/glory.jpg
> Glory is your shadow encircled in a rainbow.

Here's a proof-of-concept:

#ifndef (Disp) #declare Disp = 0; #end
#ifndef (Reps) #declare Reps = 20; #end
#declare Spacing = <sqrt(3), 0, 1>;

global_settings { assumed_gamma 1 max_trace_level 60 }

camera
{  location Reps * Spacing.x * 2 * y
   look_at 0
   angle 30
   right image_width * x
   up image_height * y
}

light_source { Reps * 1000 *y, rgb 1 }

sky_sphere
{  pigment { gradient y color_map { [0 rgb 0.85][1 rgb 0.50] } }
}

plane { y, -1 pigment { rgb 1 } }

#declare t_Drop = texture
{  pigment { rgbt 1 }
   finish
   {  reflection { 0 1 fresnel } conserve_energy
      specular 1 roughness 0.001
   }
}
#declare i_Drop = interior
{  ior 1.333
   #if (Disp) dispersion 1 + Disp * 0.007 dispersion_samples 10 #end
}
#declare m_Drop = material { texture { t_Drop } interior { i_Drop } }

#declare Half_sheet = union
{  #declare I = 0;
   #while (I < Reps)
      #declare J = 0;
      #while (J < Reps)
         sphere { <J, 0, I> * Spacing, 0.4999 }
         #declare J = J + 1;
      #end
      #declare I = I + 1;
   #end
   translate (1 - Reps) / 2 * Spacing
}

#declare Sheet = union
{  object { Half_sheet translate Spacing/4 }
   object { Half_sheet translate -Spacing/4 }
}

object
{  Sheet
   material { m_Drop }
}

This first image has no dispersion, and was run with declare=Reps=3 on the
command line.


Post a reply to this message


Attachments:
Download 'glory-poc-ed.jpg' (6 KB)

Preview of image 'glory-poc-ed.jpg'
glory-poc-ed.jpg


 

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.