Nested camera parenting FBX import

Hi,

I have some issues importing an .fbx made with C4D with camera animation.
I have the camera divided in 5 segmets, each one with an offset related to the previous one.
When importing in TD I have 5 COMPs, each one with nested COMPs inside to give the correct offset with the usual convertedtoTD Comp I usually parent to the main camera.

I’m trying to merge all those parts in one single “camera path COMP” but it seems pretty impossible since the parenting can’t happen with nested COMPs like those.

Any hint is appreciated
FBX_Forum_Test.2.toe (7.13 KB)

1 Like

Have you looked at the Camera Blend COMP? That will let you blend between multiple camera locations.

oh yes sure!
My first attemp was to parent all the cameras with a Camera Blend COMP with sequential option like in the attached .toe

In this case my attempt was to use:

  • segment param to switch the camera in sync with correct segment
  • cumulative_samples timer output to drive the animation via lookup

but feel still far from rebuilding the correct animation
FBX_Forum_Test_camblend.toe (8.46 KB)

Rather than reconstructing, what about baking out the animation? This would let you play back the path at any rate you want.

what do you mean exactly with “baking out the animation”?
Actually I don’t need to play the camera at the rate I want but instead I need the animation to be played “as it is”.
What I can’t figure out is why in spite of every param is mapped, animation is timer controller so it’s independent from timeline, I still can’t see the main camera moving correctly and following all the segmented path :frowning:

I don’t know about how C4D works in this regard, but here’s a simple set of examples. In the ZIP you’ll find the blender file where the animation was made, an exported FBX where the animation has been included, and a TOX where the file has been ingested in Touch.

animation_example.zip (136 KB)

You can track down the CHOP animation that’s driving all of the movement. Rather than using a timeslice CHOP you can drive time with a speed CHOP, a Timer, or any other means of scrubbing through the animation.

Does that help / make sense?

1 Like

Hi ragan, thank you

I’m totally fine with the CHOP animation part, I use timer instead of timeslice as you can see in the latest .toe (I’ve uploaded again as .tox, sorry)

What I really can’t get working is the CameraBlend side:
I’ve five different cameras, each one is a specific part of the total camera path, blended as “sequenced” in the CameraBlend COMP. Can’t still get a way to really sequence the camera related to my timer, even with segments, like:

1st camera frame 0-500
2nd camera frame 0-1000
[…]

When a segment of the timer starts it switches the param Sequence on Camera Blend
CameraBlendd_Sequence.tox (5.4 KB)

I don’t think I understand what you’re trying to achieve.

Are you wanting to snap from camera position to camera position?

Are you wanting to blend between camera positions?

Are you wanting to import transformation data and then use that to drive a camera?

sorry ragan I’ll try to explain clearly by splitting in smaller problems:

Problem #1: Camera Parenting (CameraAnimation_Problem1)

A. I’m only able to see the animation on the render by using “Approach_2” (right branch)
B. I’m not able to drive the camera if the ConvertedtoTD is contained/child into a NULL which I can use to add transformation offsets.

I’d like to figure out why approach_1 doesn’t work
CameraAnimation_Problem1.tox (4.97 KB)

I see.

You’re issue is arising from the nature of parenting and hierarchy.

Placing an object inside of (nesting) a null, geo, or camera applies the same transformation as using the top bottom connectors. Transformations applied to a nested object, however, do not apply to the parent, or to top bottom connectors.

Top bottom connectors do not allow for a flow of data in / out of the object like the left right connectors do.

Notice in this example how 1 and 2 are equivalent, but not 3.
base_parenting_nesting_differeinces.tox (2.59 KB)

Hierarchy and nesting provide the same results / behave the same… in 3, however, the transformation is being applied to the object inside of the null… and that transformation does not pass through to an object connected with hierarchy (top bottom connectors).

In this example take note of a similar configuration:
base_parenting_nesting_differeinces2.tox (2.58 KB)

In 1 notice that the top bottom connectors pass transformations to the child. In 2 notice that transformations are applied to the nested null which passes the transformation to child… NOT out through the top/bottom connectors.

I don’t know if that helps or is more confusing.

every word is crystal clear,
my question is:
is there any method to make 3 works like 1 and 2 keeping this kind of “nested” hierarchy?

At the moment the only way I can keep the offset from the nested null and move the object is to use Object CHOP but it’s a total hell in case of larger projects :frowning:

Do you have any other advice or alternative method?
base_parenting_nesting_differeinces_MOD.tox (2.96 KB)

Can you use the pre-xform page for this - that would be my first go-to suggestion.

First enable pre-xform, then apply your transformation. In a larger project I’d automate this with a script - going through finding vals and applying them where appropriate.

ok

I know about pre x-transform, but that doesn’t change…
the object is steady, I would need it to move like in the previous example
base_parenting_nesting_differeinces_PREXFORM_2.tox (2.88 KB)

This does seem to do what you want, right?
base_parenting.tox (3.17 KB)