Skip to content

Models

The Models segment defines the fixture models embedded in a show. A model describes the fixture's identity, channel layout, capabilities, physical metadata, macros, and optional built-in palette entries. Patches refer to these definitions through model_id.

Model fields

Field Type Meaning Notes
model_id Integer Identifier for each fixture model used in the show. Unique value
palette Array of maps Pre-generated palette presets, provided by the model See Model palette for details.
name String Full model name.
short_name String Abbreviated name used where display space is limited.
default_inverted_pan Boolean Default pan-inversion setting for patches created from this model. This is a model default; a patch can also store its own inversion state.
brand String Fixture manufacturer or brand.
hardware Map Physical fixture specifications. Values are stored as strings rather than numeric measurements.
macros Map or collection Fixture macros and their timed channel-value steps. See Macros.
use_virtual_dimmer Boolean Whether LightShark should synthesize a dimmer for a model without a dedicated dimmer channel. Mostly relevant to fixtures that have colour
default_inverted_tilt Boolean Default tilt-inversion setting for patches created from this model.
values Array of maps DMX channels or controllable parameters for the model, and their details See Model values.
mode_name String Name of the fixture operating mode, such as a channel-count label.
virtual_dimmer_channels Array of integers Indexes of channels affected by the virtual dimmer. Example: For an RGBA fixture, there will be 4 colour channels
size Integer Unknown purpose Takes the value x01

Model palette

A model palette describes a preset supplied by the fixture definition. It is separate from a user's show palettes.

Field Type Meaning Notes
color String or empty value Colour used for the preset's icon. When present, it is formatted as a colour string such as #ff0000.
icon String Path reference to the image used for the preset's icon.
values Nested array Channel values applied by the preset. Each channel is stored as an array in the form of x92 xCD (ftype) xC? (value)
name String Display name of the preset.
type_id String Category name of the palette Observed categories include GENERAL and COLOR.

Hardware

Field Type Meaning Notes
width String Fixture width. Units and formatting depend on the model data.
depth String Fixture depth.
max_power String Maximum power consumption.
weight String Fixture weight.
height String Fixture height.

There is little known information regarding the hardware fixmap.

Macros

Macros describe named fixture actions as one or more timed value changes.

Field Type Meaning Notes
[macro_name] Map key Lookup key for a macro entry. The macro name also appears in the entry's name field.
steps Array of maps Ordered actions performed by the macro. Each step can contain a wait time and one or more channel values.
ms_wait Integer Delay, in milliseconds, associated with a macro step.
values Collection Channel or parameter values applied by the step. The exact value-map schema still needs confirmation.
name String Display name of the macro.

There is little known information regarding the potential steps and values in macros.

Model values

Each entry in values describes one channel or controllable parameter in the fixture mode.

Field Type Meaning Notes
index Integer Position of the parameter in the model's channel layout. Appears to be one-based.
inverse Boolean Whether the parameter's output range is inverted.
instant Boolean, optional Whether changes should be applied without fading. This field is absent from some entries.
description String Human-readable parameter description.
ftype Integer LightShark function-type identifier. Known values distinguish intensity and individual colour components.
steps Collection Named ranges or behaviors within the parameter's DMX range. Some entries contain an empty or null form; the complete variant schema is unresolved.
each step Map One named range or behavior in steps. Observed step properties can be numeric values or strings.
htp Boolean Whether the parameter uses highest-takes-precedence behavior. Typically enabled for intensity-like parameters.
size Integer Number of DMX slots used by the parameter. Observed single-slot parameters use 1.