Lektion 20 Tut3: Unterschied zwischen den Versionen

Aus Deutsches DMXC-Wiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(36 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Hauptüberschrift
{{Manual Header
| logo = Im-aim.png
| Type = DMXC3 Tutorials
| ueberschrift = Erste Schritte: {{PAGENAME}}
}}
{{NavigationTop-Tut3
| zurückLink = Lektion_19_Tut3
| zurückLink = Lektion_19_Tut3
| zurückText = Lektion 19
| zurückText = Lektion 19
| hoch = [[Tutorials DMXControl 3|Inhaltsverzeichnis]]
| vorLink = Lektion_21_Tut3
| vorLink = Lektion_21_Tut3
| vorText = Lektion 21
| vorText = Lektion 21
}}
}}
= Überblick =
= Überblick =
In dieser Lektion lernst Du, wie das Erstellen und Hinzufügen neuer Gerätedefinitionen funktioniert. Du mußt diese Aktion nur machen, wenn Dein Gerät noch nicht als Standardgerät von DMXControl 3. definiert ist.
In dieser Lektion lernst Du, wie das Erstellen und Hinzufügen neuer Gerätedefinitionen funktioniert. Du musst diese Aktion nur anwenden, wenn Dein Gerät noch nicht als Standardgerät von DMXControl 3 definiert ist.
 
= Lektion 20: Neue Gerätedefinitionen erstellen  =
Eine Gerätedefinitionsdatei (kurz: DDF) wird verwendet, um DMXControl über die Eigenschaften eines Gerätes zu informieren. Ein DDF ist in XML-Sprache geschrieben und die Datei befindet sich im Ordner
 
<DMXControl program path>\kernel\devices
 
<br> Wenn Du mit DDFs von DMXControl 2 vertraut bist, dann kannst Du einige wichtige Unterschiede feststellen:
 
*Es gibt keine grafische Oberfläche (GUI), da DMXControl 3 kein Gerätekontextmenü unterstützt
*Einige Syntaxelemente sind sehr ähnlich (speziell im Informations-Teil), d.h. Du kannst die bestehenden DDFs wiederverwenden
*Der Funktionsteil ist viel abstrakter: Du machst die Definition vor allem durch die Eigenschaften und nicht durch die DMX-Kanäle
 
<br> Als erstes schauen wir uns ein sehr einfaches DDF an ("Generic RGB Par"):


----
= Lektion 20: Neue Gerätedefinitionen erstellen =
<br><br>
== Kurzeinstieg ==
{| cellspacing="1" cellpadding="1" border="0" align="center" width="200"
Eine Gerätedefinitionsdatei (kurz: DDF) wird verwendet, um DMXControl 3 über die Eigenschaften eines Gerätes zu informieren. Ein DDF ist in XML-Sprache geschrieben. Die Daten sind an verschiedenen Stellen auf dem PC gespeichert:
|-
* '''UserDevices''' (vom Anwender erstellte DDFs): <code>[APPDATA]\DMXControl Projects e.V\DMXControl\Kernel\UserDevices\</code>
| <source lang="xml">
* '''LibDevices''' (vom Installer ausgelieferte DDFs): <code>[PROGRAMMVERZEICHNIS]\Kernel\LibDevices\</code>
01 <?xml version="1.0" encoding="utf-8" ?>
02 <device image="bild" type="DMXDevice">
03  <information>
04    <modell>Generic RGB PAR</modell>
05    <vendor>Generic</vendor>
06    <author>Arne Luedtke</author>
07    <comment>KLEINER TEXT</comment>
08  </information>
09  <functions>
10    <rgb>
11      <red dmxchannel="0" />
12      <green dmxchannel="1" />
13      <blue dmxchannel="2" />
14    </rgb>
15  </functions>
16 </device>
</source>  
|
<br>[[Image:DeviceManegerInfoBox.jpg|DeviceManegerInfoBox.jpg]]
|}


----
Um DDFs für DMXControl 3 zu erstellen, gibt es zwei Wege. Entweder, du schreibst die DDFs in einem Texteditor, oder du nutzt den [[DDFCreator 3]]. Mit letzterem kannst du dir die DDFs mit Hilfe einer grafischen Oberfläche zusammenstellen. Auf der Wiki-Seite des DDFCreators wird beschrieben, wie man ihn bedient und damit DDFs erstellt.


Zeile 01 ist zwingend notwendig für die Beschreibung der XML-Version. Zeile 02 ("bild" kann ersetzt werden durch z.B. "Light.gif" oder "Light.png") und 15 bilden den Rahmen für die Geräte-Definition, die aus zwei Teilen besteht:
Im Folgenden konzentrieren wir uns auf die Erstellung eines DDFs im Texteditor. Wenn du mit DDFs von DMXControl 2 vertraut bist, dann kannst Du einige wichtige Unterschiede feststellen:
* Es gibt keine grafische Oberfläche (GUI), da DMXControl 3 kein Gerätekontextmenü unterstützt.
* Einige Syntaxelemente sind sehr ähnlich (speziell im Informations-Teil), das heißt du kannst die bestehenden DDFs wiederverwenden.
* Der Funktionsteil ist viel abstrakter: Du machst die Definition vor allem durch die Eigenschaften und nicht durch die DMX-Kanäle.


*Informationsbereich (Zeile 03 bis 08), keine weitere Erklärung notwendig.  
In diesem Tutorial werden wir anhand von drei Beispielen, die von Mal zu Mal insbesondere umfangreicher und ein klein wenig schwieriger werden, die manuelle Erstellung eines DDFs Schritt für Schritt durchgehen. Für alle Beispiele beziehen wir uns real existierende Geräte, damit du das Tutorial im Nachgang für dich selbst besser nachvollziehen kannst. Die Geräte haben wir anhand ihrer Funktionen so ausgewählt, damit die Beispiele so umfangreich wie möglich ausfallen können.
*Funktionsbereich (Zeile 09 to 14)


Das Gerät in unserm Beispiel hat eine Eigenschaft: RGB color Modus. Die Zuordnung der DMX Kanäle wird in den Zeilen 11 bis 13 beschrieben.  
Wir können in diesem Tutorial leider nicht alle Funktionen aufgreifen, die von DMXControl 3 unterstützt werden. Eine ausführliche Erläuterung der Funktionen findest du im Handbuch-Band [[DDF DMXC3]].


Das ist alles!
== Beispiele ==
Wir haben für euch mehrere Bespiele erstellt, wie ihr auf manuellem Wege DDFs programmiert:
* Beispiel 1: [[DDF-Tutorial_LED-Scheinwerfer_DMXC3|LED-Scheinwerfer]]
* Beispiel 2: [[DDF-Tutorial_4er-Bar_DMXC3|4er-LED-Bar (keine Leiste)]]
* Beispiel 3: [[DDF-Tutorial_Moving_Head_DMXC3|Moving Head]]


Folgende Tabelle zeigt die vorhandenen Eigenschaften<br>
 
{| class="wikitable"
|-
! scope="col" | Property
! colspan="2" scope="col" | Description
! colspan="3" scope="col" | Comment
|-
| switch
| colspan="2" | Fixture hat einen Switch-Kanal<br>
| colspan="3" | <pre>&lt;switch dmxchannel="0" /&gt;</pre>
|-
| dimmer
| colspan="2" | Fixture hat einen Dimmer-Kanal<br>
| colspan="3" | <pre>&lt;dimmer dmxchannel="0" /&gt; </pre>
|-
| matrix
| colspan="2" | Fixture ist ein Matrix-Gerät<br>
| colspan="3" | <pre>&lt;matrix rows="2" columns="3"&gt;
  &lt;rgb&gt;
    &lt;red dmxchannel="2" /&gt;
    &lt;green dmxchannel="2" /&gt;
    &lt;blue dmxchannel="2" /&gt;
  &lt;/rgb&gt;
  &lt;rgb&gt;
    &lt;red dmxchannel="2" /&gt;
    &lt;green dmxchannel="2" /&gt;
    &lt;blue dmxchannel="2" /&gt;
  &lt;/rgb&gt;
  &lt;rgb&gt;
    &lt;red dmxchannel="2" /&gt;
    &lt;green dmxchannel="2" /&gt;
    &lt;blue dmxchannel="2" /&gt;
  &lt;/rgb&gt;
  &lt;rgb&gt;
    &lt;red dmxchannel="2" /&gt;
    &lt;green dmxchannel="2" /&gt;
    &lt;blue dmxchannel="2" /&gt;
  &lt;/rgb&gt;
  &lt;rgb&gt;
    &lt;red dmxchannel="2" /&gt;
    &lt;green dmxchannel="2" /&gt;
    &lt;blue dmxchannel="2" /&gt;
  &lt;/rgb&gt;
  &lt;rgb&gt;
    &lt;red dmxchannel="2" /&gt;
    &lt;green dmxchannel="2" /&gt;
    &lt;blue dmxchannel="2" /&gt;
  &lt;/rgb&gt;
&lt;/matrix&gt;
</pre>
|-
| fog
| colspan="2" | Nebel-Kanal<br>
| colspan="3" | <pre>&lt;fog dmxchannel="0" /&gt;</pre>
|-
| shutter
| colspan="2" | Fixture hat einen Shutter<br>
| colspan="3" | <pre>&lt;shutter dmxchannel="0" /&gt;</pre>
|-
| strobe
| colspan="2" | Fixture hat einen Strobe-Kanal<br>
| colspan="3" | <pre>&lt;strobe dmxchannel="0" /&gt;</pre>
|-
| iris<br>
| colspan="2" | Fixture hat einen Iris-Kanal<br>
| colspan="3" | <pre>&lt;iris dmxchannel="0"/&gt;</pre>
|-
| focus<br>
| colspan="2" | Fixture hat einen Fokus-Kanal<br>
| colspan="3" | <pre>&lt;focus dmxchannel="0"/&gt;</pre>
|-
| zoom<br>
| colspan="2" | Fixture hat einen Zoom-Kanal<br>
| colspan="3" | <pre>&lt;zoom dmxchannel="0"/&gt;</pre>
|-
| rgb
| colspan="2" | Fixture hat die RGB-Funktion
| colspan="3" | <pre>&lt;rgb&gt;
  &lt;red dmxchannel="0" /&gt;
  &lt;green dmxchannel="1" /&gt;
  &lt;blue dmxchannel="2" /&gt;
&lt;/rgb&gt;
</pre>
|-
| cmy<br>
| colspan="2" | Fixture hat die CMY-Funktion<br>
| colspan="3" | <pre>&lt;cmy&gt;
  &lt;cyan dmxchannel="0"/&gt;
  &lt;magenta dmxchannel="1"/&gt;
  &lt;yellow dmxchannel="2"/&gt;
&lt;/cmy&gt;
</pre>
|-
| position
| colspan="2" | Fixture hat Pan und/ oder Tilt
| nowrap="nowrap" colspan="3" | <pre>&lt;position&gt;
  &lt;pan dmxchannel="0"&gt;
    &lt;range range="540" /&gt;
  &lt;/pan&gt;
  &lt;tilt dmxchannel="1"&gt;
    &lt;range range="246" /&gt;
  &lt;/tilt&gt;
&lt;/position&gt;
</pre>
|-
| color wheel
| colspan="2" | Fixture mit Farbrad
| colspan="3" | <pre>&lt;colorwheel dmxchannel="0"&gt;
  &lt;step type="color" val="#ffffff" caption="Weiß" mindmx="0" maxdmx="0" /&gt;
  &lt;step type="color" val="#00bd52" caption="Grün 203" mindmx="32" maxdmx="32" /&gt;
  &lt;step type="color" val="#080094" caption="Blau 108" mindmx="64" maxdmx="64" /&gt;
  &lt;step type="color" val="#8e10bc" caption="UV" mindmx="96" maxdmx="96" /&gt;
  &lt;step type="color" val="#eedefe" caption="1/2 Minus Green" mindmx="128" maxdmx="128" /&gt;
  &lt;step type="color" val="#ffffff" caption="Weiß" mindmx="160" maxdmx="160" /&gt;
&lt;/colorwheel&gt;
</pre>
|-
| rowspan="4" | gobo wheel
| rowspan="3" | Fixture mit Gobobrad
| valign="top" nowrap="nowrap" |
<br>
 
Goborotation
 
| valign="top" nowrap="nowrap" rowspan="3" | <pre>&lt;gobowheel dmxchannel="0"&gt;
  &lt;goborotation dmxchannel="12" finedmxchannel="13"&gt;
    &lt;step type="stop" mindmx="0" maxdmx="2" /&gt;
    &lt;step type="stop" mindmx="253" maxdmx="255" /&gt;
    &lt;range type="cw" mindmx="3" maxdmx="127" minval="0,1" maxval="8" /&gt;
    &lt;range type="ccw" mindmx="252" maxdmx="128" minval="0,1" maxval="8" /&gt;
  &lt;/goborotation&gt;
  &lt;goboindex dmxchannel="8" finedmxchannel="9"&gt;
    &lt;range mindmx="0" maxdmx="255" range="395" /&gt;
  &lt;/goboindex&gt;
  &lt;step type="open" caption="Open" mindmx="0" maxdmx="11" /&gt;
  &lt;step type="gobo" caption="Gobo 1" mindmx="12" maxdmx="15" val="gobo1.png"&gt;
    &lt;step for="goborotation" mindmx="36" maxdmx="39" /&gt;
    &lt;step handler="shake" mindmx="60" maxdmx="71" minval="0,1" maxval="3" /&gt;
  &lt;/step&gt;
  ...
&lt;/gobowheel&gt;</pre>
|-
| valign="top" |
Gobopositi
 
|-
|
Rotation Gobo 1
 
Shake Gobo 1<br>
|}
 
Wenn das Fixture über ein Farb/Goborad verfügt, das sich kontinuierlich drehen kann, dann schreibt man das so:<br>
<pre>&lt;gobowheel dmxchannel="0"&gt;
  &lt;step type="open" caption="Open" mindmx="0" maxdmx="0" /&gt;
  &lt;step type="gobo" caption="Gobo 1" mindmx="11" maxdmx="11" /&gt;
  ...
  &lt;wheelrotation&gt;
    &lt;range type="cw" mindmx="221" maxdmx="203" minval="0,1" maxval="2" /&gt;
    &lt;range type="ccw" mindmx="222" maxdmx="240" minval="0,1" maxval="2" /&gt;
  &lt;/wheelrotation&gt;
&lt;/gobowheel&gt;
</pre>
<br>
 
Wenn das Fixture über ein Farb/Goborad verfügt, das sich auf zufällige Positionen drehen kann, dann schreibt man das so:<br>
<pre>&lt;gobowheel dmxchannel="0"&gt;
  &lt;step type="open" caption="Open" mindmx="0" maxdmx="0" /&gt;
  ...
  &lt;random&gt;
    &lt;step type="fast" mindmx="241" maxdmx="245" /&gt;
    &lt;step type="medium" mindmx="246" maxdmx="250" /&gt;
    &lt;step type="slow" mindmx="251" maxdmx="255" /&gt;
  &lt;/random&gt;
&lt;/gobowheel&gt;
</pre>
<br>
 
Wenn ein Gerät über feine Kanäle für z.B Zoom verfügt, dann schreibt man das so:<br>
<pre>&lt;zoom dmxchannel="0" finedmxchannel="1"/&gt;
</pre>
Das funktioniert bei jedem Property.
 
<br>
 
Die verschiedenen Intervalle in einem DMX-Kanal werden von der „Step“ Variablen definiert:
 
&lt;step val="0" mindmx="0" maxdmx="127" /&gt;
&lt;step val="100" mindmx="128" maxdmx="255" /&gt;
 
oder:
 
&lt;step type="color" val="#FFFFFF" caption="Weiß" mindmx="0" maxdmx="31" /&gt;
&lt;step type="color" val="#FF0000" caption="Rot" mindmx="32" maxdmx="63" /&gt;
<br><br>
 
{{BoxHinweis
|Text=Ein DDF-Creator für DMXControl 3 ist bereits in Arbeit, siehe [[http://www.dmxcontrol.de/forum/index.php?page=Thread&threadID=7931&pageNo=1 Forum]]. Ihr könnt mit diesem Prototype arbeiten oder die eigenen DDFs mit einem XML-Editor Eurer Wahl oder einfach mit einem Texteditor erstellen. Manchmal hilft es, ein bereits existierendes DDF zu kopieren und anzupassen.
Bitte sendet uns Eure neuen DDFs, damit wir sie in die Bibliothek aufnehmen können.
}}
 
== Übung  ==
1) Wirf einen Blick in einige Definitionen von Geräten, bevor Du eigene DDFs erstellst (siehe obiges Verzeichnis)
<br>
2) Öffne das DDF für den TS255. Trenne die unterschiedlichen Eigenschaften durch Leerzeilen, um es besser zu verstehen
<br>
3) Erstelle ein DDF für Dein eigenes Gerät.
 
{{NavigationTop-Tut3
| zurückLink = Lektion_19_Tut3
| zurückText = Lektion 19
| hoch = [[Tutorials DMXControl 3|Inhaltsverzeichnis]]
| vorLink = Lektion_21_Tut3
| vorText = Lektion 21
}}
[[en: Lesson_20_Tut3]]
[[en: Lesson_20_Tut3]]
[[Kategorie: Tutorials DMXControl 3]]
[[Kategorie: Tutorials DMXControl 3]]

Aktuelle Version vom 10. November 2024, 14:27 Uhr

Im-aim.png Lektion 20 Tut3
Arrow back.png Lektion 19
Lektion 21 Arrow forw.png
Inhaltsverzeichnis

Überblick

In dieser Lektion lernst Du, wie das Erstellen und Hinzufügen neuer Gerätedefinitionen funktioniert. Du musst diese Aktion nur anwenden, wenn Dein Gerät noch nicht als Standardgerät von DMXControl 3 definiert ist.

Lektion 20: Neue Gerätedefinitionen erstellen

Kurzeinstieg

Eine Gerätedefinitionsdatei (kurz: DDF) wird verwendet, um DMXControl 3 über die Eigenschaften eines Gerätes zu informieren. Ein DDF ist in XML-Sprache geschrieben. Die Daten sind an verschiedenen Stellen auf dem PC gespeichert:

  • UserDevices (vom Anwender erstellte DDFs): [APPDATA]\DMXControl Projects e.V\DMXControl\Kernel\UserDevices\
  • LibDevices (vom Installer ausgelieferte DDFs): [PROGRAMMVERZEICHNIS]\Kernel\LibDevices\

Um DDFs für DMXControl 3 zu erstellen, gibt es zwei Wege. Entweder, du schreibst die DDFs in einem Texteditor, oder du nutzt den DDFCreator 3. Mit letzterem kannst du dir die DDFs mit Hilfe einer grafischen Oberfläche zusammenstellen. Auf der Wiki-Seite des DDFCreators wird beschrieben, wie man ihn bedient und damit DDFs erstellt.

Im Folgenden konzentrieren wir uns auf die Erstellung eines DDFs im Texteditor. Wenn du mit DDFs von DMXControl 2 vertraut bist, dann kannst Du einige wichtige Unterschiede feststellen:

  • Es gibt keine grafische Oberfläche (GUI), da DMXControl 3 kein Gerätekontextmenü unterstützt.
  • Einige Syntaxelemente sind sehr ähnlich (speziell im Informations-Teil), das heißt du kannst die bestehenden DDFs wiederverwenden.
  • Der Funktionsteil ist viel abstrakter: Du machst die Definition vor allem durch die Eigenschaften und nicht durch die DMX-Kanäle.

In diesem Tutorial werden wir anhand von drei Beispielen, die von Mal zu Mal insbesondere umfangreicher und ein klein wenig schwieriger werden, die manuelle Erstellung eines DDFs Schritt für Schritt durchgehen. Für alle Beispiele beziehen wir uns real existierende Geräte, damit du das Tutorial im Nachgang für dich selbst besser nachvollziehen kannst. Die Geräte haben wir anhand ihrer Funktionen so ausgewählt, damit die Beispiele so umfangreich wie möglich ausfallen können.

Wir können in diesem Tutorial leider nicht alle Funktionen aufgreifen, die von DMXControl 3 unterstützt werden. Eine ausführliche Erläuterung der Funktionen findest du im Handbuch-Band DDF DMXC3.

Beispiele

Wir haben für euch mehrere Bespiele erstellt, wie ihr auf manuellem Wege DDFs programmiert: