
- In the shader I use AiUserDataColor to get any data I want from the instances. This data can come from the point cloud as shown here - but can also come from user data on the instanced geometry.
- This shader is applied to the sphere that we're instancing. The "assign material" just removes materials from the grid I'm using as my point cloud.
- In the graph I am taking the positions of the points and rescaling them to a zero-one range. You can modify these values in the graph with random data or anything else.
Here is something slightly closer to the car example, this time I generate random values per point, generate the color gradients as before, and mix them together. That's the attached zip you'll find both these scene files.

In the case of the Jaguar, this is instanced using render archive instancing but the process is the same. I have a lookdev scene that looks like this:

That shader reads point_color to set car paint color, and if that data is not available uses the yellow color. I export the car as an Arnold .ass render archive (Arnold: Export Standin).

Then I instance that using render_archive_instance with a cube preview, and set colors. The shader inside the render archive picks them up.
Jonah Friedman
Bifrost Product Manager