Jump to content
Zum Start hinzufügen

Weitere Informationen

3D-Modellbahn Studio

Eine Vollbild-App auf Ihrem Startbildschirm mit Push-Benachrichtigungen und mehr.

So installieren Sie diese App auf iOS und iPadOS
  1. Tippen Sie auf das Teilen-Symbol in Safari
  2. Scrollen Sie durch das Menü und tippen Sie auf Zum Startbildschirm hinzufügen.
  3. Tippen Sie oben rechts auf Hinzufügen.
So installieren Sie diese App auf Android
  1. Tippen Sie auf das 3-Punkte-Menü (⋮) in der oberen rechten Ecke des Browsers.
  2. Tippen Sie auf Zum Startbildschirm hinzufügen oder App installieren.
  3. Bestätigen Sie durch Tippen auf Installieren.

Neo

Entwickler
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von Neo

  1. Hallo, aktuell sehe ich keinen Bedarf für eine Anpassung. Wie Götz schon gespoilert hat, kommt mit dem nächsten Update eine einfache Möglichkeit, per EV eine Gruppe von Objekten einheitlich anzusteuern. Da stimme ich dir zu, es gibt in einigen Bereichen des Studios noch Verbesserungspotential beim direkten "Verbinden" von schaltbaren Elementen. Hier möchte ich mir in Zukunft aber ein einheitliches Konzept überlegen, weil das auch an anderen Stellen sinnvoll erscheint. Die jetzige Lösung durch die EV ist ein Schritt in diese Richtung, wird aber auch für andere Situationen eingesetzt werden können und war leichter zu implementieren als ein komplett neues Konzept. Grundsätzlich spielt aber die Vereinfachung von Abläufen auch in zukünftigen Versionen eine große Rolle. Viele Grüße, Neo
  2. Neo antwortete auf Neos Thema in Beta-Bereich
    Hallo Andy, danke für das Video, aber ich kann dort kein Problem erkennen, das Zittern bei der Bewegung des Schattens ist wie du schon selbst bei anderen Spielen erkannt hast "by design". Viele Grüße, Neo
  3. Hallo, das self dort ist falsch, mit self greifst du auf das aktuelle Ereignis als Objekt zu. Du willst aber auf eine Tabelle zugreifen, die du global definiert hast. Lass das self einfach weg. Viele Grüße, Neo
  4. Neo antwortete auf Andys Thema in Allgemeine Diskussionen
    Hallo, mein Alltag unterscheidet sich nicht nennenswert von dem Alltag eines normalen Angestellten. Ich arbeite größtenteils tagsüber und in der Woche, ansonsten gibt es bei mir auch Privates und Familie, Urlaube und Krankheitstage, nichts wirklich spannendes. Viele Grüße, Neo
  5. Neo antwortete auf Neos Thema in Beta-Bereich
    Hallo, ja, bedingt durch die verwendete Schattentechnologie würde eine dauerhafte Aktualisierung in einem sichtbaren Zittern resultieren, was noch unschöner wäre (das Zittern sieht man kurz, wenn der Schatten wandert). Das kann ich nicht nachvollziehen, kannst du davon eventuell ein Video drehen, was das Problem aufzeigt? Viele Grüße, Neo
  6. Neo antwortete auf Andys Thema in Allgemeine Diskussionen
    Hallo, ja, über mehrere Ecken kam Franzis auf mich zu und suchte einen Programmierer, der den 3D-Eisenbahnplaner weiter entwickelt. Damals waren die Anforderungen auch noch sehr gering, Hauptsache man konnte ein paar Gleise verlegen und Züge darauf fahren lassen. Richtig Fahrt nahm der 3D-Eisenbahnplaner (und später das 3D-Modellbahn Studio) erst auf, als ich ein Forum eingerichtet habe und die Leute mit den Ideen kamen... Ich habe ehrlich gesagt mit keinen Schwierigkeiten zu kämpfen. Vielleicht habe ich auch die richtige Zeit erwischt, aber durch die heutige Digitalisierung kann jeder, der einen Computer besitzt und Programmieren kann, auch Software für einen größeren Markt eigenständig verkaufen, ohne vorher große Investitionen tätigen zu müssen. Es dauert natürlich immer eine gewisse Zeit, bis das Programm über Google gefunden wird und die Nutzerzahl wächst, diese Zeit gilt es zu überbrücken. Viele Grüße, Neo
  7. Neo antwortete auf Andys Thema in Allgemeine Diskussionen
    Hallo, wenn es um den 3D-Eisenbahnplaner geht, muss man bedenken, dass es sich dabei um zwei Versionen handelt: Version < 6 stammt von irgendwem, ich kenne ihn nicht Version >= 6 stammt von mir, ist eine vollständige Neuentwicklung und hat mit dem 3D-Eisenbahnplaner < 6 nichts gemeinsam, außer, dass ich die Gleisdaten aus der alten Version übernommen habe. Das war eine schöne Zeit, als Kind wollte man halt nur Ballerspiele programmieren Viele Grüße, Neo
  8. Hallo, die Bedingung "Zeitpunkt überschritten" ist für einen Zeitbereich gedacht, du interessierst dich aber für konkrete Zeitpunkte. Dafür kannst du direkt auf die Zeit prüfen: Alternativ (und performanter) kannst du ein Ereignis pro Zeitpunkt definieren und darin ein benutzerdefiniertes Ereignis mit den Aktionen aufrufen, dann vermeidest du Redundanzen. Viele Grüße, Neo
  9. Hallo Timba, das passiert aber nur bei der Anzeige, intern rundet das Studio nicht bzw. dort wird die volle Gleitkomma-Bandbreite verwendet. Das Verhalten von Bewegungen im Studio ist stark von der Frame-Zeit (FPS) abhängig. Je weniger FPS, desto größer sind die Schritte, die pro Frame gegangen werden müssen. Bei 4x-Abspielgeschwindigkeit werden die Schritte entsprechend größer. Um allerdings negative Effekte etwas zu dämpfen werden zu große Schritte in kleinere Teilschritte unterteilt. Dennoch bleibt am Ende ein etwas zufälliges Ergebnis übrig, wie in der Realität Viele Grüße, Neo
  10. Und Delphi, der Programmiersprache vom MBS Unabhängig davon finde ich die konsequente Kleinschreibung von Lua nicht besonders gut, ich hätte mir lieber ein toString() oder toNumber() gewünscht. In der Programmierung ist es wichtig, konsistent zu bleiben, und wenn man das bei Lua strikt einhalten wollen würde, würde das sehr unleserlich werden: layout:getentitiesbykeyword. Aus diesem Grund habe ich mich für camelCase entschieden und das entsprechend konsistent durchgezogen, weshalb es toTime() und nicht totime() heißt. Viele Grüße, Neo
  11. Hallo Timba, hier darfst du dich nicht täuschen lassen, die Autovervollständigung beachtet nicht die Bezeichner vor dem Punkt oder Doppelpunkt, sondern nur die Bezeichner danach. Das Studio selbst kann während der Entwicklungszeit nicht prüfen, was hinter "os" steht. Es könnte sich ja um folgendes Konstrukt handeln: local os = layout print(os.time) Dieser im Studio gültige Code kann nur während der Laufzeit analysiert werden, weshalb die Autovervollständigung alle Vorschläge anzeigt. Grundsätzlich handelt es sich bei einer Zeitangabe um ein Objekt mit Methoden und Eigenschaften. So kannst du z.B. mit Zeiten rechnen und diese vergleichen: local time = layout.time + toTime("0:30") -- Halbe Stunde addieren if time > toTime("15:45") then ... end Wie die Zeit intern verarbeitet wird spielt für den Aufrufer gar keine wirkliche Rolle, wobei es auch kein Thema wäre, dem Objekt weitere Funktionen zu spendieren, um an weitere Informationen heranzukommen, wie z.B. der Stunde, Minute oder Sekunde. Viele Grüße, Neo
  12. Hallo Timba, was möchtest du denn erreichen? Viele Grüße, Neo
  13. Hallo, jein, der Vorschlag ist eher als Notlösung zu sehen. Besser wäre es, wenn so wenige Ereignisse wie möglich definiert werden. Sobald ihr mehrere Ereignisse habt, die den gleichen Auslöser besitzen, solltet ihr stutzig werden und prüfen, ob diese Trennung in mehrere Ereignisse wirklich Sinn macht. Sinnvoll ist sie ab V5 eigentlich nur noch, wenn es sich um völlig verschiedene Themenkomplexe handelt. Viele Grüße, Neo
  14. Hallo, nein, du kannst auch bei glTF in Blender die FPS herabsetzen und erhältst eine verlangsamte Animation, muss dann aber in der Anim-Datei diese Verlangsamung bei den Frame-Zahlen einrechnen. Wenn du also von 24 auf 12 FPS herunter gehst, musst die die Frames in den Anim-Dateien verdoppeln. Viele Grüße, Neo
  15. Hallo Berlioz, da deine Ereignisse alle den gleichen Auslöser besitzen (Kran nimmt Transportgut auf/ab, Variable wird gesetzt), werden deine Ereignisse alle in einem Rutsch verarbeitet. Und da du in Ereignis A die Bedingungen für Ereignis B setzt, und dort die Bedingungen für Ereignis C usw, werden die Ereignisse nicht übersprungen, sondern der Reihe nach bis zum Ende abgearbeitet, und zwar sofort. Sehen tust du natürlich nur das Endergebnis. Lösen kannst du dieses Problem, wenn du als erste Aktion in deinen Ereignissen eine Verzögerung von 0 Sekunden einbaust, dann werden die Aktionen nämlich erst im nächsten Frame abgearbeitet. Die saubere Lösung wäre jedoch das Zusammenfassen der vielen Ereignisse. Es passiert ja jedes Mal das gleiche, nur mit anderen Daten, je nach Zustand. So etwas kann man durch verschachtelte Bedingungen oder durch Tabellen lösen. Viele Grüße, Neo
  16. Hallo max, du musst in Blender die FPS auf 24 setzen (Blender-Default) und dein Modell neu exportieren, dann funktioniert es: Der Hintergrund ist der: Das glTF-Format speichert Animationen nicht in Keyframes ab, sondern in Zeiten, ohne eine FPS-Angabe (wird bei Zeitangaben auch nicht mehr benötigt). Damit aber die Anim-Dateien im Studio weiterhin funktionieren, muss das Studio die Zeiten wieder zurück in Keyframes umrechnen, wofür die Standard-FPS von 24 angenommen werden. Stimmen die FPS nicht, kommen natürlich alle Keyframe-Angaben durcheinander. Ich werde das mit im Wiki erwähnen. Viele Grüße, Neo
  17. Hallo, wenn du die Modelldaten zur Verfügung stellst, kann ich mal nachschauen. Bei mir ist das nicht so, aber ich kann auf deinen Bildern erkennen, das deine UI aus 2.79 importiert wurde, eventuell liegt dort die Ursache. Ich empfehle dir, beim Öffnen der Blender-Datei die Option "Load UI" zu deaktivieren, um die Standard-2.8-UI zu verwenden: Viele Grüße, Neo
  18. Hallo max, das Zusammenfügen ist bereits in der aktuellen Version V5 implementiert. Viele Grüße, Neo
  19. Hallo Maik, du kannst sie ganz normal weiterverwenden, auch in neuen Anlagen, die du veröffentlichst. Die Uhr ist archiviert, weil es mittlerweile ähnliche Uhren gibt, die auch die Simulationszeit anzeigen, wie z.B. SputniKKs Bahnhofsuhr (Content-ID: 2964BB28-02DB-4AFE-A31A-2CA578D77199). Viele Grüße, Neo
  20. Hallo, ich sehe das Hauptsignal auf deinem Bild, links unten. Bedenke, dass die Modelle in den Kategorien "Schlagwörter" nicht nach Name, sondern nach Bewertung/Downloads sortiert werden. Viele Grüße, Neo
  21. Hallo, diese Option gibt es nur für eigene Inhalte, fremde Inhalte lädt das Studio automatisch aus dem Internet herunter, sobald eine Änderung erkannt wurde. @stephan Hast du eine funktionierende Internetverbindung bei der Verwendung von V5? Viele Grüße, Neo
  22. Hallo Timba, die Einträge "Zeitpunkt erreicht" haben nichts mit einer Variable zu tun, sondern mit der Simulationszeit. Wenn du die Simulationszeit auf Virtuell oder Echtzeit einstellst, wird jede Minute (der Simulationszeit) ein Ereignis "Zeitpunkt erreicht" ausgelöst. Das ist sinnvoll, um z.B. die Simulationszeit in einem Beschriftungsfeld anzuzeigen oder generisch auf eine bestimmte Zeit zu reagieren. Ich stimme dir aber zu, dass die Ereignisprotokollierung dadurch schnell unübersichtlich werden kann. Ich werde mir hier für das nächste Update eine Verbesserung einfallen lassen. Womöglich braucht es gar keine Protokollierung der Zeitänderung, die aktuelle Zeit ist ja auch jederzeit in der Statusleiste sichtbar. Auch die Filterung von Ereignissen werde ich mit dem nächsten Update vereinfachen. Viele Grüße, Neo
  23. Hallo Wolfgang, man muss hier unterscheiden zwischen einfachen Variablen (Boolean, Zahlen, Texte...) und Variablen, die Referenzen enthalten (Objekte, Ereignisse). Wird eine Variable gelöscht, dann wird ihr nil zugewiesen, ein Lua-Wert, der aussagt, dass die Variable keinen Wert enthält. Im Normalfall werden die Variablen daher einfach gelöscht. Bei Variablen, die aber Objekte referenzieren, kann bei einem nil nicht unterschieden werden, ob der Nutzer die Variable löschen wollte oder den gültigen Wert "keine Referenz" setzen wollte. Lua (und das Studio) unterscheiden nicht zwischen "leer" und "keine Referenz". Aus diesem Grund bleibt die Variable in diesem Fall erhalten, wird aber auf einen leeren Wert gesetzt. Viele Grüße, Neo
  24. Hallo EASY, mir sind aktuell keine Probleme bei der Verwendung von Umlauten bekannt, die Einschränkung auf ASCII bezieht sich allein auf das alte X-Format. Viele Grüße, Neo
  25. Hallo, das ist aktuell nicht vorgesehen. Viele Grüße, Neo

Push-Benachrichtigungen konfigurieren

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.