Hi all,
The attached not rendered with Povray but I thought it was an interesting
experiment worth sharing...
I was idly thinking this morning whether it would be possible to use some
CSG-acceleration techniques to render materials with billions/trillions+
actual particles rather than messing about with slow-to-render volume
and media effects. After a few minutes (and a subtle but effective tweak
to my CSG union code) I came up with a scene that effectively contains
a trillion (1,000,000,000,000) spheres. The entire scene occupies
200x200x200
units and each sphere is 0.00125 units in diameter.
The image attached is a deep zoom where you can (just) make out the
individual objects in the bottom-right corner. Every visible object is
a tiny sphere. I'm not entirely sure how many are represented in the field
of view, probably several billion.
Technical details ...
The scene is basically 4 nested levels of CSG unions as follows...
union(1000 * union (1000 * union (1000 * union(1000 * sphere))))
Each union contains its own 20x20x20 uniform-grid subdivision scheme (the
whole scene effectively contains 1 billion individual voxel grids) so the
parse/render times are surprisingly low for so many shapes (17s to parse and
around 17 minutes to render the attached at 1280x1024 and 4x4
anti-aliasing).
"Whole" views of the scene are rendered in under a minute, which bodes well
for my plans to render stone and smoke as billions of individual
particles...
I'm sure povray would be able to handle this, would be interesting to see
if anyone can replicate it and give me an idea of parse/render times. Code
on request...
Ian.
Post a reply to this message
Attachments:
Download 'trillion_05_s.jpg' (698 KB)
Preview of image 'trillion_05_s.jpg'
|