Programmiersprache funktioniert wie folgt: Man kann reinschreiben, was man will, das Programm ignoriert alles AUßER die Schlüsselwörter wie [mesh], wenn sie am Anfang der Zeile stehen! Die Schlüsselwörter müssen außerdem alleine in ihrer Zeile stehen, nur dann werden sie erkannt. Ist dem so, werden die entsprechenden folgenden Zeilen ausgelesen, um die Parameter zu finden, d.h. diese müssen dann direkt im Anschluss und zeilenweise alleine folgen! Wurde die Anzahl der Zeilen abgearbeitet, sucht das Programm wieder nach Schlüsselwörtern. Im Allgemeinen spielt die Reihenfolge keine Rolle, außer bei der Beschreibung von Arrays, wie den Gängen oder den Meshs. Es folgt nun der SD200 von Rüdiger H. aus B.: [friendlyname] ist der Abschnitt, wo {Hersteller} und {Typ} genannt wird. {Anstrich} ist der Name des Standardanstrichs (wenn der Texturtausch nicht aktiv ist) [friendlyname] MAN NL232 CNG BKV [description] MAN NL232 CNG - single-decker bus with low floor, manufactured by MAN Nutzfahrzeuge. Production began in the late 1980s and lasted until 1992. - Technical Specifications - Length: 11675 mm Width: 2500 mm Height: 2872 mm Engine: MAN D0826 LUH, 157 kW ( 213 HP) Gearbox: Voith D851.2 Maximum speed: 82 km/h Empty weight: 10200 kg Gross weight: 18600 kg Seats: 39 [end] [number] aktiviert die Zuweisung von Nummern {colorscheme specific numbers path} Pfad zu den *.org-(Omsi-Registration)-Dateien, welche für die Vergabe von Nummern zuständig sind. Aufbau einer Nummernliste: in der ersten Zeile kommt der Name des Anstrichs (wie er auch im CTC angegeben wird), dann beliebig viele zulässige Nummern. Steht in der ersten Zeile nichts, dann handelt es sich um die "Hauptliste", welche für alle Anstriche gilt, für welche keine Nummern spezifiziert werden. [registration_automatic] aktiviert die Zuweisung der Kennzeichen im automatischen Modus {regPrefix} Präfix vor Nummer am Kennzeichen. Soll bspw. Nr 2000 das Kennzeichen "D-A 2000H" bekommen, ist der Präfix "D-A " {regPostfix} Postfix hinter Nummer am Kennzeichen. Im obigen Beispiel "H". [registration_list] öffnet die angegebene Datei, um die Kennzeichenzuweisung nach den Nummern vorzunehmen. Der Index läuft hierbei parallel zu jener *.org-Datei, welche die Hauptliste enthält. {filename} [registration_free] aktiviert die freie Kennzeichenzuweisung. Im AI-Modus wird ein Kennzeichen der Map-Registrations-Datei verwendet, der User kann es für sein Fahrzeug frei wählen. [number] Regs_NL232.org [registration_free] [registration_automatic] T-UB [kmcounter_init] 1992 60000 [sound] sound\sound_NL202_pneumatic.cfg [sound_ai] sound\sound_NL202_pneumatic.cfg [model] model\model_NL202.cfg [paths] model\paths.cfg [passengercabin] model\passengercabin_NL202.cfg //////////////////////////////////////////////////////// Scripts //////////////////////////////////////////////////////// [varnamelist] 19 script\AI_varlist.txt script\collision_varlist.txt script\antrieb_varlist.txt script\engine_varlist.txt script\elec_varlist.txt script\bremse_varlist.txt script\auspuff_varlist.txt script\lights_varlist.txt script\door_varlist.txt script\wiper_varlist.txt script\cockpit_varlist.txt script\klappern_varlist.txt script\heizung_varlist.txt script\rain_varlist.txt script\dirt_varlist.txt script\IBIS_varlist.txt script\Matrix_varlist.txt script\cashdesk_varlist.txt script\ticketprinter_varlist.txt [stringvarnamelist] 4 script\IBIS_stringvarlist.txt script\Matrix_stringvarlist.txt script\ticketprinter_stringvarlist.txt script\cockpit_stringvarlist.txt [script] 22 script\main.osc script\main_AI.osc script\collision.osc script\cockpit.osc script\antrieb.osc script\engine.osc script\elec.osc script\bremse.osc script\auspuff.osc script\lights.osc script\door.osc script\wiper.osc script\klappern.osc script\forcefeedback.osc script\rain.osc script\dirt.osc script\sound_volume.osc script\heizung.osc script\IBIS-2.osc script\matrix_D.osc script\cashdesk.osc script\ticketprinter.osc [constfile] 17 script\AI_constfile.txt script\collision_constfile.txt script\antrieb_constfile.txt script\engine_constfile.txt script\elec_constfile.txt script\bremse_constfile.txt script\lights_constfile.txt script\door_constfile_pneumatic.txt script\auspuff_constfile.txt script\cockpit_constfile.txt script\klappern_constfile.txt script\forcefeedback_constfile.txt script\wiper_constfile.txt script\dirt_constfile.txt script\heizung_constfile.txt script\IBIS_constfile.txt script\matrix_constfile.txt //////////////////////////////////////////////////////// Kameras *NEU01* //////////////////////////////////////////////////////// Folgender Befehl fügt eine Kamera hinzu. Die Reihenfolge entscheidet darüber, in welcher selbigen die Kameras später erscheinen. _fahrer heißt, dass es sich um eine Fahrersicht handelt. Später wird dem _fahrgast hinzugefügt werden, welcher erst durch einen grundsätzlichen Wechsel der Perspektive aktiviert wird und welcher nicht die Ehre hat, auf einem Isri 200 zu sitzen... * x (lateral) * y (longitudinal) * z (vertikal) * dist, d.h. wie weit befindet sich das Auge vor dem Halsgelenk ;-) vgl. Außensicht: hier ist die Distanz variabel und normalerweise einige Dekameter positiv, sodass der Mittelpunkt (durch x,y,z) in Form des Busses sichtbar und zentriert ist. Beim Fahrer sollte der Wert ein wenig negativ sein, da sich der Kopf nicht ums Auge sondern um eine Punkt, ca. 6cm dahinter dreht ;-) * sichtwinkel: Bildausschnitt in Grad, für Fahrer normalerweise 52°, normal ist jedoch 45°. * Normale Sichtausrichtung in Querrichtung in ° * Normale Sichtausrichtung in vertikale Richtung in ° 0: Blick nach ganz links [add_camera_driver] -0.9 4.452 1.89 -0.06 48 -120 -5 1: Blick nach schräg links [add_camera_driver] -0.683 4.452 1.89 -0.06 48 -60 -5 2: Blick in den linken Spiegel [add_camera_driver] -0.683 4.452 1.89 -0.06 48 -20 -5 3: Blick nach vorne (std) [add_camera_driver] -0.683 4.452 1.89 -0.06 50 0 -10 2.13 4: Blick in den rechten Spiegel [add_camera_driver] -0.683 4.452 1.89 -0.06 48 33 0 5: Blick zur Tür [add_camera_driver] -0.683 4.452 1.89 -0.06 55 85 -10 5: Blick nach ganz rechts [add_camera_driver] -0.683 4.452 1.89 -0.06 55 115 -10 6: Panel-Zoom [add_camera_driver] -0.683 4.452 2.25 -0.06 50 0 -40 7: Fahrplan-Sicht [add_camera_driver] -0.683 4.452 2.13 -0.06 30 17 10 [view_schedule] 8: Fahrscheinverkauf-Sicht [add_camera_driver] -0.683 4.700 1.89 -0.06 44 60 -35 [view_ticketselling] ################ Passagiersichten ################ 0: Hinten mittig sitzend [add_camera_pax] -0.7 -5.3 2.3 -0.06 45 0 0 1: Stehplatz an der Hintertür [add_camera_pax] -0.3 -0.5 2.2 -0.06 45 90 0 2: vorne auf dem "Beifahrersitz" [add_camera_pax] 0.9 3.6 2.1 -0.06 45 0 0 Folgender Befehl setzt die Standardfahrerkamera: [set_camera_std] 3 Folgender Befehl setzt den Zentrierpunkt der Außenkamera: [set_camera_outside_center] 0 0 1.2 //////////////////////////////////////////////////////// Reflexionskameras *NEU01* //////////////////////////////////////////////////////// In dieser Sektion werden die Reflexionkameras gesetzt. Ist dieses Fahrzeug das eigene, wird aus einer jeden Kamera Perspektive die Szene gerendert und dann entsprechend aufsteigend in die Texturen mit den Namen "reflexion0.bmp", "reflexion1.bmp" usw. gespeichert, von wo aus dann auf die Textur zwecks eigentlichen Rendervorgang zurückgegriffen werden kann. [add_camera_reflexion] -1.288 5.431 1.76 0 52 169 0 [add_camera_reflexion] 1.255 5.86 2.227 0 52 201 -5 [add_camera_reflexion] 0.138 5.336 2.531 0 52 200 -20 [add_camera_reflexion] 0.63 5.295 2.499 0 52 220 -20 //////////////////////////////////////////////////////// ticket block attach points //////////////////////////////////////////////////////// Please mind: Nr.0 = ticket type 0, Nr.1 = ticket type 1 and so on. ticket type 0: [new_attachment] attach_rot_y 0 attach_trans -0.211 5.642 1.078 ticket type 1: [new_attachment] attach_rot_y 0 attach_trans -0.153 5.642 1.078 ticket type 2: [new_attachment] attach_rot_y 0 attach_trans -0.068 5.642 1.078 ticket type 3: [new_attachment] attach_rot_y 0 attach_trans 0 5.642 1.078 ticket type 4: [new_attachment] attach_rot_y 0 attach_trans 0.108 5.642 1.078 //////////////////////////////////////////////////////// Physikalische und geometrische Grunddaten //////////////////////////////////////////////////////// Masse in t: [mass] 10.20 Trägheitsmomente um x, y und z-Achse, also Quer-, Längs- und Hochachse um den Schwerpunkt in dieser Reihenfolge in t*m^2: 500 200 500 [momentofintertia] 300 80 300 Boundingbox des Busses *NEU01* [boundingbox] 2.5 11.37 2.7 0 -0.05 2.28 Höhe d. Schwerpunktes überm Boden: [schwerpunkt] 1.2 Rollwiderstand (konstant, wird demnächst eventuell geändert) als Kraft in N [rollwiderstand] 1000 Längskoordinate des Drehpunktes, wenn der Bus eine Kurve beschreibt: [rot_pnt_long] -2.681 Kehrwert des minimalen Lenkradiuses: (Berechenbar über die Formel: inv_turnradius = tan(alpha)/s, wobei alpha der maximale Winkel bspw. der Vorderachse und s deren Abstand zum Drehpunkt in Längsrichtung ist: [inv_min_turnradius] 0.13 [ai_deltaheight] -0.10 Folgende Sektion erzeugt nacheinander die Busachsen mit ihren Parametern. ACHTUNG: bei einem Fahrzeug mit unterschiedlich großen Rädern sollte zunächst die angetriebene Achse eingegeben werden, da die zuerst ein- gegebene Achse den Antriebsraddurchmesser vorgibt, d.h. das Getriebeübersetzungsverhältnis zur Ge- schwindigkeit ist in Bezug auf die 0. Achse gemessen. Vorderachse: [newachse] Koordinate: achse_long 3.201 Breite der Auflagefläche beider Reifen, also ungefähr die Busbreite achse_maxwidth 2.4 achse_minwidth 1.76 Raddurchmesser der Räder dieser Achse achse_raddurchmesser 1.069 Federkonstante der Federung PRO SEITE in kN/m achse_feder 180 Höchstbelastung in kN achse_maxforce 80 Dämpferkonstante in kNs/m achse_daempfer 25 Ist diese Achse angetrieben? achse_antrieb 0 Hinterachse: [newachse] achse_long -2.681 achse_maxwidth 2.4 achse_minwidth 1.2 achse_raddurchmesser 0.94 achse_feder 220 achse_maxforce 106 achse_daempfer 25 achse_antrieb 1