I’m working on a visualization that involves the Doppler shift, so I want the color of an object to subtly shift depending on the motion of the object: toward = bluer, away = redder. I tried using drivers to adjust the Diffuse RGB directly, but it got very messy and it was hard to fine-tune the range of colors. Instead, I would like to select RGB values from a Color Ramp. A couple of questions come to mind:
-
I know Color Ramps are usually used to control shading over a range of illumination angles or energies. Can a single RGB value from a Color Ramp be assigned to the entire Diffuse color of an object?
-
Is there a way to assign the Position on the Color Ramp using a Driver? I tried adding a Driver to the Color Ramp Input and found that the Driver only controls the Input (Result, Normal, Energy, Shader) not the Position itself. D’oh!
-
Is there a way to assign the Position on the Color Ramp using Python? I can program in Python, but this would be my first attempt to use it within Blender.
-
Is there a simpler way (perhaps Material Nodes?) to achieve this effect? I’d be happy if I could just map the object’s Diffuse from Red through White to Blue based on an Empty’s Z Rotation. I can tune the rotation to get the desired effect.
Thanks in advance!