42 lines
1 KiB
GDScript
42 lines
1 KiB
GDScript
extends Node2D
|
|
|
|
@export var artnet:Node
|
|
|
|
@export_range(0,255,1) var master = 255
|
|
@export_range(0,1,0.01) var q = 1.0
|
|
|
|
@export_range(1,512,1) var channel_offset=1
|
|
|
|
var colormix=[
|
|
[1.0,0,0], #red
|
|
[0,1.0,0], #green
|
|
[0,0,1.0], #blue
|
|
[1.0,1.0,1.0], #white
|
|
[1.0,0.8,0], #amber
|
|
]
|
|
var colorchannels=[3,4,5,6,7] #same order as colormix
|
|
var values=[]
|
|
|
|
func _ready() -> void:
|
|
values.resize(colorchannels.size())
|
|
|
|
|
|
func _process(delta: float) -> void:
|
|
var rgb=[modulate.r,modulate.g,modulate.b]
|
|
|
|
#TODO, color mix
|
|
values.fill(0.0)
|
|
|
|
|
|
|
|
artnet.setDMXChannel(channel_offset-1+1,master) #master dimmer
|
|
artnet.setDMXChannel(channel_offset-1+2,0) #strobo
|
|
artnet.setDMXChannel(channel_offset-1+8,0) #macros
|
|
|
|
artnet.setDMXChannel(channel_offset-1+3,modulate.r*255) #red
|
|
artnet.setDMXChannel(channel_offset-1+4,modulate.g*255) #green
|
|
artnet.setDMXChannel(channel_offset-1+5,modulate.b*255) #blue
|
|
artnet.setDMXChannel(channel_offset-1+6,modulate.b*255) #white
|
|
artnet.setDMXChannel(channel_offset-1+7,modulate.b*255) #amber
|
|
|
|
|