using System; using UnityEngine; [RequireComponent(typeof(SkinnedMeshRenderer))] public class PlayerColor : MonoBehaviour { private SkinnedMeshRenderer _renderer; private Material _materialInstance; private Color _currentColor; public Color color; private void Start() { _renderer = GetComponent(); _materialInstance = new Material(_renderer.material); _renderer.material = _materialInstance; } private void Update() { SetColor(color); } public void SetColor(Color newColor) { if (newColor == _currentColor) return; _currentColor = newColor; if (_materialInstance != null) { _materialInstance.SetColor("_Color", newColor); } } }