Instance attributes can be used to vary shading across different instances

It works with both Packed Primitive Instancing and Object Level Instancing
There are a few different methods:
To set it up you need to 3 things:



Here the attribute is added before the copytopoints node on the pointcloud, but this can also be done after copying the packed geo to points. The important thing is that the attribute is on the points, not the primitives.
Add the attribute in the Octane Object Parms Attributes Panel under Instance attributes and point it at the instance color node.

If your curious the way instance color attributes work is that octane writes the attribute values to a texture that’s handed to the GPU, where each pixel value corresponds to an instance. So for example the color value of the first instance (instance point 0) is written to the first pixel in the texture and so, the second instance’s value in the second pixel and so on. Then when rendering octane looks up the value for each instance by looking at the corresponding pixel according to the instance ID.