using UnityEngine; public class Highlighter : MonoBehaviour { public Renderer targetRenderer; public Color highlightColor = Color.yellow; public float outlineWidth = 0.1f; // Make this bigger for a thicker outline private MaterialPropertyBlock propBlock; private Color originalColor; private float originalOutlineWidth; void Awake() { if (targetRenderer == null) targetRenderer = GetComponent(); propBlock = new MaterialPropertyBlock(); if (targetRenderer != null) { targetRenderer.GetPropertyBlock(propBlock); originalColor = propBlock.GetColor("_OutlineColor"); originalOutlineWidth = propBlock.GetFloat("_OutlineWidth"); } } public void Highlight(bool on) { if (targetRenderer == null) return; targetRenderer.GetPropertyBlock(propBlock); propBlock.SetColor("_OutlineColor", on ? highlightColor : originalColor); propBlock.SetFloat("_OutlineWidth", on ? outlineWidth : originalOutlineWidth); targetRenderer.SetPropertyBlock(propBlock); } }