Edit Context Options Camera Switcher

   2723   8   1
User Avatar
Member
331 posts
Joined: April 2018
Online
Hi, I have a camera switcher setup based on this Houdini 18.5 keynote video:
https://www.youtube.com/watch?v=zMrvCWy85xM&t=3425s [www.youtube.com]

In 19.5, I'm having a couple of issues with this.

1. If I take my frame range outside what is described in the Edit Context Options LOP, then the chain pops a few warning badges, and the Switch stops working, so when I do take the current frame back into a defined range, nothing happens.

Here is a demo of that:



2. With Karma Render Settings, how do I get it to read the correct camera? I don't know how to specify the Render Settings Camera as the Camera value. I tried /cameras/*, but the LOP does not like that, and gives me these warnings:
Edited by eikonoklastes - Aug. 20, 2022 11:05:23
User Avatar
Member
7759 posts
Joined: Sept. 2011
Offline
eikonoklastes
2. With Karma Render Settings, how do I get it to read the correct camera? I don't know how to specify the Render Settings Camera as the Camera value. I tried /cameras/*, but the LOP does not like that, and gives me these warnings:

Don't use a wildcard for the camera path. It has to be the actual camera's path. Make sure the camera lops define cameras in the same location instead of two different ones like in your example (make them both camera1 instead of camera1 and camera2).
User Avatar
Member
331 posts
Joined: April 2018
Online
jsmack
eikonoklastes
2. With Karma Render Settings, how do I get it to read the correct camera? I don't know how to specify the Render Settings Camera as the Camera value. I tried /cameras/*, but the LOP does not like that, and gives me these warnings:

Don't use a wildcard for the camera path. It has to be the actual camera's path. Make sure the camera lops define cameras in the same location instead of two different ones like in your example (make them both camera1 instead of camera1 and camera2).
Thanks, I'm aware of that option, but how do I get it to work with this setup? I cannot give 2 Nulls the same name. It seems like the Karma Render Settings LOP could use the authoring tools, where I can set Camera to "Do Nothing".

Is there no expression to read the render settings camera?
User Avatar
Member
55 posts
Joined: May 2013
Offline
I may be missing something but you don't need use the default /cameras/$OS prim path string, you can set it explicitly so they both share the same location in the scene graph
Image Not Found

Attachments:
explicit_name.jpg (92.0 KB)

User Avatar
Member
331 posts
Joined: April 2018
Online
j00ey
I may be missing something but you don't need use the default /cameras/$OS prim path string, you can set it explicitly so they both share the same location in the scene graph
Image Not Found
If you watch the video that I have linked in the original post, you will see what I am having an issue with.

I don't have a problem with setting multiple cameras to the same path, but that has nothing to do with what I have posted.

I am having trouble figuring out how to make a workflow described by SideFX themselves to work with the 19.5 Karma Render Settings LOP.
User Avatar
Member
9 posts
Joined: May 2018
Offline
As J00EY said, I think is just a matter of making sure all your cameras have the same name/path. Then, in the render settings camera parameter you just need to specify a single camera, ie: /cameras/camera.

Regarding your 1st issue with context option getting out of range, I can replicate and can't figure a way to make it work so far...

In the attached HIP you'll see things work fine with a single camera name, but if you extend the frame range and go over frame 3 then you start having the out-of-range issues for the context option.

Attachments:
camera_switch_context_options.hip (551.7 KB)

User Avatar
Member
331 posts
Joined: April 2018
Online
erikmlv
As J00EY said, I think is just a matter of making sure all your cameras have the same name/path. Then, in the render settings camera parameter you just need to specify a single camera, ie: /cameras/camera.
I'm really not sure how to say this any more clearly. This will be the third time I'm repeating myself. I don't care about the single camera name workflow. It works and that's great.

Now, once again, pretty please with a cherry on top, how do I get it to work with what I have actually asked?
User Avatar
Member
8539 posts
Joined: July 2007
Online
I'm not fully familiar with Solaris workflows and maybe there is easier way to inherit properties, but here is working even though maybe not so ideal way

seeing that you already have rendersettings that specifies the camera prim and you just want to inherit camera prim relationship from the current branch in Karma Render Settings node (which would by default override it)
you can set this Python Expression on the Camera parameter of your Karma Render Settings (considering the path to render settings is the same as already existing rendersetting prim on the incoming stage)

stage = hou.pwd().inputs()[0].stage()
settings_prim = stage.GetPrimAtPath( ch("primpath") )
return str(settings_prim.GetRelationship("camera").GetTargets()[0])
Tomas Slancik
FX Supervisor
Method Studios, NY
User Avatar
Member
331 posts
Joined: April 2018
Online
tamte
seeing that you already have rendersettings that specifies the camera prim and you just want to inherit camera prim relationship from the current branch in Karma Render Settings node (which would by default override it)
Yes, this exactly. Thanks for the script. I was hoping that there would be a built-in way to do this, but I guess not, so I'll RFE for the Karma Render Settings to have the override controls that other LOPs have, including (annoyingly) all the other Render Settings LOPs.
  • Quick Links