POV-Ray : Newsgroups : povray.binaries.images : PoVEarth, day #6 - first obstacle! : Re: PoVEarth, day #6 - first obstacle! Server Time
1 Aug 2024 18:27:27 EDT (-0400)
  Re: PoVEarth, day #6 - first obstacle!  
From: Jörg 'Yadgar' Bleimann
Date: 31 Jul 2008 17:40:52
Message: <48923164@news.povray.org>
High!

Reactor schrieb:

> I can see some artifacts that may be from your radiosity settings.  Can you post
> your code?  If not, I recommend lowering your error bound to about 1/3 to 1/4 of
> what it is.  Since a lot of the light is to be reflected from the bright, fully
> lit corner, changing the error bound may increase the brightness in this case.
> There are some other settings changes that I think you should consider also.

I increased count to 200 and lowered error_bound to 0.45... but the 
result (see attachment) did not improve significantly!

Perhaps it's because the rear walls are not close enough as I did not 
yet add the interior walls separating the apartments and rooms...

The code:

// My Place in the World
// A sub-sub-subsection of the PoVEarth project

// E-mail: yaz### [at] gmxde

// RADIOSITY

#declare radio=1;

global_settings
{
   #if (!radio)
     ambient_light 0.15
   #else
     ambient_light 0
     radiosity
     {
       brightness 1
       adc_bailout 0.01
       gray_threshold 0.8
       recursion_limit 20
       count 200
       error_bound 0.45
     }
   #end
}

// TIME VARIABLES

// PIGMENTS

#declare P_Concrete =
pigment
{
   color rgb 0.9
}

// FINISHES

#declare F_Standard =
finish
{
   diffuse 1
   brilliance 0.15
}

// NORMALS

// TEXTURES

#declare T_Concrete =
texture
{
   pigment { P_Concrete }
   finish { F_Standard }
}

// LENGTH VARIABLES

#declare FrKarl_SideStreet_Width = 6.09;
#declare FrKarl_SideStreet_Pavement_Width = 1.32;
#declare GWG_FrKarl_Block238to252_Front_Way_Length = 4.09;
#declare GWG_FrKarl_Block238to252_Front_Doorstep_Depth = 0.427;
#declare GWG_FrKarl_Block238to252_Stair_Height = 0.168;
#declare GWG_FrKarl_Block238to252_Floor_Height = 16 * 
GWG_FrKarl_Block238to252_Stair_Height;
#declare GWG_FrKarl_Block238to252_Floor_yOffset = 8 * 
GWG_FrKarl_Block238to252_Stair_Height;
#declare GWG_FrKarl_Block238to252_Ceiling_Thickness = 0.148;
#declare GWG_FrKarl_Block238to252_Balcony_Spacing=9.19;

// OBJECT DEFINITIONS

#declare GWG_FrKarl_Block238to252_Raw=
box
{
   0, <11.08, 9.523, 53.49>
}

#declare GWG_FrKarl_Block238to252_Balcony_Raw=
difference
{
   box
   {
     0, <1.155, 0.948, 3.24>
   }
   box
   {
     <0.165, 0.148, 0.155>, <1.65, 0.95, 3.085>
   }
}

#declare GWG_FrKarl_Block238to252_Floor_Cutout =
box
{
   0, <10.34, 2.54, 52.75>
}

#declare GWG_FrKarl_Block238to252_Balcony_Door_Cutout =
box
{
   0, <0.38, 2.14, 1.14>
}

// CAMERA SETTINGS
// using microlocal coordinates

#declare view=5;

#switch(view)
   #case (0) // pedestrian view on side street, up building #246
     #declare camPos = <-8, 1.7, 10>;
     #declare camLook = <1, 7.2, 3>;
     #declare camAng = 40;
   #break

southward along side street
     #declare camPos = <-(FrKarl_SideStreet_Width / 2 + 
FrKarl_SideStreet_Pavement_Width + 
GWG_FrKarl_Block238to252_Front_Way_Length +
                        GWG_FrKarl_Block238to252_Front_Doorstep_Depth), 
1.7, 70>;
     #declare camLook =<-(FrKarl_SideStreet_Width / 2 + 
FrKarl_SideStreet_Pavement_Width + 
GWG_FrKarl_Block238to252_Front_Way_Length +
                        GWG_FrKarl_Block238to252_Front_Doorstep_Depth), 
1.7, 0>;
     #declare camAng = 60;
   #break
   #case (2) // pedestrian view on side street, up building #244
     #declare camPos = <-8, 1.7, 10>;
     #declare camLook = <-30, 7.2, 0>;
     #declare camAng = 40;
   #break
   #case (3) // inside 1st floor of building #244, looking east
     #declare camPos = <-25.5, 5.9, 2.5>;
     #declare camLook =<-16, 4.6, 2.5>;
     #declare camAng = 40;
   #break
   #case (4) // inside 1st floor of building #244, balcony door 
threshold close-up
     #declare camPos = <-17.9, 5.5, 2.5>;
     #declare camLook = <-17.76, 3.5, 2.5>;
     #declare camAng = 40;
   #break
   #case (5) // inside my apartment, looking west
     #declare dir = 270;
     #declare azi = -10;
     #declare camPos = <4.2, 40 * 0.168 + 1.7, 2.5>;
     #declare camLook = camPos + < sin(radians(dir))*cos(radians(azi)), 
sin(radians(azi)), cos(radians(dir))*cos(radians(azi))>;
     #declare camAng = 50;
   #break

#end

// ACTUAL SCENE

#declare detail=0;

#if (!detail) // full scene views

   // SCALE MODELS

   #declare models = array[5] { 0, 0, 0, 1, 0 }
   // models[0]: cosmic scale - whole Solar System, heliocentric
   // models[1]: global scale - Earth, geocentric, spherical terrain relief
   // models[2]: regional scale - 40 x 40 kms area around Cologne, 
heightfield
   // models[3]: local scale - 500 x 500 metres around my apartment, plane
   // models[4]: microlocal - my apartment only, outside world only as 
HDRI bitmaps

   #declare a=0;
   #declare i=0;
   #while (a<5)
     #if (models[a])
       #declare i=i+1;
     #end
     #declare a=a+1;
   #end

   #if (!i | i>1)
     #warning "Missing or ambiguous scale setting" // terminating POV script
   #else
     #if (models[0])
       #declare f=1000000 // 1 unit = 1000 kms
     #end
     #if (models[1])
       #declare f=1000; // 1 unit = 1 km
     #end
     #if (models[2] | models[3] | models[4])
       #declare f=1; // 1 unit = 1 metre
     #end

     #if (models[3])
       #declare trans=<251.565, 0, 250.325>;
     #end

    // #declare f=1;

     #if (models[3])
       light_source
       {
         <0, 500, -1000>
         color rgb 1
       }
     #end



     #if (models[2] | models[3])
       plane
       {
         y, 0
         texture // bare sandy soil
         {
           pigment { color rgb <0.5, 0.35, 0.2> }
           finish { F_Standard }
         }
       }
     #end


     #if (models[3])
       sky_sphere
       {
         pigment
         {
           gradient y
           color_map
           {
             [0 rgb <0.7, 1, 1>]
             [0.25 rgb <0, 0.5, 1>]
             [1    rgb <0, 0.5, 1>]
           }
         }
       }
     #end


#250 and #252
     {
       union
       {
         object
         {
           GWG_FrKarl_Block238to252_Raw
           scale 1/f
         }
         #declare a=0;
         #while (a<3) // 3 floors with balconies
           #declare b=0;
           #while (b<2) // 2 balconies per floor
             object
             {
               GWG_FrKarl_Block238to252_Balcony_Raw
               scale 1/f
               translate <-1.155 +b * 0.515, 
GWG_FrKarl_Block238to252_Floor_yOffset + a * 
GWG_FrKarl_Block238to252_Floor_Height - 0.148, 1.045 + b *
                          GWG_FrKarl_Block238to252_Balcony_Spacing>/f
             }
             #declare b = b + 1;
           #end
           #declare a = a + 1;
         #end
       }
       #declare a=0;
       #while (a<3)
         object
         {
           GWG_FrKarl_Block238to252_Floor_Cutout
           scale 1/f
           translate <0.37, GWG_FrKarl_Block238to252_Floor_yOffset + a * 
GWG_FrKarl_Block238to252_Floor_Height, 0.37>
         }
         #declare a = a + 1;
       #end
       #declare a=0;
       #while (a<3)
         #declare b=0;
         #while (b<2)
           object
           {
             GWG_FrKarl_Block238to252_Balcony_Door_Cutout
             scale 1/f
             translate <-0.005,
		      GWG_FrKarl_Block238to252_Floor_yOffset + 0.00001 + a * 
GWG_FrKarl_Block238to252_Floor_Height,
                       1.86 + b * 
GWG_FrKarl_Block238to252_Balcony_Spacing + 0.4>/f
           }
           #declare b = b + 1;
         #end
         #declare a = a + 1;
       #end

       translate trans/f
       texture { T_Concrete }
     }


#242 and #244
     {
       union
       {
         object
         {
           GWG_FrKarl_Block238to252_Raw
           scale 1/f
         }
         #declare a=0;
         #while (a<3) // 3 floors with balconies
           #declare b=0;
           #while (b<2) // 2 balconies per floor
             object
             {
               GWG_FrKarl_Block238to252_Balcony_Raw
               rotate y*180
               scale 1/f
               translate <11.08 + 1.155 - b * 0.515,
			GWG_FrKarl_Block238to252_Floor_yOffset + a * 
GWG_FrKarl_Block238to252_Floor_Height - 0.148,
			1.045 + 3.24 + b * GWG_FrKarl_Block238to252_Balcony_Spacing>/f
             }
             #declare b = b + 1;
           #end
           #declare a = a + 1;
         #end
       }
       #declare a=0;
       #while (a<3)
         object
         {
           GWG_FrKarl_Block238to252_Floor_Cutout
           scale 1/f
           translate <0.37, GWG_FrKarl_Block238to252_Floor_yOffset + a * 
GWG_FrKarl_Block238to252_Floor_Height, 0.37>
         }
         #declare a = a + 1;
       #end
       #declare a=0;
       #while (a<3)
         #declare b=0;
         #while (b<2)
           object
           {
             GWG_FrKarl_Block238to252_Balcony_Door_Cutout
             scale 1/f
             translate <10.705,
		      GWG_FrKarl_Block238to252_Floor_yOffset + 0.00001 + a * 
GWG_FrKarl_Block238to252_Floor_Height,
                       1.86 + b * 
GWG_FrKarl_Block238to252_Balcony_Spacing + 0.4>/f
	  }
           #declare b = b + 1;
         #end
         #declare a = a + 1;
       #end
       texture { T_Concrete }
       translate (< -((FrKarl_SideStreet_Pavement_Width + 
GWG_FrKarl_Block238to252_Front_Way_Length +
                    GWG_FrKarl_Block238to252_Front_Doorstep_Depth)*2 +
                    FrKarl_SideStreet_Width)-11.08,
                    0,
                    0 > + trans)/f
     }
			
     camera
     {
       location camPos/f +trans
       look_at camLook/f +trans
       angle camAng
     }




   #end

#else // single detail views

   sky_sphere
   {
     pigment { color rgb 1 }
   }

   plane
   {
     y, 0
     texture
     {
       pigment { color rgb 1 }
       finish { F_Standard }
     }
   }

   light_source
   {
     <1000, 2000, -4000>
     color rgb 1
   }

   object
   {
     GWG_FrKarl_Block238to252238to252_Balcony_Raw
     texture { T_Concrete }
   }

   camera
   {
      location <8, 1.5, 1.6>
      look_at  <0, 0.5, 1.6>
      angle 40
   }

#end


Post a reply to this message


Attachments:
Download '2008-07-31 inside my apartment, take 2 (yadgar).jpg' (15 KB)

Preview of image '2008-07-31 inside my apartment, take 2 (yadgar).jpg'
2008-07-31 inside my apartment, take 2 (yadgar).jpg


 

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