← All ideas
  • Published 17 Feb 2026

An equivilent of the Index Switch Node for shader nodes.

As we know, the Shader nodes now have the menu switch that was introduced in Geometry Nodes a few iterations back.

However, there are instances in which it is the index switch that is more useful for users than the menu switch. Of immediate note, neither custom properties nor geometry nodes can export control of the menu node outside of the shader node tree via the Attribute node (thus allowing different object with the same material to use different options from the menu).

Now obviously the Index node itself cannot be transferred over as it is dependent on the Interger data type, which Shader nodes does not currently employ.

I would propose a variation on the mix node, perhaps offering all data types instead of one for colour-math-vector and one for the shaders with the possibility for additional sockets below the initial 2. Like the index and Menu switches it would have an open node at the bottom to add additional inputs into the mix, and with each extra input the mix factor would increase by 1.

For how it would work, consider the colour ramp when you start adding extra flags to it; the factor will mix between one flag and the next until the factor passes through it at which point it would begin mixing between the flag it just passed and it's next neighbour. This hypothetical floating mix node would do the same, except instead of a decimel, each flag would be denoted by a whole number.

Outside of allowing integration with custom properties or Geometry nodes, this upgraded mix node would offer at least a partial workaround many people have with integrating the above mentioned, Colour ramps with more than 2 flags to a group node where you wish to use custom colours, albeit with a map range to remap the colour ramps 0-1 range to the extendend Mix node's factor.

100%

Development Status: Open

Upvote 7 Downvote 0
agent_53
17 Feb 2026

2 Comments

AgentA1cr

An extension of the mix node that can interpolate between a sequence of more than two values would be quite useful in geometry nodes as well.

1
agent_53 Author

Based on a quick experiment I have just pulled we can rig it up like we're asking in Geometry Nodes Already by setting up two identical Index Switches, controlled by a float value, putting an add node between the value and one of the switches, using the same float to control a mix node with a floored modulo of 1 in between. The way it ends up when you reach a whole number the top input will suddenly switch to what you were mixing into, the bottom input will become the next option on the index switch, and the factor will be back to 0. If you put a floored modulo set to the number of options you want, you can even cycle endlessly.

Presumably the Index Switch I've heard is coming to Shader Nodes in 5.3 will allow it to work in Shader nodes as well.