|
![](/i/fill.gif) |
Besides the fact that rand() always returns the same number sequence for
a given seed, you are using rand() in the wrong way.
This is how rand() should be used:
#declare Conifer_Cluster =
union
{
#declare Conifer_Seed = seed(0); // or whatever number you like
#declare numNeedles = 5 + rand(Conifer_Seed)*5;
#declare iter = 0;
#while(iter < numNeedles)
object
{ Conifer_Needle rotate<rand(Conifer_Seed)*80,0,rand(Conifer_Seed)*80> }
#declare iter = iter+1;
#end
rotate <-40,0,-40>
rotate <90,0,0>
}
Since there's no variable in POV-Ray which changes from render to render,
there's no way of getting a different seed from render to render.
However, in an animation it's possible, as there are variables which
change. The most useful is 'frame_number'.
Thus, in an animation you could change the Conifer_Seed declaration above
to look like this:
#declare Conifer_Seed = seed(frame_number);
This way you get a different distribution for each frame of the animation.
--
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
![](/i/fill.gif) |