So, weiter gehts. Wie schon versprochen mal wieder ein etwas grösseres Update, ich versuch mich trotzdem kurz zu fassen
Die Version 0.95 (nein ihr habt nichts verpasst 0.93 und 0.94 hab ich gar nicht erst released) häng ich wie immer am ersten Post hier an.
Bugfixes und Anpassungen:
-nach dem Beenden des Showmode gab es manchmal Grafikfehler im Szenenfenster
-für die Position des Szenenfensters werden nun beim Docking die richtigen Werte genommen und alle Windows Styles inkl. Aero berücksichtigt (Rahmenbreite)
-Kleines Memleak beim Beenden behoben, ein Buffer wurde nicht richtig freigegeben
-Pixelstep wird bei Dancing Lines und Spotlights (Simple Line) nicht mehr berücksichtigt, diese Effekte werden winkelbasiert berechnet und sind in der Geschwindigkeit nicht pixelbasiert
-SineWave bei Scrolling Text ignorierte den Pixelstep, somit hatten wir bei Pixelstep=2 eine stehende Welle
-Autocolor nun auch bei Strobe und Scrolling Text implementiert
-Dock Menüeinträge (Szenenfenster,...) sind vom Setup ins View Menü umgezogen
-kleine Fehlerbehebung beim Dateien laden, bessere .jnx Versionkontrolle für neue Dateiversionen
-Masterstrobe Button muss nun nicht mehr gehalten werden, sondern rastet ein
-Showmodebuttons sind nun ebenfalls einrastend, somit wird die aktuell gewählte Szene besser erkannt
-Buttonabstände im Hauptfenster grafisch angepasst
-komplette Überarbeitung aller Dialoge/Fenster (Matrixsetup, Output, Patch, Remote, Scene, Effectconfig, ...)
-Artnetpoll für Output Devices implementiert, bei den Output Devices kann nun nach Artnet-Nodes gescannt werden
-Remote Control config zeigt nun die steuerbaren Funktionen mit Kanälen an
-Remote Control auf 4 Kanäle erweitert sowie kleine Änderungen bei der Aufteilung: Für Szenen und Chaser (gleich mehr dazu) wird die 0 nun ignoriert (Lichtpulte senden grundsätzlich erst mal eine 0). Sprich bei den Szenen wird nun eine empfangene 1 für die erste Szene genutzt (statt bisher 0), somit sind "nur" noch 255 Szenen anwählbar. Werden die Szenen auf 32 beschränkt, so gilt 1-7 = Szene 1, 8-15 = Szene 2, usw. hier wurde auch lediglich der Wert 0 ausgeklammert, gleiches gilt für Chaser.
Und nun zu der grösseren Änderung:
Nachdem ich einen einfachen automatischen Szenenwechsel zu langweilig fand, hab ich Jinx! kurzer Hand eine komplette Chaser-Engine spendiert.
Das bedeutet, ihr könnt so viele Chaser (Programme) anlegen wie ihr wollt und innerhalb diesen so viele Schritte einbauen wir ihr wollt. Als Schritte stehen natürlich Szenen zur Verfügung, sowie die Automation des Masterstrobes und des Master-Crossfader. Jeder Schritt kann mit einer variablen Zeitdauer angegeben werden, bei Szenen wird zusätzlich auch noch für jede Szene das Scenefade eingestellt. Ein Chase kann als loop laufen oder aber als einmaligen Durchlauf und bleibt dann nach dem Ende auf der letzten Szene des Chase stehen.
Hiermit ergeben sich viele Möglichkeiten und ihr könnt komplette Shows programmieren. Die Chaser werden natürlich mit abgespeichert und können im Chaserfenster verwaltet, gestartet (Doppelklick oder Play Button), gestoppt werden. Im Showmode werden nun zuerst die Chaserbuttons angelegt, anschliessend dann die Szenenbuttons. Ihr könnt also jederzeit einen Chaser oder wie gehabt eine Szene starten, sobald eine Szene gestartet wird, stoppt ein evtl. laufender Chaser automatisch. Wie schon erwähnt lassen sich die Chaser auch via Remote abrufen.
Das ganze ist natürlich mit vielen Details behaftet, will euch damit aber nicht endlos langweilen Aber ihr glaubt gar nicht wie viele Stunden man in Kleinigkeiten stecken kann: das die einzelnen Fenster bzw. Buttons und Fader sich gegenseitig updaten, beim Chaseredit eine Vorschau für jeden Step da ist auch wenn man wahllos einen Step auswählt (klingt trivial, aber um das aktuelle Bild zu erhalten müssen alle vorherigen Steps durchgegangen werden da sich die Schritte z.T. gegenseitig beeinflussen), das nach dem Beenden eines Chaser die vorherigen Werte (Scenefade, Strobe) wieder hergestellt werden, usw.
Nun ja, egal Ich hoffe ihr kommt mit dem Chaser nun auch erstmal ohne grosse Anleitung klar, aber ich denke es ist einigermaßen intuitiv geworden. Kurz noch was zu den Zeiten die ihr den einzelnen Schritten gebt. Dies sind die Zeiten wie lange die Szene bzw. der Schritt läuft, oder mit anderen Worten: Die Wartezeit bevor der nächste Schritt ausgeführt wird. Das bedeutet ihr könnt auch mit 0 Werten arbeiten und Szenen beim starten beeinflussen, z.B. ihr nehmt eine Szene und gebt ihr die Dauer 0s als nächsten Schritt legt ihr ein Masterstrobeevent (mit Strobe) an mit 10s, als drittes ein Masterstrobeevent (Strobe aus, sprich regler nach links) mit 0s und anschliessend wieder eine Szene. Dann habt ihr folgendes Bild: Szene einschalten -> 0 -> sofort Strobe einschalten -> 10s warten -> Strobe ausschalten -> 0 sofort nächste Szene anzeigen
Ach ja, wenn Szenen einem Chaser zugeordnet sind lassen diese sich nicht mehr löschen, diese müssen erst aus dem Chaser entfernt werden oder eben der ganze Chaser gelöscht werden. Werden Szenen umsortiert, so wird dies in den entsprechenden Chasern automatisch angepasst, sprich er findet seine Szene egal wie gut ihr sie auch versteckt
Ich habe die Chaserengine nun die leztzten 2 Tage intensiv überarbeitet und debugged, ich hoffe es sind keine grossen Bugs mehr drin. Ich hab im Demofile mal einen kleinen Chaser angehängt, probiert es einfach aus.
Viel Spaß damit und Grüße
Seddi
//EDIT
Da fällt mir ein, muss das eigentlich nicht chase heissen und in der Mehrzahl dann chases ? Lauflicht -> light chase -> Licht jagd, nicht Licht Jäger (light chaser)... somit dann also auch scene chase und scene chases ... bei uns in der schäbisch-deutsch-englischen Veranstaltungstechnik heisst das immer banal Chaser ... da soll man mal nicht durcheinanderkommen Ich glaub ich mach da mal ein Typo Update im Programm ...