POV-Ray : Newsgroups : povray.binaries.images : MSOCP : Re: MSOCP Server Time
29 Jul 2024 22:22:43 EDT (-0400)
  Re: MSOCP  
From: s day
Date: 15 Jul 2013 19:20:01
Message: <web.51e482779b3b97d05bfe13270@news.povray.org>
"Mr" <nomail@nomail> wrote:
> Wow! indeed, would you by any chance agree to share the code for this material?

The texture is really simple, it only looks any good due to the SSLT settings
which are fairly standard but take a long time to render (several hours with
radiosity and SSLT enabled).. Also the lighting for this render was a mix of a
HDR probe and lightsource (to get the small specular highlights).

The texture and isosurface snowball are below.

#declare useRad=2; // 1=load 2=save
#declare radQuality=5; // 1-10 1=low 10=high
#declare useSubSurface=1;

global_settings {
#if(useSubSurface)
  mm_per_unit 15
  subsurface { samples 100, 20 radiosity on }
#end
#if(useRad)
ambient_light 0
  radiosity {
#if(useRad = 2)
    pretrace_start 0.08           // start pretrace at this size
    pretrace_end   0.001           // end pretrace at this size
#end
#if(useRad = 1)
    pretrace_start 1           // start pretrace at this size
    pretrace_end   1           // end pretrace at this size
    always_sample off  //
#end
    count 20*radQuality 50*radQuality
    nearest_count 10+(radQuality) 10+(radQuality/2)               /
    low_error_factor .5
    gray_threshold 0.0
    minimum_reuse 0.015
    adc_bailout 0.01/2
    error_bound 1.5-(radQuality/10)
    recursion_limit 2
    brightness 1
    normal on
  }
#end

#declare snowTex = texture {
pigment { rgb <1, 1, 1> }
finish { diffuse albedo 0.7 specular albedo 0.2 roughness 0.0002 brilliance 0.9
reflection { 0.005, 0.05 fresnel on } conserve_energy
#if(useSubSurface)
      subsurface { translucency <2.95,3.0,3.1> }
#end
 }
normal { granite 0.2 scale 0.005 }
}

// iceTex
#declare iceTex1 = texture {
pigment { rgbf <1, 1, 1, 0.3> }
finish { diffuse albedo 0.1 specular albedo 0.1 roughness 0.05 brilliance 2.5
reflection { 0.005, 0.01 fresnel on } conserve_energy
#if(useSubSurface)
subsurface { translucency <29.5,30,31> }
#end
}
normal { granite 0.1 scale 0.01 }
}

#declare iceTex2 = texture {
pigment { rgbf <1, 1, 1, 0.1> }
finish { diffuse albedo 0.5 specular albedo 0.15 roughness 0.02 brilliance 1.2
reflection { 0.005, 0.03 fresnel on } conserve_energy
#if(useSubSurface)
 subsurface { translucency <29.5,30,31> }
#end
}
normal { granite 0.15 scale 0.008 }
}


#declare Snowball=function {
   pigment {
      wrinkles
      scale 0.25
      turbulence 0.2
      lambda 0.5
      omega 0.75
      color_map {
          [0, rgb 0]
          [1, rgb 1]
       }
    }
 }


isosurface {
    function{
       f_sphere(x,y,z,1)-(Snowball(x,y,z).gray)*0.075
     }
    contained_by {sphere {0,2.5}}
    max_gradient 2.07
    hollow
  texture {
    gradient x
    texture_map { [ 0.0 iceTex1 scale 0.33 ] [ 0.45 iceTex2 scale 0.33 ] [0.75
snowTex scale 0.33] } scale 3 turbulence 0.275  translate <-1.7, 0, 0>  }
  interior { ior 1.31 }//fade_distance 1 fade_power 1001
    scale 3
    rotate <0,0,50> rotate <0, -30, 0>
    translate <-0.5, 3.4, -16>
}


Sean


Post a reply to this message

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