This should work - provided that the sphere has a collider, isn’t hidden by another collider and isn’t in the IgnoreRaycast layer. You should also make sure that the script is attached to the sphere (not to a child or parent), and that the shader doesn’t ignore the material.color parameter. There’s also an extra “}” in your code, but I suppose that it’s a typo in the question. NOTE: OnMouseDown isn’t emulated by touches - only a mouse or similar pointing device generates this event.