2 Answers
The concept of instancing is that you set a same object (object data) to different places. Sure, you can have different position rotation and scale, but the object will be the same. It is just how instances work. Imagine that you have several linked object created by Alt+D. They are edited at once, you cannot set a different mesh/curve/etc. data to them.
So in order to get different objects, you need to convert them into separate objects. This is exactly that Realize Instances node do.
After that, you can actually manipulate with data inside these objects. It may be a bit complicated.
To move spine position, you can use Set Position node, but you should enter different offset depending on spine ID and point ID. Spine ID you can easily get using ID node. But how to get point ID? To get it, I used Capture Attribute - which can grab a point ID before instancing, so that you will have 0 for the first vertex and 1 for the second. Using these 2 IDs, you can change the position of the second vertex in each spline:
-
1$\begingroup$ Thank you. It works, but I don't understand why. Two nodes ID look the same and have different data input, it is annoying. Where can I find a good explanation (written, not Youtube) of data flow in GN 3.0? $\endgroup$fomaamof– fomaamof2021-12-12 15:33:03 +00:00Commented Dec 12, 2021 at 15:33
-
1$\begingroup$ @fomaamof I think this video has a pretty good explanation, even it is YouTube: youtube.com/watch?v=2qWnRRkV9Zk $\endgroup$Crantisz– Crantisz2021-12-12 19:23:29 +00:00Commented Dec 12, 2021 at 19:23
Edit: The important thing is to realize your instances.
here is my previous answer-
"Generating variations in the instances with Capture Attribute
In order to pass a value through the node tree, you need to use a CaptureAttribute node. It can capture a value based on your curve's position or other attributes.
Then, you can begin to change values in other nodes based on the values of captured attributes."
Revised Pictures after comments:
-
$\begingroup$ You don't use Capture Attribute at all in your node tree $\endgroup$Crantisz– Crantisz2021-12-11 00:07:52 +00:00Commented Dec 11, 2021 at 0:07
-
1$\begingroup$ It is in the node tree connected to a position node. $\endgroup$common_goldfish– common_goldfish2021-12-11 03:09:02 +00:00Commented Dec 11, 2021 at 3:09
-
$\begingroup$ @Crantisz, I have upvoted your answer, and edited mine a little. It was the right idea but my example is better now. $\endgroup$common_goldfish– common_goldfish2021-12-12 07:31:18 +00:00Commented Dec 12, 2021 at 7:31
-
$\begingroup$ I see, but you just input rotation and scale, the object itself remains the same $\endgroup$Crantisz– Crantisz2021-12-12 09:49:01 +00:00Commented Dec 12, 2021 at 9:49
-
$\begingroup$ Yes, in order to make a more decent variation, I would have to affect a second object with the captured attribute. $\endgroup$common_goldfish– common_goldfish2021-12-12 15:02:25 +00:00Commented Dec 12, 2021 at 15:02



