POV-Ray : Newsgroups : povray.binaries.images : waste of time! : Re: waste of time! Server Time
26 Jun 2024 07:03:40 EDT (-0400)
  Re: waste of time!  
From: alphaQuad
Date: 28 Jan 2008 21:40:00
Message: <web.479e918eb082306e3ffee9290@news.povray.org>
"nemesis" <nam### [at] gmailcom> wrote:

> hmm, 32 minutes at, what, 640x480?  and no supersampling antialiasing?  Besides,
> there doesn't even seem to be any shadows...
>
> I'll play with it, but first I need to come up with a better bezier curve... :)

that was [512x384, AA 0.3] from res menu / 750mhz single CPU
shadows are faint but visible

and my edits:code for previous img
(radiosity more fully explained)

#include "echo.inc"
global_settings {
  max_trace_level 10
  assumed_gamma 1.0

  adc_bailout 0.111     // larger number = faster
  // for HDR image file creation adc_bailout 1/1e6 = 0.000001

  // global setting adc_bailout keyword followed by float value to specify
  // the point at which a ray's contribution is considered insignificant
  // The default value is 1/255, or approximately 0.0039, since a change smaller
than that could not be visible in a 24 bit image.
  // Setting adc_bailout to 0 will disable ADC
#if (1)
  radiosity {
    // controls radiosity pre-trace gathering step
    pretrace_start 0.08 //default 0.08
    pretrace_end 0.01   // default 0.04
    //range 0.0 and 1.0 which specifies the size of the blocks in the
    // mosaic_preview as a percentage of the image size

    count 40 // The integer number of rays that are sent out whenever a new
radiosity value has to be calculated is given by count.
    // A value of 35 is the default, the maximum is 1600.
    // When this value is too low, the light level will tend to look a little
bit blotchy, as if the surfaces were
    // slightly warped. If this is not important to your scene (as in the case
that you have a bump map or if you have a strong texture)
    // then by all means use a lower number.

    // minimum number of old ambient values blended together to create a new
interpolated value. The total number blended will
    // vary depending on error_bound. All previous values that fit within the
specified error_bound will be used in the average.
    nearest_count 8
    // lower than 4, things can get pretty patchy. Must be no more than 20,
since that is the size of the array allocated.
    // default 5

    error_bound 1.5  // default 1.8 is good for a smooth general lighting
effect.
    // Lower values are more accurate, but will strongly increase the danger of
artifacts
    // and therefore require higher count. You can use values even lower than
0.1 but both render time and memory
    // use can become extremely high then.

    recursion_limit 3   // default 3
    // recursion levels are used to calculate the diffuse inter-reflection

    low_error_factor .5
    // The low_error_factor is a float tuning value which sets the amount that
the error bound is dropped during the preliminary image passes. If your low
error factor is 0.8 and your error bound is set to 0.4 it will really use an
error bound of 0.32 during the first passes and 0.4 on the final pass.
    // default 0.5

    gray_threshold 0.01
    // The gray_threshold float value grays it down a little, to make your scene
more believable. A value of .6 means to calculate the ambient
    // value as 60% of the equivalent gray value calculated, plus 40% of the
actual value calculated. At 0%, this feature does nothing. At 100%, you always
get white/gray ambient light, with no hue.
    // default 0.0

    minimum_reuse 0.0095
    // This sets a minimum bound for the reuse. If this value is too low, (which
it should be in theory) rendering gets slow, and inside corners can get a little
grainy.
    // If it is set too high, you do not get the natural darkening of
illumination near inside edges, since it reuses. At values higher than 2% you
start getting more just plain errors, like reusing the illumination of the open
table underneath the apple. Remember that this is a unit less ratio.
    // default 0.015.

    brightness 0.95 // default 1.0
    // specifies a float value
    // ambient_light in a non-Radiosity scene    //default <1,1,1>

    // Megapov 1.1
    // randomize on

    // Radiosity estimation affected by normals
    normal on
    media on
  }   #end
}

background { rgb 1 }

#local cup =
lathe { bezier_spline
48, //nr points
/* 0*/ <0, 2.8571826>, <174.28571, 2.8571826>, <197.14286,2.8571826>,
<197.14286,2.8571826>,
/* 1*/ <197.14286, 2.8571826>, <197.14286, 2.8571826>, <211.42857,-2.8571174>,
<228.57143,14.285683>,
/* 2*/ <228.57143, 14.285683>, <245.71429, 31.428583>, <242.85714,85.714283>,
<242.85714,85.714283>,
/* 3*/ <242.85714, 85.714283>, <242.85714, 85.714283>, <265.71429,80.000003>,
<291.42857,105.71428>,
/* 4*/ <291.42857, 105.71428>, <317.14286, 131.42857>, <308.57143,108.57143>,
<308.57143,185.71428>,
/* 5*/ <308.57143, 185.71428>, <308.57143, 262.85714>, <308.57143,742.85714>,
<308.57143,742.85714>,
/* 6*/ <308.57143, 742.85714>, <308.57143, 742.85714>, <317.14286,737.14285>,
<308.57143,754.28571>,
/* 7*/ <308.57143, 754.28571>, <300, 771.42857>, <288.57143,780>,
<280,768.57143>,
/* 8*/ <280, 768.57143>, <271.42857, 757.14285>, <294.28571,165.71428>,
<277.14286,148.57143>,
/* 9*/ <277.14286, 148.57143>, <260, 131.42857>, <231.42857,131.42857>,
<217.14286,105.71428>,
/* 10*/ <217.14286, 105.71428>, <202.85714, 80.000003>, <205.71429,54.285713>,
<185.71429,45.714283>,
/* 11*/ <185.71429, 45.714283>, <165.71429, 37.142883>, <2.8571429,2.8571826>,
<0,2.8571826>

sturm
scale y*.8
scale 1/1000
interior { ior 1.5 }
hollow
}

#macro tex( col )
  pigment { rgb col }
  normal { bumps .1 scale .002 }
  finish {
    ambient .01 diffuse .4 brilliance 1.2
    specular .97
    roughness .02
    metallic .1
    reflection { .2,.9 metallic .1 fresnel on exponent 1 }
    conserve_energy
  }
#end

union {
plane { y 0 pigment { rgb .6 } finish { ambient 0 diffuse 1 } }
//object { cup translate 0 tex( <.7,.8,1,.8,.1> ) }
object { cup translate z*.7 tex( <.9,.86,.4,.8,.1> ) }
object { cup translate z*(.7+1.3) tex( <1,.96,.84,.8,.1> ) }
//object { cup translate x*.7 tex(<1,1,1,.8,.1> ) }
object { cup translate x*.7+z*.7 tex(<.96,1,.67,.8,.1> )}
object { cup translate x*.7+z*.7*2 tex(<.7,1,.7,.8,.1> ) }
object { cup translate -x*.7 tex(<1,.4,.4,.95,.1> ) }
object { cup translate -x*.7+z*(.0+1.3) tex(<.3,.3,.9,.8,.1> ) }
object { cup translate -x*.7*2+z*(-.7+1.3) tex(<.7,1,.94,.8,.1> ) }
translate -z*0.8
}

light_source {
   <0,0,10>
   4.5
   area_light
   x,y,4,4
   circular orient jitter
}
camera {
   location <0,5,-9>
   look_at <-0.3,.6,0>
   angle 20
}


streamlined way to see a value in message pane:
echo(str) / echof(float) / echov(3d_vector)
%%%%%%%%%%%%%%%%%%%%%%%%%%%% echo.inc %%%%%%%%%%%%%%%%%%%%%%%%
#macro echo(Str)
    #if (1)
        #debug Str
    #end
#end
#macro echof(f)
echo(concat("\n*********** ",str(f,2,5)," *********** "))
#end
#macro echov(V)
echo(concat("\n********** <",str(V.x,2,5),",",str(V.y,2,5),",",str(V.z,2,5),">
***********"))
#end


Post a reply to this message

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