Problem creating a ROP OTL

   3044   1   1
User Avatar
Member
74 posts
Joined: July 2005
Offline
Hi!
I'm trying to create an OTL in H6.5 which will render geometry (a user-interface for the opsave command..).

But here is the problem:
I create a SubNetwork ROP and make a new operator type from it.
Then Houdini automatically adds a Render button, which value (on or off) cannot be used in the TypeProperties page into a callback script ( to launch the opsave command).
I have to add a similar Render Button to trigger the command.
So: is it a bug? How can i access the value of the default RenderButton ?

Thx for help !
User Avatar
Member
29 posts
Joined: July 2005
Offline
Hey, well.. your going to laugh or cry when you hear my solution.. but it does work! I ran into the same problem you did.. here's what I found.

I found if you put another render driver inside your custom ROP OTL it gets run when you hit that OTLrender button. So I put a dummy chop network and a dummy channel output driver inside my otl. The chop network just has one dummy constant channel defined and the channel output driver points to that so it doesn't error out.

The channel output driver gets run when the top render button is run.. so I put this in there

CHOP PATH: ../chop/dummy (this points to my dummy channel)
OUTPUT FILE : /dev/null (might need to be something else on windows)

Pre-Render script:
source opdefDriver/myOTL?jumpstart.cmd `opfullpath(“..”)`;

So that's the trick.. in the pre-render cmd it calls a script inside your otl to get things going. Quite hacky I know… The dummy channels and such is just so the channel driver doesn't error out and executes the pre-command

I think I had found another soulution that was less hacky but it only seemed to work when you “hit” the render button.. it didn't work when you ran “render myOTL” from hscript.. so I went for this solution


d
Daniel Kramer
Sony Pictures Imageworks
  • Quick Links