3
$\begingroup$

I am working with the geometry nodes. My node graph contains the position node. So if I am changing the position of one object in the animation, the output geometry will also change. Is there a way to keep the geometry stable with motion? For example, can I capture the attributes in the first frame and then share the attributes in the later frames?

$\endgroup$
2
  • $\begingroup$ Hello, could you add the Blender version number you're using ? Also a screenshot of your node setup and 3D viewport would be nice $\endgroup$
    – Gorgious
    Commented May 20, 2022 at 5:59
  • $\begingroup$ Frames in Blender are calculated independently. All exceptions from that fall into the category named simulation. $\endgroup$ Commented May 6, 2023 at 15:10

2 Answers 2

1
$\begingroup$

In Geometry Nodes there is no way to process data that was generated in another frame outside of Geometry Nodes.

So you can't query at which position a cube was in another frame if you animated it before.

There would be a way to calculate the position in Geometry Nodes if the animation was 100% linear or traceable.

I don't assume that this is the case.

The only other option you have is to generate frame-based information, do the animation with Geometry Nodes, and calculate that information in the same node tree for another object.

$\endgroup$
1
$\begingroup$

For example, can I capture the attributes in the first frame and then share the attributes in the later frames?

You can "bind" attributes by applying geometry nodes modifiers:

enter image description here

When I apply this modifier, it writes the position of the model to an attribute named posBack. I can still use this attribute in future geometry nodes modifiers. Here, I'm casting Suzanne to a full sphere, then mostly restoring her position to that "bound" position posBack:

enter image description here

So, yes, you can capture an attribute on the first frame, by applying a geometry modifier that writes that attribute, doing so on the first frame; and yes, you can still use that attribute on future frames. Just be careful to name it appropriately, so that you know that it's the "bound" attribute (here, backed up position) and not the working attribute (here, current position.)

One warning: you cannot apply GN modifiers on meshes with shapekeys.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .