|
|
> Its ages since I've done anything in pov-ray, so I decided to play around
> with something vaguely fur-like. Comments?
It does look convincing, but tell me, how many objects are in that scene?
Tracing time? And how much does it increase when using... (drum roll)
Antialiasing?
I've seen quiet some impressive renders using tons and tons of cones, but
placing those on arbitrary objects with an even distribution can get pretty
complicated...
Regards,
Tim
--
"Tim Nikias v2.0"
Homepage: <http://www.nolights.de>
Post a reply to this message
|
|
|
|
-[how many objects are in that scene? Tracing time?]-
Lots, and ages. 100,000 cylinders, and something like 4 min at 640x480
AA0.3. The picture I posted first is 1600x1200 AA0.2, shrunk to 50% to
enhance AA.
-[placing those on arbitrary objects with an even distribution can get
pretty complicated...]-
Its certainly an interesting problem. For really even distributions, the
method of constrained relaxation (which has come up before on these forums,
for creating golf-ball like patterns on a sphere) is fairly general, though
For CSGs, it wouldn't be too hard (relatively speaking!) to write an
extension to pov-ray to find random uniformly distributed points on the
surface of objects, since its fairly easy for the simple primatives (cone,
cylinder, cuboid) and CSG can be done by a rejection of a point on the
surface if it lies inside another CSG object (union) or lies outside it
(intersection).
As for the more 'curvy' primatives: for parametrics, its a matter of
finding the partial derivatives of the defining function, which could be
done, though for complicated surfaces it would probably use a lot of memory.
Isosurfaces: I'm not sure how a "uniform surface distribution" method could
work yet, but the "constrained relaxation" method would be relatively easy
to implement.
One possible way might be to use the marching cubes algorithm on the
isosurface (an algorithm especially well suited to isosurfaces), then map
uniformly to a triangle mesh (not hard, in theory at least), then taking the
points found by the triangle mesh and mapping them back onto the isosurface
by looking at grad f at the point on the mesh in question, and use a 1D root
finder on f along this line to move the point exactly back onto the
isosurface.
Hmm, so in short, "pretty complicated" as you say... pretty badly explained
too...
-Chris
Post a reply to this message
|
|