Jump to content

BahnLand

Mitglieder
  • Gesamte Inhalte

    7820
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von BahnLand

  1. Hello Curt, thank you very much for uploading your layout here. I have studied your event control realization, and you are right: As long as there is no concurrency between different trains, it should work. But it isn't upgradable for use with concurrent train activities. Many greetings BahnLand
  2. Hallo Neo, Danke für Deine Information. Dann warte ich mal die nächste Version ab, bevor ich die Performance neu teste. Viele Grüße BahnLand
  3. Hello Curt, is it true, that you use an automatic translator? It seems so, because some main terms are translated in a quite wrong sense: e.g. "event" means "Ereignis" ("Incident" or "occurence"), but is translated as "Veranstaltung" ("presentation" or "performance"). So, the translated text sometimes is only understandable when regarding also the original english text. Therefore, I try to write english comments directly without translating german texts prepared before. Even though my english knowledge really is not perfect, I believe, that these texts are better understandable than automatic translations of my german texts. Nevertheless I will usually add a german interpretation of my english comments (no literal translation) to enable the reader to compare it with the english content, because me too am not immune against using distorting terms. Yes, I would be interested in your (unfinished) layout, especially in the implemented event control. Please attach it here as mbp-file. Many thanks. Many greetings BahnLand Ich vermute, dass Du ein automatisches Übersetzungstool verwendest. Zumindest erscheint es mir so, da z.B. das englische Wort "event" nicht als "Ereignis" (im Sinne von "Vorkommnis") sondern als "Veranstaltung" übersetzt wurde. Somit ist es ganz nützlich, neben dem übersetzten deutschen Text auch den originalen englischen Text zu lesen, um den Kontext verstehen zu können. Ich versuche den englischen Text immer "direkt" hinzuschreiben, ohne einen entsprechend vorbereiteten Text zu übersetzen, Obwohl mein Englisch sicher nicht als gut bezeichnet werden kann, glaube ich, das die so formulierten Texte trotzdem besser verständlich sind als automatische Übersetzungen entsprechender deutscher Formulierungen. Trotzdem füge ich (meist) den deutschen Text hinzu, da auch ich nicht davor gefeit bin, in meinen englischen Kommentaren "unwissentlich" Sinn-entstellende Begriffe zu verwenden. Ja, Deine (unfertige) Anlage - speziell die Ereignisverwaltung - interessiert mich schon. Bitte hänge sie hier als mbp-Datei an. Vielen Dank. Viele Grüße BahnLand
  4. Hello Curt, you cannot use a "common event definition" like a procedure from a programming language (e.g.Basic, C++, Pascal, ...), using a variable as container for a parameter. While the procedure provides parameters, where the caller can specify his current values to be used for this specific call (another possibly simultaneous call of this procedure can store and execute its specific parameters), the variable used instead within the event control of the TrainStudio is global and gets overwritten by each call of the common event routine. Assuming, that 2 calls of this event routine are realized quite simultaneously, the 2nd call will overwrite the parameter variable content of the 1st call, so that the 1st call will fail. To avoid such overlapping, you must lock the sequence consisting of the parameter variable overwriting and the common event routine call. But this seems more expensive than a multiplication of the event routine each using its own (fix) parameter values. Many greetings BahnLand Es ist nicht möglich, eine "gemeinsame Ereignisdefinition" wie eine in Basic, C++, Pascal oder einer anderen Programmiersprache geschriebene Prozedur zu verwenden, indem man anstelle der Programm-Parameter eine Variable des Modellbahn-Studios als Parameter-Container heranzieht. Während die Prozedur Parameter anbietet, die beim Aufruf mit aktuellen Werten versorgt werden können, und dann bei jedem Prozedur-Aufruf (auch möglicherweise parallel) lokal hinterlegt und abgearbeitet werden, wir eine stattdessen als Parameter-Container verwendete Variable vor jedem Aufruf der "Ereignis-Routine" (Ablauf der Ereignisdefinitions-Folge) überschrieben. Werden nun zwei solche Aufrufe nahezu zeitglich abgesetzt, wird die Variablen-Eingabe des 1. Aufrufs durch jene des 2. Aufrufs überschrieben, sodass der 1. Aufruf zwangsläufig zu einem Fehler führt. Um solche Überlappungen zu vermeiden, müsste man dann das Beschreiben der Variable zusammen mit der Ausführung der Ereignis-Routine durch einen Lock schützen, wodurch die Realisierung dieser Methode vermutich aufwendiger wird, als wenn die Ereignis-Routine für jeden Anwendungsfall einfach vervielfältigt und jeweils mit den spezifischen "fest eingebrannten" Parametern zum Ablauf gebracht wird. Viele Grüße BahnLand
  5. Hello Curt, each object to be considered by the event control must have a unique name, so that it may be uniquely identified by the event control mechanism. Using object variables (instead of "isolated" variables), you can refer them via the object (even along more than one step). Example: Assume, that your track is named "track1", the "incoming" locomitive ist named "loco2" and the external camera to be assigned to the loco2 is named "camera2". Then assign by hand the camera2 to the loco2 by use of an object variable loco2.camera = "camera2" and use dynamically for the track1 the object variable track1.train. When now the event control registers that loco2 enters track1, assign its name to the track variable: track1.train = $_Trigger1._Name. For activating the external camera of the train refer $(track1.train).camera (I hope the syntax is correct). Considering different tracks (with different names), you must create the event definitions for each track separately. You can duplicate the event definition sequence for one track to another one, but you need to change at least the track name (e.g. from track1 to track2) and also other inividual object names when using them in your event definition sequence to be duplicated. Many greetings BahnLand In der Ereignisverwaltung verwendete Objekte müssen immer eindeutig gekennzeichnet sein, damit sie in der Ereignisverwaltung unterschieden werden können. Objektvariablen können über das zugrunde gelegte Objekt referenziert werden. Beispiel: das betrachtete Gleis besitze die Bezeichnung "track1" und die Lokomotive des einfahrenden Zuges den Namen "loco2". Die zum Zug gehörige Außenkamera heiße "camera2". Diese weise man statisch einer Objektvariablen der Lokomotve zu: loco2.camera = "camera2". Der Objektvariablen track1.train werde in der Ereignisverwaltung dynamisch ein Wert zugewiesen. Wenn nun der Zug mit Lok loco2 in das Gleis track1 einfährt, wird die Zuweisung track1.train = $_Trigger1._Name ausgeführt. Die Außenkamera kann nun mittels $(track1.train).camera adressiert werden (ich hoffe, dass die Syntax stimmt). Möchte man dasselbe Verhalten für mehrere Gleise realisieren, muss für jedes Gleis eine eigene Ereignisdefinitions-Folge angelegt werden. Man kann diese zwar vom ersten Gleis duplizieren, muss dann aber die spezifischen Namen (z.B. track1 gegen track2) ausauschen. Viele Grüße BahnLand
  6. Hello Curt, This is also true for me. Could you please make your FaceBook picture available for public access? I don't want to establish an account on FaceBook or other social networks.
  7. Hallo zusammen, bei mir funktionieren die "Sparten" [Neu] und [Verlauf] der Katalog-Anzeige im Modellbahn-Studio (Version 3.1.1.0) - mit Anzeige von Inhalten - einwandfrei. Viele Grüße BahnLand
  8. Hallo Henry und Lutz, Danke für Eure Antworten. Damit ist das aktuelle Verhalten nachvollziehbar geklärt. Die Frage bleibt dennoch, ob sich die Belegung und Freigabe der Kreuzung nicht besser am Anfang und Ende des (kompletten) Zuges ausrichten ließe. Aber das würde im Modellbahn-Studio wahrscheinlich einen ziemlich großen Änderungsaufwand bedeuten. Viele Grüße BahnLand
  9. Hello Trevor, may be, that "object variables" can help you: In contrast to normal variables, which are identified by an arbitrary name, object variables are assigned to a specific object (e.g. a locomotive) and then referred by objectName.variableName. See the example below: Defining an object variable "by hand", mark he object (in the example above the locomotive) and select the object variable editor by a click to the icon surrounded with a red circle. The definition window for variables to be assigned to the marked object will be opened. Here, you can specify the variables and assign values. You can find already defined variables in the event control window after you have selected the link "Active timers and variables" at the right bottom corner. You can manipulate the object variables also here. Using the event control environment for manipulating and evaluating object variables, handle them analogously to normal variables with the difference, the object variables are referred by the syntax already shown above: "objectname.variablename". Many greetings BahnLand
  10. Hallo Neo, die Kreuzungen im Modellbahn-Studio besitzen ja die interessante Eigenschaft, dass ein die Kreiuzung momentan belegender Zug die Einfahrt eines weiteren Zuges in die Kreuzung verhindert. Diese Eigenschaft nutzte ich insbesondere, um meine Anlagen "Ablaufberg" und "Bahnübergangs-Steuerung" aus dem Online-Katalog zu realisieren. Nun habe ich bei einem Test festgestellt. dass der an der Kreuzung aufgehaltene ZUg "vorzeitig" losfährt und daher durch den Zug, der die Kreuzung noch nicht komplett verlassen hat, einfach "hindurch" fährt. Ich kann dieses Phänomen jetzt etwas präzisieren: Trifft ein auf die Kreuzung fahrender Zug auf eine durch ein Fahrzeug belegte Kreuzung, wird er erwartungsgemäß angehalten. Hat das Fahrzeug die Kreuzung verlassen, fährt der wartende Zug los, unabhängig davon, ob es das letzte Fahrzeug des die Kreuzung belegenden Zuges war, oder noch weitere Fahrzeuge des Zuges nachfolgen. Handelt es sich bei dem die kreuzung belegenden Fahrzeug um ein "langes" Fahrzeug, fährt der blockierte Zug schon in die Kreuzung ein, bevor das blockierende Fahrzeug die Kreuzung komplett verlassen hat. Das Verhalten kann mit der beigefügten Demo-Anlage "Lok-Scooter" leicht nachvollzogen werden. Lok-Scooter.mbp Eigentlich sollte hier der blockierte Zug warten, bis der blockierende Zug (mit sämtlichen angehängten Einzel-Fahrzeugen) die Kreuzung komplett geräumt hat. Viele Grüße BahnLand
  11. Hallo Michael, das sind verschiedene Modelle, die der Erbauer beim Hochladen in den Onine-Katalug als einzelne Stufen (Levels) hinzufügen muss. Ich habe hierbei immer das detailreichste Modell zuerst gebaut und dann für die weiteren "LoD-Stufen" (LoD = Level of Details) entsprechend "abgespeckt", indem ich für die höheren Stufen "überflüssige" Konturen und Reliefs durch einfache Flächen ersetzt habe. Das Programm kann das nicht automatisch machen, weil es nur eine "Ansammlung von Flächen-Dreiecken" sieht und somit einerseits nicht beurteilen kann, welche für geringere Detailstufen "unwichtigere" Dreiecke (Poygone) wegelassen werden können, und auch nicht in der Lage ist, stattdessen eine neue einfachere Fläche einzusetzen (sonst hätte man hier ja ein "Loch"). Viele Grüße BahnLand
  12. Hallo Michael, werden im Vorschaufenster eines Modells verschiedene Levels ausgewiesen, so besitzt das Modell entsprechend viele Detailstufen. Das obige Bild zeigt das Vorschaubild eines Eurofima-Wagens mit 3 Detailstufen, wobei Level 0 die Stufe mit den meisten Details und Level2 die Stufe mit den wenigsten Details ist. Das Modellbahn-Studio setzt nun in der Nähe die niedere Detailstufe mit vielen Polygonen (also mit vielen Details) und für die Darstellung des Modells in der Ferne die höhere Detailstufe mit weniger Polygonen (also mit weniger Details) ein. Verschiebt man entlang des grünen Balkens den blauen Schieberegler, wird das Modell "mit entsprechendem Abstand" (also größer oder kleiner) dargestellt. Die schwarzen Rechtecke über dem grünen Balken geben die Entfernungen an, bei welchen das Modellbahn-Studio in der Darstellung von einem in den nächsten Level wechselt. Die Position der Rechtecke (d.h. die Entfernungen für den jeweiligen Detailstufen-Wechsel) legt hierbei der Erbauer des Modells fest. Im Bild rechts oben ist beim Öffnen die Detailstufe 0 eingeblendet, die für dieses Modell 10596 Polygone (jedes Modell wird aus Dreiecks-Flächen - das sind die Polygone - zusammengesetzt) und 7 Materialen ausweist. Klickt man mit der Maus auf eine andere Detailstufe (hier "Level1" oder "Level 2"), so werden an dieser Stelle die Daten jener Detailstufen angezeigt (der blaue Balken kennzeichnet die ausgewählte Detailstufe). Ich habe in diesem Bild die Anzeigen dieser Detailstufen unten rechts hinzugefügt. Man sieht hier, dass mit jeder höheren Detailstufe die Anzahl der im Modell enthaltenen Polygone mehr als halbiert wurde. Die Anzahl der Materialien wurde in Detailstufe 2 von 7 auf 5 reduziert, Hier erwartet das Modelbahn-Studio jedoch weniger als 5 Materialien, weshalb das Modell in dieser Szufe als "zu komplex" eingestuft wird (gelbes Ausrufezeichen statt grünes Häkchen). Das nächste Bild zeigt die Darstellung desselben Wagens diesseits und jenseits des Wechsels von Detailstufe 0 zu Detailstufe 1. Kurz vor dem Wechsel sind die Drehgestelle noch "durchbrochen", kurz hinter dem Wechsel "durchgehend schwarz" (die Aussparungen werden im Modell der Stufe 1 nicht mehr dargestellt). Durch einen Klick auf das schwarz-weiße Kästchen rechts unten kann man zwischen der Darstellung im "Tagmodus" und im "Nachtmodus" umschalten. Bei diesem Modell sieht man im Nachtmodus, dass es eine Innen- und Schlussbeleuchtung besitzt. Ich habe hier die Darstellung des Fahrzeugs in allen 3 Leveln in einem Bild "vereinigt". Man sieht hier, dass die Beleuchtung auch noch in der Entfernung für die Deteilstufe 3 sichtbar ist, auch wenn man den Wagen "als solchen" nicht mehr erkennen kann. Daher plädiere ich dafür (das ist jetzt meine persönliche Meinung), dass das Licht auch in der dritten Detailstufe noch berücksichtigt werden sollte, da sonst im Zug beim Übergang die diese Stufe plötzlich "das Licht ausgeschaltet" wird. Bei Tag wäre in der hier gezeigten Entfernung für Level 2 von dem Wagen nur noch ein dunkler "Balken" zu sehen, weshalb die Details in dieser Stufe entsprechend reduziert werden können. Auf realen Anlagen ist im Gegesatz zu diesem Virschaubld auch in dieser Entfernung noch mehhr als "nur ein Balken" zu sehen, weshalb auch im Level 2 noch "ein paar Polygone mehr" spendiert wurden. Viele Grüße BahnLand
  13. Hallo liebe Hobby-Kollegen, herzlichen Dank für Eure Antworten. Nach Euren Test-Ergebnissen zu urteilen, scheint sich die Verarbeitungsgeschwindigkeit des Modellbahn-Studios bei identischer Anlagen-Konfiguration, gleicher Kamera-Perspektive und unveränderten MBS-Einstellungen tatsächlich im Wesentlichen an der CPU-Geschwindigkeit, jedoch nicht am Potential der Grafikkarte zu orientieren. Dies erklärt auch, warum bei den unterschiedlichen Grafikkarten (im Gegensatz zu den Taktgeschwindigkeiten der CPUs) so gut wie keine Performance-Unterschiede festzustellen sind. @Holzwurm: Danke für Deine NVIDIA-Konfigurations-Angaben. Ich habe sie auch mit meiner Grafikkarte ausprobiert - einen signifikanten Unterschied bei der Verarbeitungsgeschwindigkeit konnte ich dabei gegenüber den ursprünglichen Einstellungen jedoch nicht erkennen. Dies könnte insbesondere mit der Feststellung aus dem obigen Absatz zusammenhängen. Dass die FPS-Rate bei Deiner Messung mit Kamera 8 so absackte, erkläre ich mir damit, dass sie sich zum Zeitpunkt der Messung noch "ganz oben am Gotthard" befand. Da die Kamera 8 nach "Norden" blickt, erfasst sie hier noch alle auf der Anlage platzierten Objekte (auch die durch "Vordergrund" verdeckten - bis hinunter nach Erstfeld). Erst wenn sich die Anzahl der im Blickfeld erfassten und damit darzustellenden Objekte mit fortschreitender Bewegung der Kamera nach Norden reduziert, steigt auch die FPS-Zahl dieser Kamera wieder an. Im Gegenzug sinkt die FPS-Zahl der Kamara 9, die sich mit der Kamera 8 zusammen fortbewegt, aber nach Süden blickt, immer weiter ab, weil in deren Erfassungsbereich die Anzahl der darzustellenden Objekte entsprechend ansteigt. Bei den Cockpit-Kameras, kann man übrigens den gleichen Effekt wie bei den Kameras 8 und 9 beobachten: Wenn die Cockpit-Kamera über die gesamte Anlage "blickt", geht die FPS-Zahl in die Knie. Ist die Cockpit-Kamera jedoch zur Anlagen-Seite ausgerichtet oder blickt sie am jeweiligen Ende der Anlage zum näher gelegenen Anlagen-Rand, steigt auch hier die FPS-Zahl wieder an. Viele Grüße BahnLand
  14. Hello Curt, see below: It's part from the demo layout which can be downloaded here. This is the only way to put the content of a referred variable into a caption. It is not possible to assign a variable to the caption in that sense, that the caption content will be automatically changed as soon as the variable itself is changed. Many greetings BahnLand
  15. Hallo Schlagerfuzzi, nur zu meiner Orientierung: Kannst Du mal die Anlage "Gotthard Nordrampe (in Betrieb)" aus dem Online-Katalog auf Deinem neuen Rechner starten und dort die FPS-Zahl ein Weilchen beobachten und mir dann mitteilen? Du brauchst nach dem Start an der Anlage nichts anzuklicken, da sie nach dem Laden bereits "in Betrieb" ist. Lasse auch die Ansicht so, wie Du sie beim Start vorfindest, einfach stehen (siehe Bild). Aus dieser Perspektive zeigt mein altes Laptop im Schnitt 4,7 FPS, das neue durchschnittlich 12,7 FPS. Natürlich wird Deine 970er-Grafikkarte noch etwas schneller sein, aber Deine FPS-Zahl würde mich einfach als "Anhaltspunkt" interessieren. Ich bin mir auch nicht sicher, ob die "Werkseinstellungen" für die Grafikkarte auf Rechnern verschiedener Hersteller (ACER, Asus, HP, ...) eventuell differieren (meiner ist ein ACER). Deshalb möchte ich Dich zusätzlich bitten, mir Deine Einstellungen der Grafikkarte mittzuteilen, damit ich direkt vergleichen kann (siehe die Bilder im Ausgangs-Beitrag). Läuft auf Deinem PC auch Windows 10? Dann gelangst Du zur NVIDIA-Systemsteuerung direkt durch Eingabe dieses Ausdrucks im Suchfeld der Taskleiste links unten ("Web und Windows durchsuchen"). Wenn Du Hardcopies von den oben gezeigten Fenstern der NVIDIA-Systemsteuerung ziehst, vergiss bitte nicht zu scrollen, da im originalen Programmfenster nicht alle Eingaben auf einmal zu sehen sind (ich habe die obigen Bilder entsprechend zusammengesetzt). Ich würde dann einfach mal Deine Einstellungen - wenn nicht bereits mit meinen übereinstimmend - ausprobieren. Wenn Du an der Systemsteuerung Deiner Grafikkarte bisher keine Änderungen vorgenommen hast, gibt es bei Dir möglicherweise noch Optimierungspotential: Da habe ich nämlich von Hand das Modellbahn-Studio als zu berücksichtigendes Proramm hinzugefügt und die Einstellung "NVIDIA Hochleistungsprozessor" zugewiesen. Das brachte im Modellbahn-Studio gegenüber vorher eine Geschwindigkeitssteigerung von etwa 50% (in der obigen Kamera-Ansicht eine Steigerung von 8,x FPS auf 12,x FPS). Vielleicht kannst Du da selbst noch etwas herausholen. Viele Grüße BahnLand
  16. Hallo Lobo, besonders der Holzwagen gefällt mir sehr gut. Viele Grüße BahnLand
  17. Hallo Schlagerfuzzi, eigentlich ging es mir bei meiner Frage nicht um die Einstellungen im Modellbahn-Studio selbst - die sollten ja für einen direkten Vergleich beider Laptops möglichst identisch sein, sondern darum, wie ich die Grafikkarte konfigurieren und deren Nutzung im Windows einstellen muss, dass sich für das Modellbahn-Studio bzw. für deren Betrieb unserer virtuellen Anlagen eine optimale Verarbeitungsgeschwindigkeit ergibt. Trotzdem vielen Dank für Deine Antwort. Viele Grüße BahnLand
  18. Hallo Neo und Gemeinde, ich besitze seit letzter Woche ein neues Laptop und bin gerade dabei, es einzurichten. Das Modellbahn-Studio habe ich vom alten Rechner bereits übernommen und auch schon ausprobiert. Auch habe ich schon eine signifikante Beschleunigung festgestellt, hatte mir allerdings noch etwas mehr erwartet. Nun kann ich leider nicht beurteilen, ob einfach meine Ansprüche zu hoch sind, oder ob meine Einstellungen noch nicht stimmen. Deshalb hoffe ich hier in der Runde jemanden zu finden, der sich mit NVIDIA-Grafikkarten auskennt oder eventuell sogar dieselbe Grafikkarte wie ich (GeForce GTX 950M) besitzt. Hierzu anbei meine Daten: Zunächst ein direkter Vergleich der Ausrüstungen meines alten und nezen Laptops: Nun die Einstellungen meiner GeForce Grafikkarte: Dies ist die globale Standard-Einstellung. An den "Globalen Einstellungen" habe ich nichts verändert. Bei den "Programmeinstellungen" habe ich das Modellbahn-Studio in die Programmliste aufgenommen und als Grafikprozessor die NVIDIA-Grafikkarte zugewiesen. Die Einstellungen in der angezeigten Liste habe ich ebenfalls unverändert gelassen. Zum Testen der Verarbeitungsgeschwindigkeit habe ich meine im Online-Katalog abgelegte Anlage "Gotthard Nordrampe" herangezogen (sie dürfte eine der "härtesten" Anlagen im Modellbahn-Studio sein). Fast in allen Perspektiven bekomme ich (wie erwartet) eine flüssige Darstellung der Bewegungsabläufe. Der "Härtetest" ist jedoch die Führerstandsmitfahrt. Hier geht mein alter Rechner bei der Einfahrt aus dem südlichen Abstellbahnhof in den Gotthard-Scheiteltunnel (in Richtung Göschenen) mit der FPS-Zahl 1,9 fast in die Knie, um dann im Tunnel selbst auf etwa 3,5 anzusteigen. Im Bahnhof Göschenen selbst erhöht sich dann die FPS-Zahl auf etwa 3,7, um dann bei der Tahlfahrt unterhalbvon Göschenen auf etwa 4 anzusteigen. Die direkten Vergleiszahlen auf dem neuen Laptop lauten 7,3, 9,7, 10,2 und 10,9. Beim Verfolgen eines Zuges aus der Luft zeigt das alte Laptop 12,7 FPS, das neue etwa 30 FPS. Beim konstanten "3-Ebenen-Blick" bei Wassen bewegen sich die zu vergleichenden FPS-Zahlen um 9,1 und 20,7. Insgesamt schließe ich daraus, dass die Verarbeitungsgeschwindigkeit meines neuen Laptops beim Modellbahn.Studio etwa um den Faktor 2,2 bis 3,5 schneller ist als beim alten Laptop. Dass die FPS-Werte insgesamt "am Boden kriechen" und insbesondere beim Blick über die gesamte Anlage (von Göschenen bis Erstfeld) absacken, ist klar. Nun meine Frage: Ist dies die bei den genannten HW-Komponenten zu erwartende Performance-Steigerung (d.h. habe ich meine Erwartungen eventuell etwas zu hoch geschraubt) oder habe ich meine Einstellungen noch nicht optimal gewählt? Leider fehlt mir das Know-How, um eine Grafikkarte bewerten und optimal konfigurieren zu können. Deshalb wäre ich für mir weiter helfende Ideen sehr dankbar. Viele Grüße BahnLand
  19. Hello Curt, (deutsche Fassung am Ende) I have updated the example above: Loco identification 2.mbp Now, you additionally find 2 variants of variable check: The folder "Example Check 1" contains 2 variable check events which test whether the variable changes to a specific value (this can also be a reference to a variable ($VariableName)). But it is necessary, that a value is really specified in the value field. If you don't specify a value here (value field contains nothing), the "empty string" (containing not any character) is assumed as value. To make the event activatable in any cases where the variable alters, independent of its real value, you must check the variable for its actual value ($VariableName of variable to be checked), where the test result is always true. Then, you can use the Conditions part of the event definition to check the variable for a specific value (or other variable content). This is realized in the folder "Example Check 2" of the present event definition package: The event reacts to any varable modification independent of the variable content, then checks the value in the Conditions part, and finally starts an action if the condition matches as well as an alternaive action if the condition doesn't match. Many greetings BahnLand Deutsche Fassung: Das Ereignis "Variable wird gesetzt" erwartet immer einen konkreten Variablenwert, auf den die Variable verglichen werden kann. Bei der Abfrage nach Textinhalten kann hierbei nur auf Gleichheit abgefragt werden. Lässt man das Eingabefeld für den Wert leer, wird als Wert die "leere Zeichenkette" (kein Zeichen vorhanden) angenommen. Das Ereignis wird also nur dann ausgelöst, wenn die (Text-)Variable den in der Ereignisdefinition sspezifizierten Wert (kann auch eine Referenz auf eine Variable sein ($Variablen-Name)) besitzt. Um das Ereignis bei jeder beliebigen Variablen-Änderung auszulösen, setzt man als Vergleichswert den aktuellen Inhalt der Variable ein (Beispiel: Name der Variablen = CheckVariable, Vergleichswert = $CheckVariable). Dieser Vergleich ist immer "wahr", sodass das Ereignis bei jeder Änderung der Variable ausgelöst wird, ohne dass man den Inhalt der Variable kennen muss. Den tatsächlichen Vergleich schiebt man dann in den Abschnitt "Bedingungen" der Ereignisdefinition und kann dann sowohl Aktionen für die Erfüllung der Bedingung als auch Alternativ-Aktionen für den Fall, dass die Bedingung nicht erfüllt ist, spezifizieren. Ein entsprechendes Beispiel befindet sich im Abschnitt "Example Check 2" der Ereignisdefinition des beigefügten Anlagen-Beispiels. Viele Grüße BahnLand
  20. Hello Curt, see the following example. Loco identification.mbp Many greetings BahnLand
  21. Hallo Neo, anlässlich meines letzten Beitrags zur Kamera-Verfolgung eines Zuges habe ich nach sehr langer Zeit wieder einmal meine "Gotthard Nordrampe (in Betrieb)" aus dem Online-Katalog aktiviert. Dabei ist mir aufgefallen, dass mein dort implementiertes Autoverlad-Szenario aufgrund eines etwas seltsamen Verhaltens der Fahrzeugkupplung nicht mehr funktioniert. Das Problem lässt sich nach dem Laden der hier genannten Gotthard-Anlage jederzeit nachstellen, wenn man wie folgt vorgeht: Nach dem Laden der Anlage findet man folgende Situation vor: Die Züge entlang der Hauptstrecke und die Autos auf den Straßen fahren. Im Verladebahnhof des "Autoverlad" passiert jedoch nichts. Ein Zug (siehe Bild) steht an der Verladerampe, der andere hängt im Gotthard-Tunnel fest. Weist man nun dem Zug im Tunnel eine Geschwindigkeit zu, fährt er auf das freie Gleis im Verladebahnhof ein und macht den Weg für den anderen Zug frei. Dieser fährt tatsächlich nach einiger Zeit los, verliert dabei aber seine hintere Hälfte, die einfach stehen bleibt. Dieses Problem habe ich nun genauer untersucht und habe dabei den nachfolgend beschriebenen (reproduzierbaren) Effekt festgestellt: Damit der im ersten Bild sichtbare Autoverlad-Zug mit der Maus bewegt werden kann, ohne dass hierdurch ungewollte Ereignisse ausgelöst werden oder der Zug nach dem Loslassen der Maus einfach weiter fährt, müssen zuerst der Simulationsmodus (links oben) und das Autverlad-Szenario (Schalter Autoverlad) ausgeschaltet werden. Nun greift man die linke Lok mit der Maus an und versucht den Zug etwas nach links zu ziehen. Obwohl die Wagen vorher alle zusammenhingen, wird der Zug nun in der Mitte getrennt - der hintere Zugteil bleibt einfach stehen. Nun wird der letzte Wagen des weggezogenen Zugteils aus dem Gleis gehoben und wieder an dieselbe Stelle zurückgesetzt. Dieser Schritt ist notwendig, damit der Effekt des nächsten Schrittes auch wirklich zutage tritt. Lässt man diesen (eigentlich "redundanten") Schritt aus, kann es vorkommen, dass der im nächsten Schritt beschriebene Effekt nicht auftritt. Nachdem der "herausgehobene" Wagen wieder eingesetzt wurde, versucht man nun mit der Maus, den hinteren Zugteil an den vorderen Zugteil heran zu schieben und anzukuppeln (roter Pfeil). Doch welche Überraschung: Der vordere Zugteil scheint eine "Aversion" gegen seine hintere Hälfte zu haben und weicht aus, indem er ebenfalls ein Stück weit nach vorne fährt, und damit die eigentlich durch den hinteren Zugteil zu schließende Lücke aufrecht erhält (violetter Pfeil). Was geht hier vor sich? Mir ist völlig unerklärlich, wieso sich zwei Kupplungen plötzlich gegenseitig abstoßen. Ich habe die Anlage zuletzt im vergangenen Januar hochgeladen. Damals lief die Anlage einwandfrei. Ich kann aber nicht sagen, ob ich die Anlage zwischendurch nochmals betrachtet habe. Deshalb kann ich auch nicht sagen, ab wann innerhalb dieses Zeitraums dieser Teil der Anlage nicht mehr funktionierte. Ich habe zwar seit einer Woche ein neues Laptop, aber der Fehler tritt sowohl beim neuen als auch beim alten Laptop auf. Es kann also nicht an der neuen Hardware liegen. Dann habe ich noch ein Problem bei meiner "Arnibergbahn" (auf derselben Anlage) festgestellt, dass ich mir ebensowenig erklären kann: Zugegebenermaßen sind hier die Gleise nicht gerade besonders "glatt" verlegt, was aber bei einer "Feldbahn" auch beim Vorbild durchaus realistisch ist. Dennoch bleibt der Feldbahnzug (eigentlich war es beim Vorbild ja eine "Seilzug-Lorenbahn" - sie ist inzwischen abgebaut) beim ersten Passieren des "Knicks" (Bergfahrt) einfach stehen. Schalte ich nun die Anlage vom Simulationsmodus in den Planungsmoddus um, .... ... fährt der Zug eine Lorenlänge weiter, um dann erneut stehen zu bleiben. Schalte ich nun auf den Simulationsmodus zurück, ... ... fährt der Zug schließlich komplett weiter (wäre noch ein Lore angehängt gewesen, hätte er vermutlich noch einmal angehalten). Wenn ich nun den Zug talwärts zurück fahren lasse, wird der Knick anstandslos überwunden. Und bei einer nachfolgenden erneuten Bergfahrt tritt das Symptom auch nicht mehr auf (die Knickstelle wird ohne Halt passiert). Auch dieses Problem lässt sich problemlos nachstellen, indem man jedes Mal die Anlage neu lädt. Abschließend möchte ich noch ein weiteres Problem ansprechen, das vermutlich mit den obigen Problemen nichts zu tun hat. Während auf der im Stillstand befindlichen Anlage "Gotthard Nordrampe" (ohne den Zusatz "(in Betrieb)") alle Fahrzeuge einzeln (oder mit Anhänger) über die Straßen fahren, sobald das Straßen-Szenario gestartet wird, sind die Straßenfahrzeuge auf der hier beschriebenen Anlage wie bei "geronnener Milch" zusammengeklumpt. Auch hier ist mir nicht klar, wie es hierzu kommen konnte. Beim Hochladen im Januar waren die einzelnen Einzelfarzeuge und Anhänger-Züge sauber getrennt. Ich kann mir daher nicht vorstellen, wie es "auf einen Schlag" (d.h. beim Laden der Anlage) zu diesem "Gerinnungsprozess" kommen kann. Ursprünglich hatte ich bei allen Straßenfahrzeugen die "Geschwindigkeitsanpassung am Berg" eingestellt. Da schwerere Fahrzeuge im Gefälle stärker beschleunigt (und am Berg stärker verzögert) werden als leichtere Fahrzeuge, konnte ich damals den "gemächlich" stattfindenden Verklumpungsprozess nachvollziehen. Deshalb habe ich bei der in den Online-Katalog hochgeladenen Anlage auch bei allen (vorderen) Straßenfahrzeugen diese Eigenschaft abgeschaltet. Ein gegenseitiges Auffahren von Fahrzeugen sollte daher nicht möglich sein. Auch vor diesem Hintergrund ist es mir völlig schleierhaft, wie es zu dieser Situation kommen konnte. Übrigens: Auch wenn bei der "im Ruhezustand" befindlichen Anlage "Gotthard Nordrampe" das Autoverlad-Szenario mit dem zugehörigen Schalter anstandslos gestartet werden kann und der erste Zug (der von den Prellböcken her gesehene linke) ordentlich in den Gotthard-Tunnel einfährt und von dort auch wieder korrekt zurück kommt, lässt der rechte Zug beim Losfahren die hintere Zughälfte stehen. Es existiert also auch bei dieser Anlage dasselbe Problem, das ich hier als ersten Punkt beschrieben habe. Auch das "Arniberg-Problem" konnte ich auf dieser Anlage nachstellen. Viele Grüße BahnLand
  22. Hello Curt, (deutsche Kurzfassung am Ende dieses Beitrags) the cockpit camera is always directly coupled with the corresponding locomotive. Therefore, this camera changes its position automattically whenever the locomotive moves. In contrast, the "free 3D camera" can never be connected to any objekt. It only can be moved by the mouse or the arrow keys. Therefore, it is quite plain why the free 3D camera keeps its position when the cockpit camera is moved together with the corresponding locomotive. If you want to follow the train also from outside, you must add a user-defined camera and connect it to the train to be followed. Let the camera also track the object, so that it shows always to the train and does not look to any direction elsewhere. For some realized examples look for the layouts "Gotthard Nordrampe (in Betrieb)" and "20-Zug-Anlage (Betrieb)" within the Online-Catalog. Both layouts are already "in run" after they have been loaded. In the first layout "Gotthard Nordrampe (in Betrieb)" you find 10 pre-defined camera views, which can be selected from the upper button row. Cameras 1, 2 and 5 are connected each to a vehicle (train car or street car), which is also selected to be followed from the camera. At camera view 0, the camera is connected to another vehicle of the train than the train car to be followed. Therefore, the camera view can better follow the train or trackline when driving through a curve. The picture above shows the train to be followed by the camera. Within the picture below the green line shows to which wagon ("Eurofima TEE 10") the camera (red square) ist connected. The blue line shows in which direction (to wagon "Eurofima TEE 4", blue point) the camera looks. You can also find the camera name ("Kamera Zugverfolgung"), the connection (when moving the mouse over the chain link) and the track object in the property window of the camera. Cameras 3 and 4 are fix positioned cameras without following: they show a fix field of view. Please ignore in view 4, that the car shuttle train scenario currently doesn't work. There is a new error, which is not yet found. A more complex camera view scnario is realized with view 6, where the followed steam train is viewed from different perspectives depending on the geometry of the track line currently passed. The considering camera ("Kamera Dampfzug") ist controled by 2 further "adjustment" cameras, which are connected and followed one another. In the picture below, the 1st adjustment camera ("Justierkamera 31", red square) is connected to the last wagon of the train ("Pullmanwagen 9"). This camera tracks the "Pullmanwagen 6" (green point) in the mid of the train along the green line. Continue the green line to find the position of the 2nd adjustment camera ("Justierkamera 32", green square). This is connected to the 1st adjustment camera "Justierkamera 31" and therefore everytime lying on the green line specified by this camera and "Pullmanwagen 6", independent of the position and curvature of the train. Consider now "Justierkamera 32", which follows "Lok_13", the 1st steam engine (blue point) of the double heading at the front of the train. With continuation of this blue line, find the final "Kamera Dampflok" (blue square), which is connected to the "Justierkamera 32" and follows the 2nd steam engine (yellow point) along the yellow line. This is the final view 6 from the list of views within the button list above the program window. Because of this coupling mechanism of different cameras, the "Kamera Dampflok" view may vary around "straight forward" between a little bit left side and a little bit right side depnding on the curvature of the train (try it out by selecting this camera). Some further constructs with a little bit complexity are the views 7, 8 and 9. Within view 7 a street car is followed from almost straight above, Within views 8 and 9 the view from "whitewater kayaking" down the Reuss river is simulated. If you have loaded the 2nd layout "20-Zug-Anlage (Betrieb)", you can select the camera "#-Hubschrauber" (helicopter view) from the "View"-menu. The specific character of this view is, that the camera is connected to one train and follows another train. Try also the other views from this layout which can also be selected by use of the "View"-menu (when this layout was realized with an older version of 3D TrainStudio, the camera preview buttons did not yet exist). A further variant of camera usage you can find in the video "Schneetreiben am Gotthard" (snow drift at the Gotthard region): Here, the camera is fix positioned above the Reuss valley near Wassen and follows a train climbing up the Gotthard ramp locating the train directly above the "Säcken-Viadukt" between Amsteg and Gurtnellen, and losing the train when passing the "Ahorn-Steinkehle-Galerie" quite below Göschenen. While the train was automatically followed by the camera, the variation of the zoom levels was done "by hand". Many greetings BahnLand Deutsche Kurzfassung: Um einen ZUg mit einer Kamera von außen verfolgen zu können, benötigt man eine Benutzer-definierte Kamera. die entweder direkt oder über eine "Gelenk-Konstruktion" mit dem Zug verknüpft wird. Die beiden bebilderten Beispiele zeigen Situationen von der Anlage "Gotthard Nordrampe (in Betrieb)", bei der in der Button-Leiste 10 vordefinierte Kamera-Einstellungen hinterlegt sind. Die ersten beiden Bilder beschreiben die Kamera-Einstellung "0", bei der die Kamera oberhalb des letzten Wagens des TEE-Zuges positioniert und mit diesem verknüpft (grüne Linie), aber auf einen Wagen in der Zugmitte ausgerichtet ist (blaue Linie). Die Kamera verfolgt somit den Zug im "Vogelflug". Das in den nächsten zwei Bildern dargestellte Kamera-Konstrukt beinhaltet neben der eigentlichen Verfolger-Kamera "Kamera Dampflok" zwei zusätzliche "Justier"-Kameras ("Justierkamera 31" und "Justierkamera 32"), mit deren Hilfe ein "Hebel-Mechanismus" zu Steuerung der eigentlichen Verfolgerkamera gebaut wurde: Die Justierkamera 32 (rotes Viereck) ist mit dem letztem Wagen verknüpft und an einem Wagen in Zugmitte ausgerichtet (grüne Linie), Die Justierkamera 31 ist in Fortsetzung der grünen Linie positioniert (grünes Viereck), mit der Justierkamera 32 verknüpft und auf die führende Dampflok ("Lok_13") ausgerichtet (blaue Linie). Die eigentliche Verfolgerkamera ist in Fortsetzung der blauen Linie positioniert (blaues Viereck), mit der Justierkamera 32 verknüpft und auf die zweite Deampflok ("#Lok_14") der Doppeltraktion ausgerichtet (die Einstellungen im Eigenschaftsfenster aller Kameras sind unterhalb der Bilder aufgelistet). Durch diesen Hebelmechanismus wird bewirkt, dass sich die Verfolgerkamera "Kamera Dampflok" in Abhängigkeit von der vom Zug durchfahrenen Gleiskrümmung vor dem Zug seitlich hin und her bewegt und damit automatisch eine Variation der Kamera-Einstellung vor dem Zug entsteht. Eine weitere Variante der Kamera-Führung ist in der Anlage "20-Zug-Anlage (Betrieb)" realisiert. Die Benutzer-definierte Kamera "#-Hubschrauber" ist an einen Zug angeheftet, verfolgt aber einen anderen Zug, wodurch im Verlauf des Anlagenbetriebs die unterschiedlichsten Kamera-Einstellungen zustande kommen. Als letzte Kamera-Einstellung sei noch jene aus dem Video "Schneetreiben am Gotthard" erwähnt, bei der die Kamera an einem festen Punkt über dem Reusstal nahe Wassen schwebt und einen bergan fahrenden Zug das Reusstal entlang vom Säckenviadukt zwischen Amsteg und Gurtnellen (gerade hinter dem Berg nicht mehr sichtbar) bis zur Ahorn-Steinkehle-Galerie kurz vor Göschenen verfolgt. Viele Grüße BahnLand
  23. Hallo Michael, in diesem Beitrag schrieb Wüstenfuchs, dass im Modellbahnstudio einzusetzende Texturen alle 2er--Potenzen als Kantenlängen besitzen müssen. Dies stimmt zwar für alle Texturen, die zum "Einfärben" von 3D-Modellen (Fahrzeugen, Bauwerken, Lebewesen usw.) verwendet werden, nicht aber für Gleistexturen. Soll deren Bild verzerrungsfrei (d.h. so, wie in der Textur wiedergegeben) auf das Gleis übertragen werden, muss dessen Kantenverhältnis 5:1 betragen (z.B. 1280 Pixel breit und 256 Pixel hoch). Wollte man hier 2er-Potenzen für alle Kanten verwenden (z.B. 1024 x 256 Pixel), müsste man das Texturbild entsprechend "verzerren", damit die Wiedergabe auf dem Gleis nachträglich "stimmig" ist. Bei meinen Bildbeispielen im von Dir genannten Beitrag habe ich das Format (Kantenverhältnis) abgebildet. Viele Grüße BahnLand
  24. Hallo Modellbahnspass, auch wenn Deine Modelle bekanntermaßen etwas "grob" ausfallen und deshalb recht klein dargestellt werden, haben viele davon doch einen großen "Wiedererkennungswert" (z.B. die "Capitole"-Version der BB 9200 oder die BB 67000 im obigen Bild). Es ist schon beeindruckend, welche Modelle Du mit der "einfachen Überstülp-Methode" zustande bringst. Viele Grüße BahnLand
  25. Hallo Maik, es gibt heute 3 verschiedene Sorten von Animationen, die in Abhängigkeit von der Fahrt und der Fahrtrichtung einer Lokomotive durch das Modellbahn-Studio automatisch angestoßen werden können: _AnimRun - wird vorwärts gestartet, wenn die Lok anfährt, und rückwärts gestartet, wenn die Lok anhält _AnimRunPositive - wird vorwärts gestartet, wenn die Lok mit positiver Geschwindigkeit anfährt, und rückwärts gestartet, wenn die Lok anhält _AnimRunNegative - wird vorwärts gestartet, wenn die Lok mit negativer Geschwindigkeit anfährt, und rückwärts gestartet, wenn die Lok anhält Allerdings müssen die vom Erbauer der Lok realisierten Animationen mit exakt diesen Bezeichnungen versehen worden sein, damit sie vom Modellbahn-Studio als solche erkannt werden. Normalerweise wird 1. dazu verwendet, Stromabnehmer anzulegen, sobald die Lok startet, und sie wieder abzusenken, sobald die Lok anhält. 2. und 3. werden herangezogen, um in Abhängigkeit von der Fahrtrichtung jeweils "vorne" das weiße Spitzensignal und "hinten" das rote Zugschlusssignal anzuzeigen, wobei die Lampen jeweils beim Anhalten wieder ausgeschaltet werden. Theoretisch könnte man nun 2. und 3. auch dazu verwenden, jeweils z.B. den in Fahrtrichtung hinteren Stromabnehmer anzulegen, indem man die jeweilige Stromabnehmer-Animation in die Animation "_AnimRunPositive" oder "_AnimRunNegative" integriert. Dann wären sie aber, wenn auch die Lichtschaltung hierüber realisiert sein sollte, immer mit dieser fest gekoppelt. Möchte man nun mehrere Stromabnehmer getrennt anheben und absenken können, ohne dass sie mit einer möglichen Lichtumschaltung zwangsgekoppelt sind, muss man sie in separate Animationen mit eigenen Bezeichnungen packen. Dann können sie aber vom Modellbahn-Studio nicht mehr beim Starten oder Stoppen der Lok automatisch aktiviert werden. Genau diese unabhängige Schaltung der Stromabnehmer stand bei Franz meiner Meinung nach im Vordergrund, als er diesen Animationen eigene Namen verpasste. Übrigens habe ich persönlich die "Automatik" der 3 oben genannten Animationen immer abgeschaltet, da sie nicht der "Realität" entsprechen: Hält eine Elektrolok im Bahnhof nur kurzzeitig zum Ein- und Aussteigen an, bleibt der Stromabnehmer am Fahrdraht und wird nicht abgesenkt. Soll der Stromabnehmer abgesenkt werden, weil die Lok länger stehen bleiben soll (z.B. im Kopfbahnhof möglich, aber nicht zwingend, oder nach der Abstellung im BW), erfolgt die Absenkung erst, nachdem die Lok bereits steht. Umgekehrt kann die Lok nicht losfahren, bevor der Stromabnehmer bereits an der Oberleitung anliegt. Wendet die Lok, wird das Spitzen- und Schlusssignal ebenfalls im Stand umgeschaltet und geht nicht erst beim Anfahren der Lok oder des Zuges an. Möchte man auf der virtuellen Modellbahnanlage automatisch sowohl die Stromabnehmer "gezielt" anlegen oder absenken als auch die Lichter umschalten, bietet sich hierfür die Ereignisverwaltung an: Bei den automatisierbaren Animationen wird hierfür die Automatik deaktiviert. Nun kann man Ereignis-gesteuert bei jedem beliebigen Ereignis die Stromabnehmer explizit anheben oder absenken und die Lichter in der gewünschten (Richtungs-abhängigen) Anordnung ein- oder ausschalten. Dies funktioniert auch mit Stromabnehmer- und Beleuchtungs-Animationen, die nicht die oben aufgelisteten Bezeichnungen besitzen. Im "Handbetrieb" kann man solche Animationen steuern, indem man sie im Eigenschaftsfenster der Lok vorwärts oder rückwärts ablaufen lässt. Viele Grüße BahnLand
×
×
  • Neu erstellen...