|
![](/i/fill.gif) |
Thorsten Froehlich <tho### [at] trf de> wrote:
: * Warp: Do a sync (get change 1235) to try it.
Ok, I did it, and there clearly is a difference.
I tested with this small example:
#include "functions.inc"
camera { location -z*5 look_at 0 angle 35 }
light_source { <100,200,-300>, 1 }
isosurface
{ function { x^2+y^2+z^2-(1-.2*f_noise3d(x*8,y*8,z*8)) }
contained_by { sphere { 0,1 } }
max_gradient 2
evaluate 1,10,.99
pigment { rgb x } finish { specular .5 }
}
The older version (ie. beta7) rendered that in 1 min 30 seconds in this
computer. The report was a bit odd:
Warning: The maximum gradient found was 3.555, but max_gradient of
the isosurface was set to 310.201. Adjust max_gradient to
get a faster rendering of the isosurface.
The newer version renders the example above in 13 seconds, which is a clear
improvement.
Warning: The maximum gradient found was 3.477, but max_gradient of the
isosurface was set to 2.000. The isosurface may contain holes!
Adjust max_gradient to get a proper rendering of the isosurface.
The max_gradient value of 3.477 seems to be correct. When I set max_gradient
to that, the isosurface renders ok.
It seems that now 'evaluate' doesn't actually change the max_gradient, but
just calculates the correct one and reports it. The example above renders
equally whether or not the 'evaluate' is there.
This behaviour seems logical to me.
--
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}// - Warp -
Post a reply to this message
|
![](/i/fill.gif) |