POV-Ray : Newsgroups : povray.general : Dark spots in media : Dark spots in media Server Time
29 Jul 2024 04:22:48 EDT (-0400)
  Dark spots in media  
From: cubicApocalypse
Date: 25 Feb 2013 19:10:01
Message: <web.512bfd3935e1cb21116286700@news.povray.org>
How do I fix these dark spots around the stars? I'm only using one absorbing
media, and it's for the shadows in the nebula.

Image: http://i.imgur.com/uSiDBfL.png

Code:


global_settings {
 max_intersections 128
 max_trace_level 32

}


#declare blueSize = seed(934);
#declare randBlueSize = (rand(blueSize)+0.5);

#declare blueStar = union {
  sphere {
  0
  0.3
  pigment { bozo scale 0.1 turbulence 2 color_map {[0 rgb <0.1,0.4,1>][1 rgb
<0.1,0.2,0.5>] } }
  finish { ambient 10 }
  }
  sphere {
  0
  1
  hollow
  pigment { rgbf 1 }
  interior { media { emission rgb <0.3,0.7,1>
  density {

        spherical
        color_map {[0 rgb 0][0.7 rgb <0.5,0.7,1>]}

  }

   }}
  finish { ambient 1 }
  }
  }


#declare Amount = 1000;
#declare Seed = seed(134);
#declare MinExtent = <-100, -100, -100>;
#declare MaxExtent = <100, 100, 100>; // Modify as desired

#declare Index = 0;
#while(Index < Amount)
  object
  { blueStar scale 0.2*randBlueSize
    #declare RandVector = <rand(Seed), rand(Seed), rand(Seed)>;
    translate MinExtent + (MaxExtent - MinExtent) * RandVector
  }
  #declare Index = Index + 1;
#end

#declare whiteSize = seed(897);
#declare randWhiteSize = (rand(whiteSize)+0.5);

#declare whiteStar =  union {
  sphere {
  0
  0.3
  pigment { bozo scale 0.1 turbulence 2 color_map {[0 rgb 0.5][1 rgb 1] } }
  finish { ambient 10 }
  }
  sphere {
  0
  1
  hollow
  pigment { rgbf 1 }
  interior { media { emission rgb <0.3,0.7,1>
  density {

        spherical
        color_map {[0 rgb 0][0.7 rgb 0.6]}

  }

   }}
  finish { ambient 1 }
  }
  }


#declare Amount = 1000;
#declare Seed = seed(1340);
#declare MinExtent = <-100, -100, -100>;
#declare MaxExtent = <100, 100, 100>; // Modify as desired

#declare Index = 0;
#while(Index < Amount)
  object
  { whiteStar scale 0.2*randWhiteSize
    #declare RandVector = <rand(Seed), rand(Seed), rand(Seed)>;
    translate MinExtent + (MaxExtent - MinExtent) * RandVector
  }
  #declare Index = Index + 1;
#end

#declare redStar = union {
  sphere {
  0
  0.3
  pigment { bozo scale 0.1 turbulence 2 color_map {[0 rgb <1,0.4,0.1>][1 rgb
<0.5,0.2,0.1>] } }
  finish { ambient 10 }
  }
  sphere {
  0
  1
  hollow
  pigment { rgbf 1 }
  interior { media { emission rgb <0.3,0.7,1>
  density {

        spherical
        color_map {[0 rgb 0][0.7 rgb <1,0.7,0.5>]}

  }

   }}
  finish { ambient 1 }
  }
  }

#declare redSize = seed(875);
#declare randRedSize = (rand(blueSize)+0.5);

#declare Amount = 1000;
#declare Seed = seed(13400);
#declare MinExtent = <-100, -100, -100>;
#declare MaxExtent = <100, 100, 100>;

#declare Index = 0;
#while(Index < Amount)
  object
  { redStar scale 0.2*randRedSize
    #declare RandVector = <rand(Seed), rand(Seed), rand(Seed)>;
    translate MinExtent + (MaxExtent - MinExtent) * RandVector
  }
  #declare Index = Index + 1;
#end

#declare cameraPosition = ((clock-0.5)*2)*30;


camera {
  location  <0.0, 0, cameraPosition>
  look_at   <0.0, 0.0,  0.0>
  right     x*image_width/image_height
}

sphere{
0
20
  texture{
    pigment{ rgbf 1}
  }
  interior{
   media{
    method 3
    samples 30
    emission <1,0.6,0.1>
    density{ wrinkles
             color_map {
              [0.00 rgb 0]
              [0.50 rgb 0.05]
              [0.65 rgb 0.1]
              [0.75 rgb 0.5]
              [1.00 rgb 0.2]
             }
             turbulence 0.9
             octaves 10
             omega 0.6
             scale  11

           }
    density{  spherical
              color_map {
               [0.0 rgb 0]
               [0.5 rgb 0.5]
               [1.0 rgb 1]
              }
             scale <1,1,1>*20
           }
   }

      media{
    method 3

    samples 30
    emission <0.6,0.7,0.1>
    density{ wrinkles
             color_map {
              [0.00 rgb 0]
              [0.65 rgb 0.0]
              [0.75 rgb 0.2]
              [1.00 rgb 0.1]
             }
             turbulence 0.9
             octaves 10
             omega 0.6
             scale  10

           }
    density{  spherical
              color_map {
               [0.0 rgb 0]
               [0.5 rgb 0.5]
               [1.0 rgb 1]
              }
             scale <1,1,1>*20
           }
   }

   media{
    method 3
    samples 30
    absorption rgb 2
    density{ wrinkles
             color_map {
              [0.00 rgb 0]
              [0.50 rgb 0.05]
              [0.65 rgb 0.1]
              [0.75 rgb 0.5]
              [1.00 rgb 0.2]
             } // end color_map
             turbulence 0.8
             octaves 10
             omega 0.6
             scale  12

           }
    density{  spherical
              color_map {
               [0.0 rgb 0]
               [0.5 rgb 0.5]
               [1.0 rgb 1]
              }
             scale <1,1,1>*20
           }
   }
   media{
    method 3

    samples 30

    emission <0.3,0.6,0.5>
    density{ wrinkles
             color_map {
              [0.00 rgb 0]
              [0.50 rgb 0.01]
              [0.65 rgb 0.05]
              [0.75 rgb 0.25]
              [1.00 rgb 0.1]
             }
             turbulence 2
             scale  50

           }
    density{  spherical
              color_map {
               [0.0 rgb 0]
               [0.5 rgb 0.5]
               [1.0 rgb 1]
              }
             scale <1,1,1>*20
           }
   }
  }
 hollow

}

#declare Amount = 256;
#declare Seed = seed(347);
#declare MinExtent = <-30, -30, -30>;
#declare MaxExtent = <30, 30, 30>;

#declare Index = 0;
#while(Index < Amount)
  object
  { blueStar scale 0.2
    #declare RandVector = <rand(Seed), rand(Seed), rand(Seed)>;
    translate MinExtent + (MaxExtent - MinExtent) * RandVector
  }
  #declare Index = Index + 1;
#end

#declare Amount = 128;
#declare Seed = seed(903248);
#declare MinExtent = <-10, -10, -10>;
#declare MaxExtent = <10, 10, 10>;

#declare Index = 0;
#while(Index < Amount)
  object
  { blueStar scale 0.2
    #declare RandVector = <rand(Seed), rand(Seed), rand(Seed)>;
    translate MinExtent + (MaxExtent - MinExtent) * RandVector
  }
  #declare Index = Index + 1;
#end


Post a reply to this message

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