Objects
Objects are the fundamental building blocks of a Grid Studio project.
Every system component inside a project is represented as an object. Objects can represent devices, sensors, communication protocols, spatial elements, logic systems, or utility tools.
Depending on their type, objects can receive data, process information, generate outputs, or provide control interfaces. While different object types serve different purposes, they all share a common structure and interaction model within the system.
Understanding how objects are structured and how they interact with other systems is essential when building complex projects.
Object Structure
All objects in Grid Studio follow a shared structural model. While the available functionality depends on the object type, the fundamental components of an object remain consistent across the system.
A simplified representation of an object structure looks like this:
Object
│
├ Identity
│ ├ Name
│ └ Unique ID
│
├ Entities
│ └ Structured object data
│
├ General
│ ├ User Parameters
│ ├ User Widgets
│ ├ Workflow
│ └ Modifier
│
├ Object Settings
│ └ Object-specific configuration
│
├ Coordinates (optional)
│ │
│ └ Maps (optional)
│ ├ Map Inputs
│ ├ Filters
│ └ Map Outputs
│
└ Display Settings
└ Visual representation in the interface or viewportNot every object contains all of these components. The available features depend on the specific object type.
Object Identity
Every object contains basic identifying information.
Each object has:
a Name, used for identification within the project
a Type-based Unique ID, generated automatically by the system
The object name can be changed by the user and is typically used to organize objects within the project.
The unique ID is generated sequentially per object type (for example Camera1, Camera2 or Tracker1). Unlike the name, this identifier is primarily used internally and can also be referenced in scripting, expressions, and other automation systems to programmatically access specific objects.
Entities
Every object contains an Entity structure used to store structured data.
Entities behave similarly to a value tree, allowing objects to store multiple related values that describe the object's internal state or generated data.
Entities are commonly used to store:
device status information
internal object state
values shared with other systems
Entities are hidden by default in the interface but can be displayed when needed.
Object Configuration
Objects typically contain configuration settings that control their behavior.
These settings are usually located in object-specific tabs inside the Inspector and vary depending on the object type.
In addition to object-specific settings, every object provides a General tab which can contain optional user-defined extensions.
General Tab
The General tab allows users to extend the functionality of an object without modifying the object type itself.
Depending on the project requirements, the following components can be added:
User Parameters – custom parameters created by the user
User Widgets – custom interface elements linked to the object
Workflow – event-driven logic associated with the object
Modifier – node-based data processing
These systems allow objects to participate in automation, data processing, and user interaction workflows.
Coordinates and Spatial Objects
Some objects exist within the 3D coordinate system of a project.
Objects that provide coordinates can be visualized inside the Viewport and may represent spatial elements such as cameras, trackers, fixtures, or sensors.
Objects that do not exist in the spatial environment typically do not provide coordinates.
Maps
Objects that exist in the spatial coordinate system may also provide Maps.
Maps allow objects to receive or send structured data, typically used for real-time spatial information such as tracking data or sensor output.
A typical map structure includes:
Map Inputs – incoming data streams
Filters – optional data processing
Map Outputs – generated output data
However, not every spatial object provides Maps. The availability of Maps depends on the specific object type.
Display Settings
All objects provide display settings that control how they appear within the interface.
Depending on the object type, these settings may include:
color representation in the Project Tree
visualization settings inside the Viewport
debug or helper visuals
Object Interaction
Objects rarely operate in isolation. Instead, they interact with other systems throughout the project.
Objects can:
receive and send data through Maps
generate events used by Workflows
be modified through Modifiers
be accessed through Scripting
be connected to Widgets in user interfaces
This interconnected model allows Grid Studio to combine data processing, automation, visualization, and system control within a single project environment.
Object Types
Grid Studio provides many different object types that represent different system components, including:
communication protocols
hardware devices
sensors and tracking systems
spatial objects and fixtures
logic and automation systems
calibration tools
mesh and visualization objects
procedural generators
Each object type provides functionality specific to its role within the system.
Native Objects and Extensions
Grid Studio includes a set of native objects that are available by default.
Additional objects can be installed through extensions, which can be downloaded from the Library.
This system allows Grid Studio to be extended with additional devices, protocols, sensors, and specialized tools.
Related Topics
Working with Objects – Creating and managing objects in a project
Project Tree – Navigating and organizing object hierarchies
Entities – Understanding object data structures
Object-Based Data Flow – Working with Maps and Filters
Workflow Programming – Event-driven logic systems
Last updated