POV-Ray : Newsgroups : povray.text.scene-files : MIKA my attempt at Andrew's bubbles Server Time
30 Jun 2024 04:55:37 EDT (-0400)
  MIKA my attempt at Andrew's bubbles (Message 1 to 1 of 1)  
From: Marc Champagne
Subject: MIKA my attempt at Andrew's bubbles
Date: 25 Sep 2002 08:29:49
Message: <Xns92945678A51D0POVMIKA@204.213.191.226>
See the image posted in p.b.images

/////////////
/// BEGIN ///
/////////////

// Persistence of Vision Ray Tracer Scene Description File
// File: mc_bubbles.pov
// Vers: 3.5
// Desc: Bubbles and more Bubbles, playing arround with iors
//       values below 1
// Date: Sept 2002
// Auth: Marc Champagne (MIKA)

#version 3.5;

global_settings {  assumed_gamma 1.0   max_trace_level 80  }

camera {
  location  <0, 0, -7.0>
  direction 1.5*z
  right     x*image_width/image_height
  look_at   <0,0,0>
}

light_source { <0, 0, -50> rgb <1,1,1> }

sphere { <0,0,80>, 50
  texture {
  pigment {
    gradient z
    color_map {
      [0.0  rgb <0,.5,1>/6 ]
      [1.0  rgb <0,.5,1>/2 ]
    }
  }
  finish  { ambient .25 diffuse 0 }
  scale 10
  }
  
}

#declare Bubble = object {
  sphere { 0.0, .25
    pigment  { rgb .99 filter 1 }
    finish   { specular .4 roughness .002 ambient 1 reflection .2 }
    interior { ior .88 }
    no_shadow
  }
}


#declare R1 = seed(145);
#declare R2 = seed(110);
#declare R4 = seed(10);
#declare R5 = seed(130);

#declare Bubbles = 0;

#while ( Bubbles < 120 )

  #declare tX = ( rand(R1) * 14 ) - 7     ;   // random position
  #declare tY = ( rand(R1) * 14 ) - 7     ;
  #declare tZ = ( rand(R1) * 35 ) - 7     ;
  
  #declare sX = ( rand(R2) * .2 ) + 1     ;   // random shape
  #declare sY = ( rand(R2) * .2 ) + 1     ;
  #declare sZ = ( rand(R2) * .2 ) + 1     ;

  object {                       // set the bubble in place
    Bubble
    scale     < sX, sY, sZ >
    translate < tX, tY, tZ >
  } 

  #declare L = rand(R4) * 30 + 10;
  #declare C = 1;
  
  #while ( C < L )               // set the trail of bubbles 
     object {
       Bubble
       scale < sX, sY, sZ >
       scale ( (L-C) / L ) 
       translate < tX + ( ( rand(R5) * .16 ) - .08 ),  
                   tY + ( ( rand(R5) * .16 ) - .08 ),                   
                   tZ + ( C * .9 )
                 >
     }  
    #declare C = C + 1;
  #end
    
  #declare Bubbles = Bubbles + 1;
  
#end

///////////
/// END ///
///////////


-- 
(MIKA) Marc Champagne
marcch.AT.videotron.DOT.ca
Montreal, CANADA


Post a reply to this message

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