Scriptable Object Tables is a professional Unity editor tool designed to facilitate the management of ScriptableObject collections. It provides a streamlined, spreadsheet-like interface for viewing, creating, and modifying assets, significantly improving data management workflows for complex projects.
Managing large numbers of ScriptableObjects through the default Inspector can be inefficient. This package addresses this challenge by aggregating assets into a customizable table view, allowing for rapid iteration and comparison of data.
- Tabular Editing: View and edit multiple assets simultaneously in a grid layout.
- Type Safety: Automatically restricts entries to specific
ScriptableObjecttypes to ensure data integrity. - Integrated Workflow: Create new assets directly within the table interface without leaving the window.
- Persistent Configuration: Save table layouts and asset collections as project assets.
- Unique Identification: All assets extending
SerializedScriptableObjectautomatically receive a persistent GUID for unique identification. - GUID Lookup: Built-in functionality to find and retrieve assets by their GUID.
- Unity 2021.3 or later.
- Dependencies:
com.solidalloy.type-references(v2.15.1)
Before adding the package via Git, you must add the following scoped registries:
"scopedRegistries": [
{
"name": "package.openupm.com",
"url": "https://package.openupm.com",
"scopes": [
"com.solidalloy",
"org.nuget"
]
}
],This package can be installed directly via the Unity Package Manager using the Git URL.
- Open your Unity project.
- Navigate to Window > Package Manager.
- Click the + (plus) icon in the top-left corner.
- Select Add package from git URL....
- Enter the following URL:
https://github.com/lkwarwick/scriptable-object-tables.git#v1.0.1
- Create a Table: Right-click in the Project window and select Create > Scriptable Object Tables > Scriptable Object Table.
- Configure: Select the target
ScriptableObjecttype in the inspector. - Edit: Double-click the created asset to open the Scriptable Object Table editor window.
- Manage: Use the toolbar to add new entries or save changes to the collection.
SerializedScriptableObject is a base class that extends Unity's ScriptableObject and provides unique identification capabilities. All assets created as subclasses of SerializedScriptableObject automatically receive a persistent GUID upon creation.
- Automatic GUID Assignment: Each instance receives a unique GUID at creation time.
- Persistence: GUIDs are serialized and persist across save/load cycles.
- Read-Only Access: Access the GUID via the
GUIDproperty (read-only from code). - GUID Lookup: Find assets by their GUID using the built-in lookup functionality.
// Inherit from SerializedScriptableObject
public class MyAsset : SerializedScriptableObject
{
public string Name;
}
// Access the GUID
MyAsset asset = /* ... */;
string guid = asset.GUID; // Get the unique identifier