add dmx color
This commit is contained in:
parent
2283f339df
commit
60284de817
9 changed files with 146 additions and 11 deletions
|
|
@ -14,3 +14,8 @@ config/name="ArtNetTest"
|
|||
run/main_scene="res://scenes/main.tscn"
|
||||
config/features=PackedStringArray("4.3", "Forward Plus")
|
||||
config/icon="res://icon.svg"
|
||||
|
||||
[display]
|
||||
|
||||
window/size/viewport_width=1280
|
||||
window/size/viewport_height=720
|
||||
|
|
|
|||
|
|
@ -1,10 +1,24 @@
|
|||
[gd_scene load_steps=2 format=3 uid="uid://dafh3tlcmos4p"]
|
||||
[gd_scene load_steps=5 format=3 uid="uid://dafh3tlcmos4p"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/artnet.gd" id="1_hsiae"]
|
||||
[ext_resource type="Texture2D" uid="uid://buuvoh3jf0f52" path="res://sprites/cross.png" id="2_vgkya"]
|
||||
[ext_resource type="Texture2D" uid="uid://glyt8h1eag1u" path="res://sprites/pixel.png" id="3_qvw8c"]
|
||||
[ext_resource type="Script" path="res://scripts/dmx_color.gd" id="4_velje"]
|
||||
|
||||
[node name="Node2D" type="Node2D"]
|
||||
|
||||
[node name="ArtNet" type="Node" parent="."]
|
||||
script = ExtResource("1_hsiae")
|
||||
master = 255
|
||||
red = 130
|
||||
ip_destination = "192.168.21.27"
|
||||
update_frequency = 40
|
||||
|
||||
[node name="Point" type="Sprite2D" parent="."]
|
||||
texture = ExtResource("2_vgkya")
|
||||
|
||||
[node name="ColorRect" type="Sprite2D" parent="." node_paths=PackedStringArray("artnet")]
|
||||
modulate = Color(0.247454, 0.529825, 0.607936, 1)
|
||||
position = Vector2(162.125, 549.375)
|
||||
scale = Vector2(283.75, 328.75)
|
||||
texture = ExtResource("3_qvw8c")
|
||||
script = ExtResource("4_velje")
|
||||
artnet = NodePath("../ArtNet")
|
||||
|
|
|
|||
|
|
@ -1,13 +1,8 @@
|
|||
extends Node2D
|
||||
extends Node
|
||||
|
||||
#nc -ul 2115
|
||||
var socket = PacketPeerUDP.new()
|
||||
var data = []
|
||||
var data = [] #holds dmx channel values. DMX channel 1 is array index 0
|
||||
|
||||
@export_range(0,255,1) var master = 0
|
||||
@export_range(0,255,1) var red = 0
|
||||
@export_range(0,255,1) var green = 0
|
||||
@export_range(0,255,1) var blue = 0
|
||||
|
||||
@export var ip_destination = "127.0.0.1"
|
||||
@export_range(1,100,1) var update_frequency=10
|
||||
|
|
@ -26,11 +21,12 @@ func _process(delta: float) -> void:
|
|||
|
||||
if last_update_delta>1.0/update_frequency:
|
||||
last_update_delta=0
|
||||
|
||||
'''
|
||||
setDMXChannel(1,master) #master dimmer
|
||||
setDMXChannel(3,red) #red
|
||||
setDMXChannel(4,green) #green
|
||||
setDMXChannel(5,blue) #blue
|
||||
'''
|
||||
sendDMX(data)
|
||||
|
||||
func setDMXChannel(ch,val,twobytes:bool=false):
|
||||
|
|
|
|||
34
scripts/dmx_color.gd
Normal file
34
scripts/dmx_color.gd
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
extends Node2D
|
||||
|
||||
@export var artnet:Node
|
||||
|
||||
@export_range(0,255,1) var master = 255
|
||||
@export_range(0,1,0.01) var q = 1.0
|
||||
|
||||
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
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
var r=modulate.r
|
||||
var g=modulate.g
|
||||
var b=modulate.b
|
||||
|
||||
#TODO, color mix
|
||||
|
||||
artnet.setDMXChannel(1,master) #master dimmer
|
||||
artnet.setDMXChannel(2,0) #strobo
|
||||
artnet.setDMXChannel(8,0) #macros
|
||||
|
||||
artnet.setDMXChannel(3,modulate.r*255) #red
|
||||
artnet.setDMXChannel(4,modulate.g*255) #green
|
||||
artnet.setDMXChannel(5,modulate.b*255) #blue
|
||||
artnet.setDMXChannel(6,modulate.b*255) #white
|
||||
artnet.setDMXChannel(7,modulate.b*255) #amber
|
||||
|
||||
|
||||
18
scripts/dmx_movinghead.gd
Normal file
18
scripts/dmx_movinghead.gd
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
extends Node2D
|
||||
|
||||
@export var artnet:Node
|
||||
@export_range(0,255,1) var master = 0
|
||||
@export_range(0,255,1) var red = 0
|
||||
@export_range(0,255,1) var green = 0
|
||||
@export_range(0,255,1) var blue = 0
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta: float) -> void:
|
||||
artnet.setDMXChannel(1,master) #master dimmer
|
||||
artnet.setDMXChannel(3,red) #red
|
||||
artnet.setDMXChannel(4,green) #green
|
||||
artnet.setDMXChannel(5,blue) #blue
|
||||
BIN
sprites/cross.png
Normal file
BIN
sprites/cross.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 666 B |
34
sprites/cross.png.import
Normal file
34
sprites/cross.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://buuvoh3jf0f52"
|
||||
path="res://.godot/imported/cross.png-7a350973591712bd0fedf6344eb40f07.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://sprites/cross.png"
|
||||
dest_files=["res://.godot/imported/cross.png-7a350973591712bd0fedf6344eb40f07.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
sprites/pixel.png
Normal file
BIN
sprites/pixel.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 546 B |
34
sprites/pixel.png.import
Normal file
34
sprites/pixel.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://glyt8h1eag1u"
|
||||
path="res://.godot/imported/pixel.png-9ba42fb3acbac2c3926b19b63c3183c6.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://sprites/pixel.png"
|
||||
dest_files=["res://.godot/imported/pixel.png-9ba42fb3acbac2c3926b19b63c3183c6.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
Loading…
Add table
Add a link
Reference in a new issue