![]() |
![]() |
|
|
|||||||
| Designer Forum Treffpunkt für Gedankenaustausch von Simmern, die selbst |
![]() |
|
|
Themen-Optionen | Ansicht |
|
|
#1 |
|
Veteran
![]() Registriert seit: 27.02.2002
Alter: 47
Beiträge: 266
|
Moin,
wer weiß wo es gute Gauges-Tutorials möglichst in deutsch gibt. Danke Gruß Hannes ![]()
____________________________________
Besucht unseren Segelflugverein in Celle |
|
|
|
|
|
#2 |
|
Inventar
![]() |
Hallo!
Zuerst einmal musst du dich entscheiden, ob du XML-Gauges erstellen willst oder C-programmierte Gauges. Da ich nichts von C-programmieren verstehe, nahm ich das XML Format. Es ist seit FS2002 eingeführt(die 747 und die Baron haben standartmäßig XML-Gauges.) Die Vorteile sind: Du kannst in bereits bestehende Gauges Dateien hineinschauen, und dann ganze Seiten daraus in dein Gauge kopieren. Auch das Prinzip der Gauge Erstellung ist leicht zu verstehen. Als Nachteil fällt mir eigentlich nur ein, dass man keine Vektorgraphikgauges programmieren kann, die für Moving Map gebraucht wird. Allerdings kann das jedem Gaugeprogrammierer egal sein, der nicht gerade vor hat, eine Dreamfleet 737 zu programmieren. Die C-programmierten Gauges sind komplizierter, weil man sich nicht einfach mal eine bereits bestehende Gauge Datei anschauen kann, man muss also von Anfang an alles sich selber ausdenken. Ich schlage dir also XML vor, da dies die neue Technik im Gauge Design ist und sicher mit jedem neuen Flusi mehr und mehr ausgebaut werden wird. Und um so früher man lernt, damit umzugehen, desto besser werden dann die Resultate im FS2010 ausschauen! Ich habe im Anfang Juli angefangen, Gauges zu designen, und heute gehts eigentlich schon recht gut. Unten siehst du noch ein Bild des EFIS Systems für die TBM700. ![]() |
|
|
|
|
|
#3 |
|
Inventar
![]() |
Also, wenn du mit XML anfängst, so probiers doch am besten einmal mit einem SimIcon(die Schalter, wo man draufdrückt, und dann öffnet sich ein Schubhebel oder das Overhead und so).
Mit denen hab ich auch angefangen. Also, das hier möchten wir machen: Doch bevor du das Gauge zu programmieren versuchst, brauchst du das Panels and Gauges SDK(HIER) und das XML-Gauge Tuturial von Bartels, zu finden auf AVSIM[xmlgau01.zip] Und so sieht der Code dazu aus: Sorry, durch denn blöden HTML Code in dem Forum wird der Text nicht angezeigt, ich habe den Gauge Code also in gauge.txt gepeichert. EDIT:Jetzt hab ichs auch noch als .zip probiert, funktioniert genauso wenig wie das txt in dem Forum. Welcher Koffer hat den dieses Forum programmiert???Ich probiers jetzt als link: Klick hier! < heißt dass ein neuer Abschnitt eröffnet wird, /> heißt das der Abschnitt geschloßen wird. Zuerst wird das Gauge eröffnet Der Abschnitt Image sollte klar sein Der Mouse Abschnitt bestimmt das Maussymbol, und was geschieht, wenn man draufklickt. Und ein Hilfeabschnitt ist auch noch dabei, der im FS angezeigt wird. Unter Click steht 250 (>K:PANEL_ID_TOGGLE) 250 ist die Panelidentifizierung für das Overheadpanel, und >K(=>K) heißt dass eine Information oder ein Befehl an den Flusi geschickt wird. Zum Schluß kannst du noch, wenn du willst, einen Copyrigh Abschnitt machen, und deine e-mail hineinschreiben. Bei weiteren Fragen steh ich dir gerne zur Verfügung! Viele Grüße Harald ![]() |
|
|
|
|
|
#4 |
|
Inventar
![]() |
Bei weiteren Fragen schreib mir, dann machen wir's und per e-mail aus, denn in dem Forum kann man nicht mal ein .zip anhängen, das dann funktioniert
Was du vielleicht noch benötigst ist ein XML-Editor, dann ersparst du dir die komplizierten < > und so! Und wenn du dann Erfahrung im XML-programmieren hast, kannst ja umsteigen auf manuelles Editieren mit Notepad! www.daveswebsite.com ->Da bekommst du einen guten FreewareEditor her! Und gib mal Cabpacker in Google ein, dann kannst du dir auch dieses Tool runterladen, um alles dann in eine Cab Datei zu speichern. So, und jetzt bin ich ruhig und lass dich arbeiten. Ich werde inzwischen über das Forum fluchen, dass sich so blöd anstellt Beste Grüße Harry ![]() |
|
|
|
|
|
#5 |
|
Senior Member
![]() Registriert seit: 26.04.2002
Beiträge: 168
|
Hmmm, also harry3 hat ja XML gauges betreffend schon so ziemlich alles gesagt.
Falls Du C gauges gemeint hast, muss ich leider sagen, kannst du (fast) vergessen. Das einzige (und demnach beste) ist sd2gau13.zip von Dai Griffiths. Desweiteren sollte man sich mal das M$ Panel and Gauges SDK reingezogen haben. Ansonsten, zum compilen: www.borland.com und von dort den kostenlosen BCC5.5 runterladen. XML <==> C: Also soweit ich weiß aktualisieren sich XML gauges immer sofort im Sim. D. h. Man ändert den Quellcode, speichert und *peng* sofort hat man as Ergebnis im Simulator ohne neu zu laden. Dafür kann man in C weitaus komplexere gauges machen, wie gesagt, für Luftfahrzeuge der GA mögen XML geeignet sein (na, nur weil die Stndard-747 kein GA Flugzeug ist... Das Panel ist trotzdem nicht viel aufwändiger! ;-)), aber ein FMS in XML zu erstellen dürfte 'minimal' problematisch werden. Abgesehen davon kann man dann durchaus sehr viel vom 'Standard-C++' in eine gauge einbauen, so z. B. Datei-Ein-/Ausgabe. Soviel dazu.Viel Glück, Etienne |
|
|
|
|
|
#6 |
|
Inventar
![]() |
Hallo!
Also mit dem Neuladen: vielleicht hab ich dich jetzt falsch verstanden, aber normalerweise muss man auf ein anderes Flugzeug wechseln, dann den Quellcode ändern, und dann wieder auf dein Flugzeug mit dem Gauge wechseln. Also das Flugzeug muss man schon neu laden, den Flusi aber nicht. Man kann nämlich nicht abspeichern, wenn dass Flugzeug mit dem Gauge ausgewählt ist! Viele Grüße Harald ![]() |
|
|
|
|
|
#7 |
|
Inventar
![]() |
Ach noch was: Das XML nur für die GA brauchbar ist, würd ich nicht sagen. Weil die meisten Freeware Designer haben auch bei einem A340 Panel nicht vor, Moving Map und FMC zu programmieren. Und für den Rest funktioniert auch XML recht gut. Schau dir nur mal Karl Pettersens Sandel-EHSI an.(wirst du sicher schon gesehen haben im AVSIM Forum, ansonsten hab ich die Datei angehängt). Dieser ist XML und kann eigentlich recht viel! Nur so nebenbei-sein Gauge hat bereits eine Größe von sagenhaften 45kb!!! (Zum Vergleich Mein EADI hatdagegen nur 7kb!)
Schöne Grüße Harry ![]() |
|
|
|
|
|
#8 |
|
Senior Member
![]() Registriert seit: 26.04.2002
Beiträge: 168
|
Der ADI sieht ja echt nett aus!
![]() Na das mit dem Neuladen hab' ich dann wohl falsch verstanden, ich dachte unser Avsim-Pfarrer Bill hätte sowas mal gesagt... Ahh, mei Gedächtnis... Klar geht XML gut, keine Frage, aber IMHO kann man sehr viel übersichtlicher callbacks etc. programmieren. Vielleicht liegt's ja auch nur daran, dass ich schon bevor ich mit gauges angefangen habe, mit C++ zu tun hatte... Ich persönlich kann mir selbst aus den mitgelieferten bzw. runtergeladenen XML gauges nicht im entferntesten etwas anfangen.Ich überlass' das denen, die es auf mir höchst rätselhafte Weise verstanden haben. ![]() Tschüss Etienne |
|
|
|
|
|
#9 |
|
Inventar
![]() |
So geht's mir mit den C-programmierten Gauges, mit denen kann ich nichts anfangen. Aber mir fehlt einfach das nötige Wissen zu C. Wenn ich C-programmieren könnte, so hätte ich C-gauges erstellt.
Dieses Jahr fangen wir in der Schule programmieren an(ich hoffe das wir da auch C lernen, sollte aber eigentlich dazugehören, oder? ). Bei der Gelegenheit werd' ich dann zwei gleiche Gauges erstellen, eines in XML, eines im .gau Format. Bin gespannt wo die Vorteile/Nachteile der beiden Erstellungsarten liegen. Weil du gerade die callbacks erwähnst: Was ist denn das genau? Wahrscheinlich hab ich schon einen Callback programmiert, ohne es zu wissen. Das wäre dann typisch für mich Bill der Avsim-Pfarrer Viele Grüße, Harald ![]() |
|
|
|
|
|
#10 |
|
Senior Member
![]() Registriert seit: 26.04.2002
Beiträge: 168
|
Hmmmm, also wir hatten in der 8. mal sowas, was sich 'IKG' nannte... Das beinhaltete auch 'programmieren'... Na, war nicht wirklich ein Problem, hatte ja schon davor mit C++ rumgemacht, aber von programmieren war da wirklich nicht die Rede. Lag wohl daran, dass unser 'Lehrer' das selber nicht konnte. Wir haben dann einen 'Einblick' ins Programmieren bekommen, der nannte sich 'SuperLogo, Programmieren für Kinder' LOL (kotz)... Ein Programm, mit dem man Bilder 'programmieren' kann. Kein Witz! Da ist so eine Art Zeichenfläche, in der Mitte ist der Stift. Jetzt gibt man in eine Engabefeld die deutschen (!) Befehle ein, z. B.:
vorwärts 100 links 90 vorwärts 100 ... und man hätte einen rechten Winkel ge'malt'. Ähem, ja, so ist das. Boaaa, man sehe und staune, man konnte sogar Schleifen machen: wiederhole 360 (vorwärts 1 links 1) ... und man bekommt einen Kreis. Wow. Also, *räusper*, wie man sieht, hat nicht allzuviel mit Programmieren zu tun. Ich hoffe nur, ihr bleibt davon verschont und macht wenigstens Basic oder so. Ob C drankommt, wage ich zu bezweifeln... Weiß aber nicht. Zu den callbacks: Also, in C gauges hat man zunächst mal die Bildelemente, also z. B. eine Nadel, ein statisches Bild (für den Hintergrund) oder einen String. Jetzt hat man halt das Bild, aber es braucht ja irgendwoher seine Daten, d. h. eine Nadel muss ja wissen, wann sie wohin zeigen soll. Dazu gibt man in der Definition der Nadel die FS-Variable an (z. B. GROUND_ALTITUDE für einen RA), auf die die Nadel reagieren soll. Jetzt braucht man eventuell noch besagtes callback: Das ist schlicht und ergreifend eine normale C-Funktion, in der man die Variable des Bildelementes (in dem Fall halt GROUND_ALTITUDE) sozusagen noch 'nachbearbeiten' kann. Das Bildelement und das callback werden dann sozusagen eindeutig 'verbunden', denn in einer gauge kann man logischerweise viele Bildelemente und callbacks haben... Dieses callback gibt dann an die Nadel einen Wert zurück. Also zum Beispiel kann man in der callback programmieren, dass die Nadel nicht mehr als 1500 ft anzeigen soll, damit sich die Nadel halt nicht im Instrument rumrotiert wenn man höher als 1500 ft fliegt... Man programmiert das callback also so, dass der sogenannte Rückgabewert, egal wie hoch man wirklich ist, nicht größer als 1500 ft ist. Whew, ich hoffe, das veranschaulicht so uuuuungefähr was ein callback ist. Ist übrigens nur ein winziger Teil, denn mit callbacks kann man einfach ALLES machen. Eigentlich so ziemlich alles, was man in C auch machen kann. Datei ein-/ausgabe zum Beispiel. Das Du schon ein callback programmirt hast, glaube ich deshalb nicht, weil es sie in XML schlicht und ergreifend in dieser Form garnicht gibt! Das wird ja dann irgendwie mit diesen 'Stacks' gelöst... Ja genau das ist es, was mit am wenigsten begreiflich wurde, als ich mich einst an XML heranwagte. Na, mein Pfarrer (eigentlich Kaplan) kann auch keine Gauges programmieren, ich bin aber trotzdem (fast) jeden Sonntag in der Kirche... ![]() Bis bald, Etienne EDIT BTW - Welche Klasse bist du denn |
|
|
|
![]() |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|