Hello. i have a problem with delayed load object and point instancing for make a lot of trees.
When i'am using delayed load shader and about 30.000 point for point instance render pre-process takes a huge amounth of time! “Evaluating python” tooks only one singe process core and it very slow. How can i reduce rendertime to make good instancing with delayed load?
Delayed load takes a lot of time before rendering process
5677 5 0- evgen
- Member
- 63 posts
- Joined: Jan. 2008
- Offline
- evgen
- Member
- 63 posts
- Joined: Jan. 2008
- Offline
After a few experiments. Houdini tooks only one processor's core for generate IFD file befor rendering. Is it possible to make it on all cores?
generation of 1 millions point for point instancing tooks about 35 minutes to generate IFD. its very long time.
Maybe there is some trick to cache IFD and load it to another IFD in another scene?
generation of 1 millions point for point instancing tooks about 35 minutes to generate IFD. its very long time.
Maybe there is some trick to cache IFD and load it to another IFD in another scene?
- circusmonkey
- Member
- 2624 posts
- Joined: Aug. 2006
- Offline
Hi,
I downloaded your scene and made some minor adjustments. renders as expected ( nice and fast ) on my macbook pro i5 with 4 gigs of ram.
Render Time: 17.04u 0.46s 8.34r
Memory: 123.04 MB of 10.57 GB arena size
The main thing I did was reduce the amount of polygons for the budda. You should optimize everything ! . Drop the low res budda into your geo folder.
Rob
I downloaded your scene and made some minor adjustments. renders as expected ( nice and fast ) on my macbook pro i5 with 4 gigs of ram.
Render Time: 17.04u 0.46s 8.34r
Memory: 123.04 MB of 10.57 GB arena size
The main thing I did was reduce the amount of polygons for the budda. You should optimize everything ! . Drop the low res budda into your geo folder.
Rob
Gone fishing
- archie
- Member
- 71 posts
- Joined: June 2008
- Offline
- evgen
- Member
- 63 posts
- Joined: Jan. 2008
- Offline
Yep, archie is right.
I meaned not the rendertime, i mean cooking time of points. Example:
Vray for 3dsmax can cook a millions of objects in a few seconds by using vrayScatter or multiscatter or itoo forest pro.
http://www.itoosoft.com/img/gallery/forestpack/evgen3d_1.jpg [itoosoft.com]
http://www.itoosoft.com/img/gallery/riverVR.jpg [itoosoft.com]
its very useful for billions of polygons and millions of objects for make good environments.
Cooking time in 3dsmax takes a few second for millions of objects because it uses all cores and native C++ code for generating transform matrices.
Same thing i can make in houdini, but SOHO cooking points for instancing very slowly and on the single processor core even for 1 million boxes by python. Geometry is doesnt matter. The reason is number of objects.
I meaned not the rendertime, i mean cooking time of points. Example:
Vray for 3dsmax can cook a millions of objects in a few seconds by using vrayScatter or multiscatter or itoo forest pro.
http://www.itoosoft.com/img/gallery/forestpack/evgen3d_1.jpg [itoosoft.com]
http://www.itoosoft.com/img/gallery/riverVR.jpg [itoosoft.com]
its very useful for billions of polygons and millions of objects for make good environments.
Cooking time in 3dsmax takes a few second for millions of objects because it uses all cores and native C++ code for generating transform matrices.
Same thing i can make in houdini, but SOHO cooking points for instancing very slowly and on the single processor core even for 1 million boxes by python. Geometry is doesnt matter. The reason is number of objects.
- pclaes
- Member
- 257 posts
- Joined: Nov. 2007
- Offline
I have posted information on my blog regarding this very topic:
http://www.peterclaes.be/blog/ [peterclaes.be]
The answer as to why it is so slow is because all that point/instance information is written into the ifd file. In my vrayprocedural instancer it is not. It is very fast to generate the ifd's because it only creates a single procedural and that procedural will then grab all the points that have been cached to disk before.
But you need to compile your own vrayprocedural, you can not do it out of the box as far as I know. I have shared the source code and a description on how to get started here:
http://www.peterclaes.be/blog/?p=151 [peterclaes.be]
Other users have tested it on Windows 7 as well as linux and it compiles with a couple of warnings. Also the motionblur issue is not sorted yet, but it might get you started with the HDK a lot faster if you are willing to dive into it.
http://www.peterclaes.be/blog/ [peterclaes.be]
The answer as to why it is so slow is because all that point/instance information is written into the ifd file. In my vrayprocedural instancer it is not. It is very fast to generate the ifd's because it only creates a single procedural and that procedural will then grab all the points that have been cached to disk before.
But you need to compile your own vrayprocedural, you can not do it out of the box as far as I know. I have shared the source code and a description on how to get started here:
http://www.peterclaes.be/blog/?p=151 [peterclaes.be]
Other users have tested it on Windows 7 as well as linux and it compiles with a couple of warnings. Also the motionblur issue is not sorted yet, but it might get you started with the HDK a lot faster if you are willing to dive into it.
Cg Supervisor | Effects Supervisor | Expert Technical Artist at Infinity Ward
https://www.linkedin.com/in/peter-claes-10a4854/ [www.linkedin.com]
https://www.linkedin.com/in/peter-claes-10a4854/ [www.linkedin.com]
-
- Quick Links