I want to make .ifds one one cluster, then copy the .ifds to a different system and render them there. I am having trouble doing this, since the path to the geometry files is different (/one/two/three/file.bgeo.sc versus /a/b/c/file.bgeo.sc). How can I make this work?
Putting “/a/b/c/” under “Shared temp storage” and “Local temp storage” in the Driver tab of the mantra out node doesn't do the trick. Using relative paths with “$HIP” or “..” doesn't either, because the path gets expanded when writing the ifd. To get around this, I have been saving inline geometry, but I do not want to do that as this is very memory inefficient in this case.
Any advice?
How to make .ifds, with external geometry, for rendering on different system with different file path?
1563 2 0- kalina
- Member
- 11 posts
- Joined: Aug. 2016
- Offline
- jsmack
- Member
- 7658 posts
- Joined: Sept. 2011
- Online
Use pyfilter to modify your ifd on the fly using python:
http://www.sidefx.com/docs/houdini/render/python.html [www.sidefx.com]
http://www.sidefx.com/docs/houdini/render/batch.html [www.sidefx.com]
http://www.sidefx.com/docs/houdini/render/python.html [www.sidefx.com]
http://www.sidefx.com/docs/houdini/render/batch.html [www.sidefx.com]
- kalina
- Member
- 11 posts
- Joined: Aug. 2016
- Offline
Thank you, but I'm still struggling to figure this out. I've gotten this far:
Instead of just calling “mantra-bin -f /path/to/my/file.ifd” like I've been doing, I can add “-P script.py”, where script.py replaces where the geometry file points to “/one/two/three/file.bgeo.sc” with “/a/b/c/file.bgeo.sc”. Is that right? But how do I actually do that? I've combed through the links you have sent and can't find what property I need to set in order to do this.
Instead of just calling “mantra-bin -f /path/to/my/file.ifd” like I've been doing, I can add “-P script.py”, where script.py replaces where the geometry file points to “/one/two/three/file.bgeo.sc” with “/a/b/c/file.bgeo.sc”. Is that right? But how do I actually do that? I've combed through the links you have sent and can't find what property I need to set in order to do this.
import mantra def filterGeometry(): mantra.setproperty("???")
-
- Quick Links