![Essential Attributes [Button]](https://assetstorev1-prd-cdn.unity3d.com/key-image/151f9572-4b50-4cfe-a2d4-2683d87eb431.jpg)
Add clickable buttons to the Inspector to invoke any method — including those with parameters and return values.The [Button] attribute allows you to execute any method (even private) directly from the Unity Inspector by drawing a clean, context-aware button that adapts to the method it targets.Unlike simple solutions that only support parameterless methods, [Button] handles:Methods with parameters (editable directly in the Inspector)Return values (displayed in the Inspector)Tooltip generation from XML documentationEditor/runtime mode filteringPersistent parameter memoryMethod grouping under a unified “Methods” foldoutThis makes it a powerful productivity tool for testing, debugging, or automating workflows — without writing any custom editor code.Everything is designed to blend seamlessly with Unity's native UI.💡 Try Before You BuyThis attribute is also included in the Essential Attributes asset — or try [ElementName]and [TexturePreview] for free on the Unity Asset Store.🔘 Draws a button in the Inspector to trigger method calls🔐 Supports public and private methods・Return values (rendered in the Inspector)🧩 Compatible with methods that:・Accept parameters (displayed and editable)・Both🎛️ EnableMode enum to control availability:・Editor only・Play mode only🧠 Parameters and return values are cached between calls💬 Tooltips generated from XML documentation (summary, param, returns)・Clear return value🧷 Supports right-click actions on buttons:・Reset parameters📁 Grouped in a foldout at the bottom of the Inspector💾 Optional Persistent Data system to share parameter values across the team(Persistent data toggle, XML documentation toggle)⚙️ Configurable options under:Tools > FoxalFace > Attributes > Button⚠️ Internal UsageReflectionCustomEditor (UnityEngine.Object)OdinSerializer (Open-Source Serializer)