here are two exact same trees rendered in the exact same environment. one is made up of plate leaves with a leaf image mapped to them that has opacity. the other is a tree with the leaves made up of a mesh that has the leaf image mapped to it…no opacity. There is a pretty large difference in render times. The plate version has the map in the opacity slot. I tried popping the opcity map in the refraction slot but i could never get the leaves opacity portion to work. If there is a secret to that, please let me know.
Thanks.
mh
What happens if you turn off filtering (on the opacity map) in the plates (opacity) version and turn the blur to .01? I’d be interested seeing your results, because others have reported faster (albeit not that much faster) results when doing this.
That’s the main one really - the issue comes up where vray hits the anti aliased edge of an opacity map - eg a grey value. A White value for the leaf is totally opaque so vray bounces back all light rays happily. A black value is totally transparent so vray shoots right through it. A grey value is nasty since you need to do both bounced rays and refracted rays and if those rays go on to hit another leaf with a grey opacity value you end up with a tonne of rays being bounced. Knocking off the filtering and using quite harsh opacity maps is your best bet.
i just did a test with ten trees for each. The difference between the trees is that the plates trees come from Onyxtrees standalone software and are exported out as 3ds files and then imported into max. These cloned with no problem, very quickly.
The mesh trees are treestorm trees and still associated with treestorm. (the leaves are mesh sub-objects)They cloned slower and crashed max after 6 or 7 trees were cloned so i had to start over cloning them and save after every 2 clones.
Also, both types of trees are diplayed as boxes. When the 3ds trees were cloned, they held their display properties. The treestorm trees didn’t. I was required to stop after each tree clone and redo the object properties. I eventually discovered that every time i cloned a treestorm tree, it added a set of leaves. (ie original is one leaves and one trunk, clone is one trunk, 2 leaves, clone of that is one trunk, 3 leaves and so on) i had to go back in and delete all the extra leaves from each grouping.
Once i did that i rendered and compared. here’s the results.
10 plate trees…1:39 min
10 mesh trees…1:07 min
mh
Funny, but it even helps to have a “crisp” opacity map without greys. I don’t know what’s the big difference, since Vray has to sample the map anyway, but sorta works.
Damn if only id known this a few weeks back. Ive just retested a really slow old scene of mine with a few trees in it, turned off filtering in the opacity map and dropped the blur value and a low res test has halved in rendering time. The leaves are much sharper too. Thanks for the tip.
more samples. here is 100 trees of the two i have been using. one group is mesh the other are plate. The mesh group has been disassociated frpm treestorm (a very tricky thing to do without crashing max and corrupting files). exact same camera angles and environment.
mesh render time is 4:12 minutes
plates render time is 5:15 minutes.
It just confirms my dumping opacity plates and using mesh …contrary to what other people are doing here on the forum. mesh, as always, renders faster than plates unless you are using one tree…and that never occurs on my projects.
mh
In that example (of the 100 tree’s) have you turned off bitmap filtering on the opacity maps on the plate scene?
Just curious.
Surely though if it’s such an issue to have more than a few Treestorm tree’s in a single scene then you are infact saving time/hassle by just using mapped planes? I sure wouldn’t want my scene’s being corrupted by faffing around trying to dissasociate treestorm tree’s. Unless you plan on not using the treestorm tree’s?
if you look at the plates image, you’ll see that it is labeled as filtering off.
As for corrupting files. The treestorm tree is made as a stand alone file. the only file that could get corrupted is it. Once it is disassociated from treestorm it is no different than the imported 3ds tree with plates…it just renders faster. there is no crashing or corruption.
it is the act of disassociation that is the sensitive part. After that it’s no problem.
As for the difference in rendering times, my scenes can have a thousand trees. The hit to rendering is a big deal when you are doing an animation and every second counts. That is why i prefer the mesh trees over the plate trees.
mh
Fair enough. Sorry didn’t see the actual images (can’t access that hosting site here at work).
Is the meshing of the folgiage an actual option in treestorm (sorry, I’ve never used it before) or do you create the meshing yourself by drawing around a map?
Yup, pure mesh will always render faster than the opacity mapped one with this method VRay is currently using. But opacity mapped leaves have some advantages over the mesh one. Once converted to proxy, it’s easier to change the shape and color of the leaves in a hurry. And if you’ve got a dozen trees each weighting almost half a gig is mesh size, it helps to keep polycounts at a reasonable level. I know with proxies you can render zillions, but that’s only true if you don’t use too many *unique* heavy proxie sets.
I’m not for, or against, because we use both types of trees heer effectively. You just need to choose the tools you need to get your job done wisely.