Retime camera with retime sop

   7421   13   4
User Avatar
Member
25 posts
Joined: Nov. 2006
Offline
Hi, is there any way to retime a camera (or an alembic with camera) with the retime node? I would like to link the retime of a simulation cache to retime a camera move for bullet time effects. I can extract the transform point from a camera and connect that to a retime, and link it to a new camera with a null. This kinda works, but I don't know how to extract camera rotations. Any ideas?
User Avatar
Member
8043 posts
Joined: Sept. 2011
Online
You shouldn't have to use SOPs. The CHOP context is made for this and even has a retime node. The object and fetch nodes can be used to get the transforms and zoom animation respectively. Chops can then export the modified channels to a new camera, or the original camera if it doesn't have any parents. You can technically use the original camera even if it has parents, but in that case constraints need to be used rather than chop exports, which is a slightly different code path that replaces the object's transform completely.
User Avatar
Member
25 posts
Joined: Nov. 2006
Offline
Retime node in chops is not the same, as the one in sops. Is difficult to link them.
User Avatar
Member
8043 posts
Joined: Sept. 2011
Online
The retime sop can be used in ‘time’ mode, then the chop containing the time curve can be exported to that parameter as well as connected to the retime chop. When the retime SOP is in linear interpolation mode, it should match chops interpolation.
User Avatar
Member
3 posts
Joined: April 2018
Offline
jsmack
The retime sop can be used in 'time' mode, then the chop containing the time curve can be exported to that parameter as well as connected to the retime chop. When the retime SOP is in linear interpolation mode, it should match chops interpolation.

I been trying to do this, can you share the setup? Thanks in advance
User Avatar
Member
396 posts
Joined: April 2018
Online
jeipeisei
I been trying to do this, can you share the setup? Thanks in advance
You can do this with a Fetch Parameters CHOP, your choice of a retiming CHOP, and an Export CHOP, without needing SOPs at all:

User Avatar
Member
3 posts
Joined: April 2018
Offline
Thanks for the help, one more thing;
I made a basic speed ramp using the retime sop (evaluation by speed), so how can I feed a camera with that speed information? I need the geo and the camera to be aligned, otherwise it looks really weird.

Thanks!




nvm, I solved this by extracting a retimed transform from a ref object and feeding the camera ctrl using chops.
Edited by jeipeisei - June 23, 2023 23:15:23
User Avatar
Member
14 posts
Joined: Sept. 2022
Offline
eikonoklastes
jeipeisei
I been trying to do this, can you share the setup? Thanks in advance
You can do this with a Fetch Parameters CHOP, your choice of a retiming CHOP, and an Export CHOP, without needing SOPs at all:

but you can't keyframe of this...
User Avatar
Member
396 posts
Joined: April 2018
Online
a591280714
eikonoklastes
You can do this with a Fetch Parameters CHOP, your choice of a retiming CHOP, and an Export CHOP, without needing SOPs at all
but you can't keyframe of this...

Hi, you can use a Warp CHOP to do this. It accepts a curve as a 2nd input, so you can build your own by keframing a Channel CHOP.
Just remember to export to a different camera, otherwise you'll create a feedback loop and get incorrect results.

Edited by eikonoklastes - Aug. 31, 2023 02:48:52
User Avatar
Member
14 posts
Joined: Sept. 2022
Offline
eikonoklastes
a591280714
eikonoklastes
You can do this with a Fetch Parameters CHOP, your choice of a retiming CHOP, and an Export CHOP, without needing SOPs at all
but you can't keyframe of this...

Hi, you can use a Warp CHOP to do this. It accepts a curve as a 2nd input, so you can build your own by keframing a Channel CHOP.
Just remember to export to a different camera, otherwise you'll create a feedback loop and get incorrect results.

You are so handsome
User Avatar
Member
14 posts
Joined: Sept. 2022
Offline
eikonoklastes
a591280714
eikonoklastes
You can do this with a Fetch Parameters CHOP, your choice of a retiming CHOP, and an Export CHOP, without needing SOPs at all
but you can't keyframe of this...

Hi, you can use a Warp CHOP to do this. It accepts a curve as a 2nd input, so you can build your own by keframing a Channel CHOP.
Just remember to export to a different camera, otherwise you'll create a feedback loop and get incorrect results.

But, It seems like there is no way to set interpolation... strech node could do that, but without keyframe feature... Is there anyway to keep interpolation and keyframe features at the same time?
User Avatar
Member
7 posts
Joined: Jan. 2019
Offline
Using CHOPs is definitely a way (probably even the intended way) to do this. But if you are more comfortable in SOP-world, you can also just do that! (like the initial question already hinted at)

We can use the HScript expression "origin()" to fetch both the world transform and (euler) rotations:
https://www.sidefx.com/docs/houdini/expressions/origin.html [www.sidefx.com]

And any extra animated parameters (like focal length) we can just fetch with a simple "ch()" expression.
The retime-sop can then just be used in any mode you like. With the resulting retimed attributes driving a new camera.

I've attached a little example to show this setup.
Edited by matsvanreenen - Feb. 13, 2024 17:14:34

Attachments:
retime_camera.hiplc (190.6 KB)

User Avatar
Member
18 posts
Joined: Jan. 2022
Offline
Very usefull
User Avatar
Member
8 posts
Joined: April 2023
Offline
matsvanreenen
I've attached a little example to show this setup.

This is awesome, many thanks!
  • Quick Links