一键导入
te-show
Use when configuring show files for LXStudio-TE — .lxp JSON structure, channel setup, view definitions, and project naming conventions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when configuring show files for LXStudio-TE — .lxp JSON structure, channel setup, view definitions, and project naming conventions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when creating Java LED patterns for the Apotheneum installation — ApotheneumPattern/ApotheneumRasterPattern, cube/cylinder geometry, doors, copy/mirror utilities, layers, MIDI, optional audio, macro-knob control, and the Chromatik package build/run flow.
Use when framing or developing a new concept — five-section template (Concept / Problem / Why interesting / State of the art / Solution / Technical), supports guided Q&A, structuring a rough dump, or critiquing a draft. Includes title suggestion.
Use when implementing advanced Swift abstractions — property wrappers, interpolation and animation primitives, custom collection types, Combine-to-async bridging, async broadcast channels, and dynamicMemberLookup.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries. Use when the user asks about GitHub issues, pull requests, workflows, or wants to interact with GitHub repositories from the command line — including tasks like check CI status, create PR, list issues, or query the GitHub API.
Use when writing Metal GPU code — compute and render pipelines, buffer management, textures, IOSurface, compute dispatch, ring buffers, shaders, and frame pacing.
Use when building visionOS apps or using RealityKit — entity-component-system architecture, custom Systems, scene subscriptions, immersive spaces, hand tracking, and multi-window scenes.
| name | te-show |
| description | Use when configuring show files for LXStudio-TE — .lxp JSON structure, channel setup, view definitions, and project naming conventions. |
Show files (.lxp) define the complete runtime state of an LXStudio-TE session — patterns, channels, effects, views, and parameter values. This reference covers the file format, configuration workflow, and project conventions.
All show files live in te-app/Projects/:
te-app/Projects/
├── BootupTemplate.lxp # Default startup template
├── BM25_TE_8channel.lxp # Burning Man 2025, 8-channel
├── CoachellaMaster.lxp # Coachella show
├── MothershipTest.lxp # Mothership vehicle test
├── MShipStartupLooks.lxp # Mothership startup looks
├── DJLights.lxp # DJ lights only
├── PanelCalibration.lxp # Panel calibration utility
├── Shader3DTest.lxp # Shader 3D testing
├── Archive/ # Older show files (~30 files)
└── Grids/ # Grid resolution presets
├── 1024x1024.lxp
├── 1280x240.lxp
└── 1280x720.lxp
An .lxp file is a JSON document with this top-level structure:
{
"version": "1.0.1.TE.2-SNAPSHOT",
"timestamp": 1709000000000,
"model": { ... },
"engine": { ... },
"externals": { ... }
}
| Key | Description |
|---|---|
version | LX engine version string |
timestamp | Unix timestamp (milliseconds) of last save |
model | Vehicle model structure configuration |
engine | Pattern engine state (channels, effects, tempo) |
externals | External integrations (MIDI, OSC, DMX output) |
{
"model": {
"id": 2,
"class": "heronarts.lx.structure.LXStructure",
"internal": {
"modulationColor": 0,
"modulationControlsExpanded": true,
"modulationsExpanded": true,
"showNormalizationBounds": false
},
"parameters": {
"label": "LX",
"syncModelFile": false,
"allWhite": false,
"mute": false,
"normalizationMode": 0,
"normalizationX": 0.0,
"normalizationY": 0.0,
"normalizationZ": 0.0,
"normalizationWidth": 1.0,
"normalizationHeight": 1.0,
"normalizationDepth": 1.0
},
"children": {
"views": {
"class": "heronarts.lx.structure.view.LXViewEngine",
"views": [
{
"class": "heronarts.lx.structure.view.LXViewDefinition",
"parameters": {
"label": "Fixtures",
"enabled": true,
"selector": "912;983;9114;...",
"normalization": 2,
"priority": false
}
}
]
}
}
}
}
Views defined in te-app/resources/vehicle/views.txt are loaded at model initialization. The .lxp file can override or extend these with additional view definitions. The selector field in both uses the same syntax:
912;983;9114 (component fixture IDs)Edge, Panelfore;aft;starboard-fore;port-aft11-98,98-99,99-101The engine section contains the complete runtime state:
{
"engine": {
"channels": [
{
"label": "Channel-1",
"patterns": [
{
"class": "titanicsend.pattern.piemonte.Afterglow",
"parameters": {
"te_speed": 0.5,
"te_size": 5.0,
"te_quantity": 0.3
}
}
],
"effects": [...],
"blendMode": 0,
"fader": 1.0
}
],
"tempo": {
"bpm": 120.0,
"tap": false,
"nudgeUp": false,
"nudgeDown": false
},
"mixer": { ... },
"modulation": { ... }
}
}
Key engine sub-sections:
| Section | Description |
|---|---|
channels | Array of mixing channels, each with patterns and effects |
tempo | BPM and tap-tempo state |
mixer | Cross-fader and blend settings |
modulation | LFOs, envelopes, and parameter mappings |
audio | Audio input configuration |
output | DMX/network output settings |
The recommended starting point for a new show:
BootupTemplate.lxp from the Projects menu.lxp with the required top-level keyste-app/resources/vehicle/ filesShow files follow the pattern:
[Event][Year]_[Vehicle]_[Config].lxp
Examples:
BM25_TE_8channel.lxp — Burning Man 2025, Titanic's End, 8 channelsBM2024_Mship.lxp — Burning Man 2024, MothershipCoachellaMaster.lxp — Coachella master showEach channel in the channels array holds:
{
"label": "Channel-1",
"enabled": true,
"fader": 1.0,
"blendMode": 0,
"crossfadeGroup": 0,
"patterns": [
{
"class": "titanicsend.pattern.piemonte.Afterglow",
"parameters": {
"label": "Afterglow",
"te_speed": 0.5,
"te_size": 5.0,
"te_quantity": 0.3,
"te_wow1": 0.7,
"te_brightness": 1.0
}
}
],
"effects": [
{
"class": "heronarts.lx.effect.BlurEffect",
"parameters": {
"amount": 0.5
}
}
]
}
| Value | Mode |
|---|---|
| 0 | Normal (replace) |
| 1 | Add |
| 2 | Multiply |
| 3 | Highlight |
| 4 | Subtract |
Pattern parameters in the JSON use the path value from TEControlTag:
| JSON Key | Control | Default |
|---|---|---|
te_speed | Speed | 0.5 |
te_xpos | X Position | 0.0 |
te_ypos | Y Position | 0.0 |
te_size | Size | 1.0 |
te_quantity | Quantity | 0.5 |
te_spin | Spin | 0.0 |
te_brightness | Brightness | 1.0 |
te_wow1 | Wow1 | 0.0 |
te_wow2 | Wow2 | 0.0 |
te_wowtrigger | WowTrigger | false |
te_angle | Angle | 0.0 |
te_level | LvlReact | 0.1 |
te_freq | FreqReact | 0.1 |
te_twist | Twist | false |
Views control which fixtures a pattern renders to. Defined in views.txt and optionally overridden in .lxp.
| View | Description |
|---|---|
| Fixtures | All LED fixtures (edges + panels) |
| Edges | All edge strips only |
| Panels | All panel surfaces only |
| Panel Sections | Grouped by vehicle section (fore, aft, starboard, port) |
| Outline | Front/back silhouette edges |
| Outline DJ | Ground-level DJ area edges |
Available section selectors for Panel Sections view:
fore — Front panels (FA, FB, FSA-FSC, FPA-FPC)aft — Rear panels (AA, AB, ASA-ASC, APA-APC)starboard-fore — Right front panelsstarboard-aft — Right rear panelsport-fore — Left front panelsport-aft — Left rear panelsstarboard-fore-single — Right front, individually normalizedstarboard-aft-single — Right rear, individually normalizedport-fore-single — Left front, individually normalizedport-aft-single — Left rear, individually normalizedProjects/Archive/Projects/ directoryGrids/ contains resolution-specific test configurationsAutosave/ directory is managed automatically by LXStudioversion string matches the current LX engine versionclass field (e.g., titanicsend.pattern.piemonte.Afterglow)TEControlTag values