During the update of the binding, errors might occur where binding objects try to access invalid properties, encounter null values along a property path, or encounter missing type converters. If you set the binding system to log all errors to the Console, it can impact performance.
To control the console output, you can define logging levels for the binding system. The following are the available logging levels:
You can set logging levels from the More (⋮) menu in a Unity Editor window that supports data binding, such as UI Builder, SceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary view, Game view, and the PanelSettings’s InspectorA Unity window that displays information about the currently selected GameObject, asset or project settings, allowing you to inspect and edit the values. More info
See in Glossary windows.
To set logging levels:
Note::
You can set the global and per-panel configurations to customize logging behavior in C# scriptsA piece of code that allows you to create your own Components, trigger game events, modify Component properties over time and respond to user input in any way you like. More info
See in Glossary.
The following example sets the global log level of all panels or windows.
Binding.SetGlobalLogLevel(BindingLogLevel.Once);
The following example sets the log level per panel:
Binding.SetPanelLogLevel(myElement.panel, BindingLogLevel.None);
Note: The per-panel or the per-window logging level settings override the global logging level settings.
When debugging binding issues, verify that Unity’s property system can access your object’s properties. The binding system relies on Unity.Properties to detect and access bindable properties. If properties aren’t properly exposed or serialized, bindings might fail silently.