How to sync material change at runtime - unet ?

Hi I’m trying to sync a material change among players(clients) without any succes so far, the player’s material have to change as soon as the player is spawned. Here my code:

public class playerMaterialSync : NetworkBehaviour {

	private Material syncMaterial;

	void Start () {

			StartCoroutine (CoolDown (2.0f));

	void ChangeMaterial(){
		if (!isLocalPlayer) {

	void CmdSendMaterialToServer(Material mat){
		syncMaterial = mat;

	void TransmitMaterial(){
		if (isLocalPlayer) {
	IEnumerator CoolDown(float waitTime){
		yield return new WaitForSeconds (waitTime);
		TransmitMaterial ();
		ChangeMaterial ();


You cannot put a SyncVar on a unity asset such as a Material. It needs to be supported type. See the list at: