“Copy To selected” How do i copy only the material diffuse colour?

How do I copy from one object to other selected object only the "diffuse colour"?

Or any other material property to other multiple selected objects materials?

Why "Copy To selected" is greyed out in right click menu?

Copy diffuse colour from B to all objects in the column A

Note 1: i know to the manual or long process of hovering over th colour and copying it "Ctr+C". And then select target object go to material and hover on colour and paste "Ctrl+V"

Note 2: I don't intend to copy complete or all material properties

• possible duplicate of Can I delete all materials of all objects in a scene quickly?. Not exactly the same question, but in the same way. – Leon Cheung Feb 9 '15 at 4:20
• @LeonCheung no this is not the same pls check the note 2 which clearly says it's not about copying complete material but just one property of it. – ashwin Feb 9 '15 at 4:25
• You are right. sorry about that. – Leon Cheung Feb 9 '15 at 4:29
• @LeonCheung thanks. Can you remove duplicate question "label " for this question please. – ashwin Feb 9 '15 at 5:03
• Done. :) I believe this can be done by a script with a few lines, maybe you need to add a new tag "python" to draw more attentions. I think why it isn't currently supported because it needs to know the target slots, even only one slot for each objects, and materials got 4 types: Surface, Wire, Volume, Halo, which is also an extra condition. – Leon Cheung Feb 9 '15 at 6:28

2 Answers

I think a small python script is the only way. This script only works for Blender Render.

import bpy

active_obj = bpy.context.object
active_obj_material = active_obj.active_material

for obj in bpy.context.selected_objects:
if obj != active_obj:
obj.active_material.diffuse_color = active_obj_material.diffuse_color


I use active_material so that objects with more than one material will use the material that is selected in the list, rather than forcing slot1 to always be used.

There is a possible work around with the node editor if you wanna avoid python. You can 'ctrl c' a color node from object 1, select object 2 and then 'ctrl v' to drop it into object 2's material node editor:

1.

2.

3.