2
$\begingroup$

I've been working a product configurator based on a CSV file that assembles something like a rack-system with different sized compartments per rack.

Somehow I figured out the complicated part for the placing the differently sized compartments based on the CSV but cannot get the amount of racks right because using the Named Attribute node does not always work and I don't understand why.

I have simplified the file to illustrate the problem.
These are the buildings blocks: the rack + left end + right end:
enter image description here

I then import a CSV file that reads the data of column "SAULEN" and adds those values as attributes to a "CSV-object":
enter image description here

I then use the Named Attribute node to build the server. The value "SAULEN" (currently 5) should move the right rack-end-object/collection to the right (this works) and the same value should duplicate the rack-object/collection (this does not work currently).

Goal:
enter image description here

Full Nodetree:
enter image description here

I am not sure why processing the value "SAULEN" via Named Attribute works for one case and not the other. In general I am not sure how I would only read specific values from the list of values of the columen "SAULEN".

The Blender File is now available: https://www.dropbox.com/s/rhacq1p9d7kw8sh/configurator_blenderstackexchange_01.blend?dl=0

Thanks for your help..

$\endgroup$
6
  • 1
    $\begingroup$ i am sorry to say, but without seeing a whole node tree (may be simplified so but the problem has to be reproducable)...we cannot tell. just e.g. how should we know when you saved the named attribute? on which branch? so sorry, i can only downvote that due to lack of information. And i think that's the reason why you didn't get any reaction in 10 hours for a GN question - which normally is answered in less than 30 mins, if the questions provides all necessary infos. $\endgroup$
    – Chris
    Apr 14, 2023 at 5:52
  • $\begingroup$ @Chris yes, the whole node tree would be too big, thats why I only shared the necessary part... I can try to explain the CSV/Data part better but not sure if I should do this here now or start a new question since you down voted the question... $\endgroup$ Apr 14, 2023 at 6:27
  • $\begingroup$ i will upvote your question, if you provide a reproducable runnable node tree (don't has to be simplified) (best would be a blend file) so we can check it out $\endgroup$
    – Chris
    Apr 14, 2023 at 6:35
  • $\begingroup$ Make sure the instances do have such named attribute. Could you please provide a screenshot of a spreadsheet editor showing the Instances domain view and the attribute showing up as a column ? $\endgroup$
    – Gorgious
    Apr 14, 2023 at 9:08
  • $\begingroup$ It looks like your custom attribute is not stored in the Instances domain. $\endgroup$
    – quellenform
    Apr 14, 2023 at 15:31

1 Answer 1

1
$\begingroup$

As already mentioned in the comments, the required value is stored in the attribute domain Points, and there only at index $0$.

To fetch this value and process it further, you would need to use the Sample Index node.

This fetches a specific attribute from a specific attribute domain from the geometry you passed.

In your case the geometry is the base object:

enter image description here

$\endgroup$
4
  • $\begingroup$ thank you for this quick and to the point solution. I also used this method now for positioning the right-rack-side and it does not need the delete geometry node now to ignore the ZERO values. However I think I still don't understand why the top node tree also worked fine (except for the need to delete geometry for all Zero values) without the SAMPLE INDEX node? (I am not the most technical guy and recently switched from Maya to Blender - not in my wildest dreams could I have accomplished this in Maya and the support here is incredible. Thanks) $\endgroup$ Apr 14, 2023 at 19:32
  • 1
    $\begingroup$ @billyhoiler You are welcome! In Geometry Nodes an input/attribute is always evaluated in relation to the active geometry (follow the green line backwards). In the top example you are using the geometry as a base that has these values stored as an attribute, but in the bottom example you are using an external geometry as a base that does not have these values available. With Sample Index you can transfer these values from one geometry to another. In previous Blender versions this node was called Transfer Attribute, which I think was easier to understand. $\endgroup$
    – quellenform
    Apr 14, 2023 at 19:54
  • $\begingroup$ @billyhoiler By the way, here is a good overview if you want to learn more about nodes and how they change over time: blender.stackexchange.com/questions/273541/cant $\endgroup$
    – quellenform
    Apr 14, 2023 at 19:55
  • $\begingroup$ so you are essentially saying that in my initial attempt the "named attribute" did not return any values at all because it did not have the CSV-object as geometry base but only the RACK-Collection which does not have any "SAULEN" values stored? currently this does not seem intuitive to me, but I´ll probably get used to it. :-) $\endgroup$ Apr 14, 2023 at 21:20

You must log in to answer this question.

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