|
|
Warp <war### [at] tagpovrayorg> wrote:
> slongay <slo### [at] gmailcom> wrote:
> > This works but the myLeaves mesh takes up a substantial amount of memory
> > unnecessarily as each leaf within it is just an affine transformation of the
> > same mesh.
>
> Unless your leafMesh is rather large, I don't think there is a significant
> amount of memory saving if you make instances of it, each one having an
> internal transformation matrix, compared to duplicating those triangles
> inside a mesh object. An object instantiation (which consists of a relatively
> large amount of data, including a transformation matrix) requires a fair
> amount of memory. Although I must admit I don't know how many triangles a
> mesh must have before it becomes more memory consuming.
>
> --
> - Warp
Well I've done a few tests with it. My test tree using the massive union method
POVRay consumes 192mb in memory max when rendering. This is instantiating every
leaf ( which is not too large ). When when I make 22 copies of the tree POVRay
consumes 675mb.
Using the massive mesh approach, a tree (of roughly the same size) uses 185mb
max to render, and 22 copies of it uses 185mb max to render.
So that being said, I dont think there is much memory savings when instantiating
the leaves but the difference in file size is about 6x larger using the mass
mesh approach. Which in turn takes longer to parse.
I guess the feature I am really requesting is for POVRay to instantiate unions
instead of making copies of them. (Or at least thats what I think it does).
This way the massive union approach would would be the best as the file size is
small and it would be able to be instantiated.
-Steve
Post a reply to this message
|
|