Unity Custom Editor for DebugManager enhances Inspector with a user-friendly interface, enabling dynamic debug panel configuration with variable selection, and collision interaction.DebugManager -> PanelsDynamic Canvas Setup: Automatically generates a Canvas object if one doesn't already exist, using a specified name. Additionally, it establishes a debug folder as a child of the Canvas.Dynamic Panel Setup: Generates debug panels dynamically, each with associated text. This feature allows for the customization of visual properties such as color and text content.Dynamic Panel Updates: Ensures continuous updates of the panels based on the variables associated with scripts, facilitating real-time debugging.Differentiated Variable Handling: Provides specialized handling for various data types including boolean, integer, float, string, and transform variables. The panel color updates dynamically based on the values of these variables, aiding in quick visualization of data states.DebugManager -> GizmoDynamic Gizmo Setup: Allows users to create a customizable Gizmo based on their preferences, with options including lines, boxes, or spheres.Gizmo Options: Offers a wide range of customization options including length, transform, and style, enabling users to tailor the Gizmo to their specific requirements.Gizmo Collisions: Incorporates collision interaction into the Gizmo functionality. Users can define a collider name along with corresponding colors for true and false collision states, enhancing debugging capabilities.DebugEditor.csThis script is a Custom Editor for Unity, designed to facilitate the configuration of DebugManager in the Unity Editor, specifically for the dynamic creation and customization of debug panels. Some highlights include:Custom Interface:Adds a custom interface to the Unity Inspector for DebugManager.Allows configuring parameters such as UI folder name, panel dimensions, colors, etc.Dynamic Panels:Enables dynamic addition and removal of debug panels.Configuration of individual properties for each panel, such as name, dimensions, color, text, etc.Variable Selection:Allows developers to choose variables from associated scripts to be displayed on the panels.Supports different variable types such as integers, floats, and booleans.DebugManagerSelection.csThis script, marked as InitializeOnLoad, is used to automate the selection of the DebugManager object when the game is started. Highlights include:Automatic Selection in Play Mode:Automatically selects the DebugManager object when the game enters play mode in the Unity Editor.DebugManager.csThis is the main MonoBehaviour script that manages the dynamic creation of debug panels during gameplay. Key features include:Dynamic Canvas Setup:Dynamically creates a Canvas object if it doesn't exist, using a specified name.Creates a debug folder child of the Canvas.Dynamic Panel Setup:Dynamically creates debug panels with associated text.Configuration of visual properties of panels, such as color, text, etc.Dynamic Panel Updates:Continuously updates the panels based on the associated variables in the scripts.Differentiated Variable Handling:Specific handling for boolean, integer, and float variables, updating the panel color based on values.DemoScript.csThis is a demonstration script containing count variables (intCounter and floatCounter). These variables are used to demonstrate how debug panels can be dynamically updated during gameplay.These scripts are intended to provide a flexible framework for creating and managing debug panels in Unity, making it easier to visualize and monitor important variables during game development and testing.