Organizing Properties
UNIGINE properties are organized in a hierarchy and managed via the Properties Hierarchy window.
The Properties Hierarchy window provides access to all properties of the project and allows filtering them by names, collapsing properties hierarchy (i.e., showing only base properties and hiding user ones), inheriting, cloning, reparenting, renaming, and deleting properties.
All properties in the hierarchy are linked to .prop files stored in your project's folder and available via the Asset Browser.
To open the Properties Hierarchy window, choose Windows -> Toggle Property Hierarchy in the Menu Bar.
Creating a Property
A property can be created via UnigineEditor in one of the following ways:
- By inheriting or cloning the existing property via the Properties Hierarchy window.
- By creating or importing a property via the Asset Browser.
The new property is automatically added to the properties hierarchy and displayed in the Properties Hierarchy window. The asset, to which the new property links, is also created and becomes available via the Asset Browser.
Basic Operations on a Property
The Properties Hierarchy window allows the following basic operations on a property.
Renaming a Property
To rename a property, right-click it and choose Rename in the drop-down list.
You can also rename a property asset via the Asset Browser: the property that links to it will be renamed as well.
Cloning a Property
To clone a property, right-click it and choose Clone in the drop-down list.
Another way to clone a property is to select it and click to the left of the property name filter.
If you copy a property asset via the Asset Browser, the property that links to it will be cloned.
Deleting a Property
To delete a property, right-click it, choose Delete in the drop-down list and confirm deletion in the dialog window that opens:
Another way to delete a property is to select it and click to the left of the property name filter. If you delete a parent property, all its children will be deleted as well.
If you delete a property file via the Asset Browser, the property that links to it will also be deleted from the hierarchy.
Inheriting a Property
Inheriting one property from another allows forming the properties hierarchy. To inherit a new property from the existing one, right-click the desired parent property and choose Inherit in the drop-down list.
Another way to inherit a property is to select it and click to the left of the property name filter.
Inheriting via Asset Browser
To inherit a property via the Asset Browser, select the property asset, right-click it and choose Inherit in the drop-down list. The new property will be added to the Properties Hierarchy window and linked to the created asset.
Assigning a Property
A property can be assigned both to the whole node and the single surface. For example:
- A property assigned to the node can specify additional settings that extend the built-in ones. You can assign multiple properties to a single node.
- A property assigned to the surface can specify settings that can be used during physical interaction with the surface. Only one property can be assigned to a surface.
It is recommended to inherit properties that will be assigned to nodes from the node_base property. However, you can also assign any custom base property or its children to a node.
To assign a property, select the node, select the target surface or multiple surfaces (if required) and perform one of the following:
- Drag the property from the Properties Hierarchy window or the icon of the property asset from the Asset Browser to the Node Property or Surface Property field in the Parameters window.
- Drag the property from the Properties Hierarchy window or the icon of the property asset from the Asset Browser to the target node or surface in the Scene Viewport.
- Use the button next to the field with the property asset name in the Parameters window to choose the desired property asset.
- Type the name of the property asset to the field with the property asset name in the Parameters window manually. If an asset with the specified name exists in the project, it will be shown in the drop-down list while typing.