Note: The script iterates on the game object and all its children and modifies the first Material instance it finds. It does not modify the Material in the project, only the instance it is attached. If a game object has multiple material slots, the script only modifies the first one.