NaughtyAttributes is an extension for the Unity Inspector that expands the built-in attribute system to enable creation of powerful inspectors without writing custom editors or property drawers.
The tool solves the problem of limited inspector customization in Unity by providing a collection of attributes that can be applied to serialized fields, non-serialized fields, and methods. Most attributes are implemented using Unity's CustomPropertyDrawer system, making them compatible with custom editors. The extension includes drawer attributes that provide special visualization and interaction options, meta attributes for conditional display, and special attributes like Button that allow methods to be invoked directly from the inspector. For full compatibility of all attributes within custom editors, developers can inherit from NaughtyInspector and use the NaughtyEditorGUI.PropertyField_Layout function.
The tool suits game developers working with Unity who want to streamline inspector workflows without building custom editor code. It works with serialized fields through standard property drawers, and also handles non-serialized fields and methods through dedicated attributes. Developers should choose this tool if they need quick inspector enhancements like dropdown selectors, curve range controls, animator parameter selection, or clickable buttons in the inspector without the overhead of writing custom property drawers.
The project maintains active development with regular updates and bug fixes. The codebase shows consistent refinement of existing features and expansion of the attribute library. Documentation is comprehensive and maintained separately, indicating sustained investment in user experience. The tool is distributed through multiple channels including the official package registry and asset store, reflecting established community adoption and ongoing support infrastructure.