- March 14, 2020 at 11:14 pm
I’ve just joined this amazing community to take my skills to the next level hopefully I can find the answers here that I was not able to find on Youtube or extensive Google searching.
Today I want to figure out how to get a null to follow a point. I have found solutions that allow me to use Xpresso to snap a null to a point and use the null to have control over the point, however I don’t want to control the points will the null but instead have the null follow the point.
I’ve tried to have the null as a child of the parent object animated, but this does not achieve what I want, since i’m using Mograph effectors.
Here i’ll provide a screenshot:
As you can see I would love the null to follow the point, NOT the point follow the null.
In after effects this can be easily achieved, so far I’ve been able to achieve only the point following the null but not the opposite. My goal is to add a composite-tag and store the data of each null into after effect to re-create a faux-twisting animation.
- March 15, 2020 at 3:06 am
I don’t use After Effects but this should work as it does with other compositing software when exporting as FBX:
1. Select each point of the animated object that you wish to have a null attached to.
2. Create a point selection tag (main menu > Select > Set Selection).
3. Create a Cloner and place it AFTER the animated object in the hierarchy (needs to come after or the nulls will be a frame behind).
4. Add a null as a child of the cloner.
5. Set the Cloner’s mode to Object.
6. Drag the animated object into the “Object” field of the cloner.
7. Drag a selection tag from step 2 into the “Selection” field of that cloner.
You should now have a null attached to each of the selected points and they should follow the points when using deformers or any other animation method.
The added benefit of this method is the position and rotation are transformed not just world location.
Bake a copy or export as FBX or whatever works with your setup. If the nulls will not transfer over to the compositing app then lights usually will without issue so make a light a child and set its intensity to zero.
- March 15, 2020 at 5:09 am
Thank you for the reply,
I forgot to mention that I have tried this method:
However the problem with this method is that it doesn’t actually create separate null layers, since it’s cloning one null object – when I add a composite tag it only transfers the center null.
For what I want to work, I need to have say ‘8’ nulls and connect each one manually to the correct point.
Similarly I was able to connect Nulls to point using xpresso but the nulls controlled the points rather than follow them. Hopefully it’s clear now.
- March 15, 2020 at 2:41 pm
Like I said, I don’t use After Effects so maybe the method you are using to import the data doesn’t actually require baking and doesn’t fully support mograph instancing. In that case, the next best approach I can suggest would be to replace the Cloner setup with a Matrix object and then use xPresso to link separate nulls to the matrices. I’ve attached a scene file. Test this and let me know if it works.
The xPresso Graph would look like this:
I’ve attached the scene file. Here’s a screenshot showing it working. As you can see, Instead of a Cloner I used a Matrix object and the same method as in my first post to clone onto to each point using the selection tag. I then created a separate null object for each of the points and with xPresso, iterate through the null list and the matrices and position the nulls. (highly customized C4D layout so sorry if it’s confusing):
- March 15, 2020 at 3:20 pm
the simplest expresso way to attach a null to a vertex and have it follow is the Point Operator node. All you need is the vertex’s index which you can get from the Structure manager or just visually do it from the Point nodes point index setting. Example.
The point operator needs to have Use Deformed Points checked to follow a deformer animation and the xpresso tags need to have higher Priority the the default ‘Expression’ – Generators 0 works – to not lag a frame behind
- March 16, 2020 at 10:10 pm
Both the responses have been good and they do in fact connect the null to the points, and the nulls follow through the animation cycle.
However, I have still being unable to achieve what I had envisioned – I realize that this may also require some knowledge of After effects. So I will try to explain what I have been able to do, and perhaps that may shine some light as to how we can solve this problem.
What’s been possible
I have a Cube, and a null (Null A), I have made the null a child of the cube and animated the rotation property of the cube.
Next I have added a render tag > External Compositing Tag to the Null, because I want to have this Data when I open in After effects.
Next, I will open in After effects and you’ll notice that I was able to export the null with the rotation property baked in because of the tag.
As you can see I have the Null and the rotation data, this is a successful conversion.
What happens if we add a Mograph ==> Twist to the cube?
As you can see any point that’s affected by the twist effect will not be tracked by the Null despite it being a child. Which led me to create this post.
Technique provided in previous post:
My first reaction is that it is simple, easy to setup, and it works beautifully inside C4D, so I went ahead and added the external compositing tags.
However this is the result inside After effects:
As you can see after effects was able to transfer the null attached to the points, but it only shows them attached to the first frame, meaning the nulls are not transferring the change in position of the vertex point as a result of the displacer effect. Which defeats the purpose.
I’m thinking that if there is a way to bake the effects of the mograph inside c4d then it would transfer the data to the null point with the external composting tag?
Perhaps someone with after effect knowledge may be a able to shine a light at this puzzle?
- March 17, 2020 at 1:07 am
You CAN bake them and this is what I usually do on export to FBX or Alembic.
But you can also drag those nulls into the timeline view, then in the Timeline’s menu select: Functions > Bake Objects…
From there, I’d just select: “Bake Expressions”, “Create Copy”, “Clean Tracks”, and “All parameters” and click OK. It’ll make a copy of each null that you can then add those compositing tags to each baked copy.
- March 17, 2020 at 2:09 am
By adding this method, I was able to successfully obtain the data of the points to after effects. I simply dragged the null to timeline and used function > bake as suggested.
Thank you, looking forward to exploring more problems in this community 🙂
- March 17, 2020 at 2:30 am
Happy to help!
Don’t forget to click the button.
…and one other thing I’d like to point out about the method I presented using the matrix object: This is a reusable setup, so save it to your content browser. The setup only requires a quick point selection > create a new selection tag and then drop in the same number of nulls into the list in the xPresso setup.
With the other method, it is much simpler for a few points and one-time use but having to find the index of each point individually and then updating each node if the point order changes is not ideal.
- March 19, 2020 at 5:10 pm
Log in to reply.