Skip to content

Latest commit

 

History

History
89 lines (57 loc) · 2.38 KB

README.md

File metadata and controls

89 lines (57 loc) · 2.38 KB

Dragonblaze

Dragonblaze is a tool to use RGB led strips in your stop motion projects. It is a proxy that controls a Pixelblaze using DMX and frame position information from Dragonframe.

You can create animations in Pixelblaze. You can use lightning channels in Dragonframe which are mapped to variables on the Pixelblaze side. This lets you create animated lightning effects that look fluid when shot in stop motion:

LED example

How to use

Dragonblaze sets the brightness and some variables based on the state of Dragonframe.

Brightness

Lighthing channel 1 in Dragonframe is used to set the global Pixelblaze brightness.

Channels

Lighthing 2 and up are mapped to the channel_2 and up variables.

Position

The variable position is filled with the current frame number.

Example

Some example Pixelblaze code:

export var position = 0
export var framesPerSecond = 12
export var useStopmotionTime = false

function stopmotionTime(interval) {
  if (useStopmotionTime) {
    return mod(position / framesPerSecond / 65.536 / interval , 1)
  } else {
    return time(interval)
  }
}

export function beforeRender(delta) {
  t1 = stopmotionTime(0.1)
}

export function render(index) {
  h = t1 + index / pixelCount
  s = 1
  v = 1
  hsv(h, s, v)
}

Setup

There are some setup steps required to run this. We hope to make this easier to get done in the future.

Rust

Dragonblaze is written in Rust. Currently you need to install Rust. Checkout this project. Then run the following command in the terminal to install:

cargo build --release

Pixelblaze

Setup your Pixelblaze and fetch its IP address. You can then start dragonblaze in the terminal:

target/release/dragonblaze <ip>

It will log what it is doing and if the connection is successful.

Dragonframe

On the Dragonframe end you have to setup a script and Artnet connnection.

Script

Open Dragonframe preferences. Then go to Advanced. Check "Enable action script". In the input below put <project location>/target/release/dragonframe.

Artnet connection

Open your scene. Then open Scene > Connections. Create an "ArtNet DMX" connection and enter 127.0.0.1. Everything should now be working.