|
![](/i/fill.gif) |
Doctor John <joh### [at] home com> wrote:
> Agreed. It took ages to individually shape and polish each individual
> grain ;-)
Although we must confess that nature did a superb job at multiprocessing there
:)
> BTW what finish, interior etc did you use on your grains
In the first shot I used this technique in, I union'd all the grains (I actually
used blobs instead of spheres), and applied the following material:
#declare SandColor = color rgb <0.9,0.6,0.3>;
texture {
bozo
texture_map {
#macro SparklesTexture(fTrans,fRef,fDiff,fMix,cMix)
pigment { color (1-fMix)*SandColor + fMix * cMix transmit fTrans }
finish { specular fRef diffuse fDiff reflection { fRef/2 } }
#end
[0.0 SparklesTexture (0.7, 1.0, 1.0, 0.0, <0,0,0>) ]
[0.2 SparklesTexture (1.0, 0.1, 0.0, 0.0, <0,0,0>) ]
[0.4 SparklesTexture (0.3, 0.3, 0.5, 0.5, <1,1,1>) ]
[0.6 SparklesTexture (0.3, 0.3, 0.5, 0.5, <0,0,0>) ]
[0.8 SparklesTexture (0.3, 0.3, 0.5, 0.5, <0,0,0>) ]
[1.0 SparklesTexture (0.7, 0.3, 1.0, 0.0, <0,0,0>) ]
}
scale 0.005
}
interior { ior 1.5 }
// no_shadow
// no_reflection
So quite a mix of different material properties (if you look at real sand,
you'll often find that it's a mix of very different colors, too); they seem
quite a bit arbitrary, but yes - they actually are :) In fact I just toyed
around until it looked good, partially driven by how I'd expect it to work
physically, partly driven by what effects I expected from the sand grains.
In some other shot, these looked better:
texture {
bozo
texture_map {
#macro GrainsTexture(fTrans,fRef,fDiff,fMix,cMix)
pigment { color (1-fMix)*SandColor + fMix * cMix transmit fTrans }
finish { specular fRef*2 diffuse fDiff reflection { fRef/2 } }
#end
[0.0 GrainsTexture (0.7, 1.0, 1.0, 0.0, <0,0,0>) ]
[0.2 GrainsTexture (1.0, 0.1, 0.0, 0.0, <0,0,0>) ]
[0.4 GrainsTexture (0.3, 0.3, 0.5, 0.5, <1,1,1>) ]
[0.6 GrainsTexture (0.3, 0.3, 0.5, 0.5, <0,0,0>) ]
[0.8 GrainsTexture (0.3, 0.3, 0.5, 0.5, <0,0,0>) ]
[1.0 GrainsTexture (0.7, 0.3, 1.0, 0.0, <0,0,0>) ]
}
scale 0.005
}
interior { ior 1.5 }
no_shadow
So you'll probably need to do your own tweaking, actually.
Post a reply to this message
|
![](/i/fill.gif) |