Geo Node Instanced Objects Cannot Both Have Materials

I followed this tutorial series to create a rigged wing with geo nodes. The setup is beyond my expertise, and I’ve encountered an issue. I have two different feathers with two different materials, but only one feather when instanced in the setup is actually visible with it’s material while the other feather’s material is turned invisible. I assume this has something to do with the attributes, but there are so many I don’t know where to start. I even added Set Material in all four node setups but that just flipped which feather is visible and which is not. I’m including the blend as the deeper geo node setup is too complex for me to get a good screen grab of.



Blend File

1 Like

Hello there!
It has to do with your UV maps (which are, yes, attributes :slight_smile: ).

You have two maps: FeatherMap and SmallFeatherMap.
Right now feather materials refer to Texture Coordinate > UV, which means it picks whichever map is set to Active (represented with “camera” icon in UV Maps) from the list.
The “small feathers” are basically unwrapped in FeatherMap, and vice versa, meaning the “map” is a tiny point in the corner of the map (where the texture happens to be invisible).

  • Either rename the maps to have the same name (which is probably a preferable solution, if you don’t actually use two different maps in the same material).
  • OR specify maps in Shader Editor with Input > UV map node.
3 Likes