Jump to content

3D-Engine


maxwei

Empfohlene Beiträge

Hallo zusammen,
mein grösster Wunsch momentan wäre, nachdem in verschiedenen fred's ja schon das eine oder andere angesprochen wurde eine neue, bzw. überarbeitete 3D-Engine für V6, nachdem auf der V5 ja das Hauptaugenmerk auf Steuerung(LUA) und Planung gelegt wurde.

Die Möglichkeiten die Blender (über Sketchup weiß ich ja nichts) bietet kommen ja nur sehr reduziert im MBS an, und wenn da etwas Neues installiert wird,..ich weiß ja nicht ob man so einfach eine bestehende Engine kaufen und implementieren kann, aber daß es diese gibt, ohne selbst großartig etwas programmieren zu müssen, das weiß ich schon, dann wäre das ein Riesenschritt vorwärts.

Mir ist absolut klar daß das Ganze eine "One-Man-Show" ist, von daher wäre es auch interessant zu wissen was eben so eine Lizenz kosten würde, eventuell auch mit erhöhten Preisen des MBS verbunden.

lg max

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo max,

wie du vielleicht schon in den anderen Beiträgen mitbekommen hast, sind die Themen Skinning (ist das dein Shape-Animation?) und das Physically Based Rendering aktuell hoch priorisiert und werden mit hoher Wahrscheinlichkeit in V6 erscheinen.

Die anderen Punkte müsstest du etwas genauer erklären. Was genau verstehst du unter Texture-Animation, willst du Videos auf 3D-Modellen abspielen? Was sind verbesserte Licht- oder Beleuchtungsmöglichkeiten?

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Neo,

vor 1 Stunde schrieb Neo:

Was sind verbesserte Licht- oder Beleuchtungsmöglichkeiten?

ich würde darunter beispielsweise verstehen, dass man irgendwo eine "aktive" Lichtquelle positioniert, von wo dann "Licht" auf die von dieser Lichtquelle erreichbaren Objekte fällt.

In einer sehr alten MBS-Vesion - oder war es tatsächlich "nur" der alte 3D-Eisenbahnplaner? - gab es mal eine zentrale Glühbirne, die das "globale" Licht der Anlage spendierte. Diese konnte man - wenn ich mich richtig erinnere - sogar verschieben (ich hatte damals nämlich einen EV-gesteuerten Sonnenauf- und -untergang "programmiert"). Sogar die Farbe der Glühbirne konnte man bestimmen, um z.B. eine tiefe Abendrot-Beleuchtung der Landschaft zu simulieren.

Mit der Einführung des aktuellen "diffusen" Tag-Nacht-Wechsels ist diese Glühbirne als Lichtquelle weggefallen.

Eine "aktive" Lichtquelle bedeutet für mich, dass es ein Objekt "Lichtquelle" gibt, das man wie jedes andere Objekt (z.B. wie auch den Partikeleffekt) an jede beliebige Stelle auf oder über der Anlage platzieren kann, und welches dann das Licht entweder als "Vollkugel" oder aus einem Lampengehäuse oder einer sonstigen Öffnung heraus als "Lichtkegel" abstrahlt, der aber nicht wie heute als 3-dimensionaler kegelförmiger Körper sichtbar wird, sondern "nur" die Flächen ausleuchtet, auf die er auftrifft.

Eine solche "aktive" Lampe an einer Raumdecke oder an einem Bahnsteigdach angebracht könnte dann den gesamten Raum (auch ein Zugabteil) oder Bahnsteigbereich ausleuchten, wobei auch die "angestrahlten" Objekte (z.B. Personen, Möbel, Wände) genau dort "in vollem Licht" (möglicherweise auch über einen Parameter gedämpft) leuchten würden, wo sie der Lichtkegel trifft, und an den anderen (Schatten-)Stellen dunkel blieben. Oder ein Autoscheinwerfer leuchtet genau dort die Straße aus (oder auch die Hauswand oder die Leute auf dem Zebrastreifen), wo dessen Lichtkegel auftrifft - ohne dass man den Lichtkegel selbst sieht.

Würde man dann auch die Sonne oder den Mond als derartige Lichtquellen darstellen, würde sich die heutige diffuse Beleuchtung erübrigen. Der Schattenwurf der heutigen Beleuchtung ließe sich ja dann vielleicht auf diese "mobilen" Lichtquellen übertragen.

Viele Grüße
BahnLand

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo BahnLand,

vor 6 Minuten schrieb BahnLand:

Der Schattenwurf der heutigen Beleuchtung ließe sich ja dann vielleicht auf diese "mobilen" Lichtquellen übertragen.

für "beliebig" viele Lichtquellen gibt es heutzutage zwar Lösungen, nicht aber für beliebig viele Schatten, d.h. auch bei benutzerdefinierten Lichtquellen gäbe es weiterhin nur den Schatten der Sonne. Schatten für hunderte oder tausende Lichtquellen kann kein System in Echtzeit berechnen.

In dieser Hinsicht wird es also auch weiterhin Kompromisse geben müssen.

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Der additive Effekt von _LC-Lichtquellen findet sich offensichtlich (zeitsparend) im RGB-Farbraum, führt aber leider irgendwie immer in einen Grau->Weiß-Matsch.
Wahrscheinlich müssen ja vorgefertigte DirectX-Routinen verwendet werden und ich weiß nicht, ob DirectX da noch andere Möglichkeiten bietet. Mich würde mal interessieren, ob das im HSV-Farbraum besser aussehen würde. Wie ich schon mal geschrieben habe: Im freien Land wird man Lichtquellen real wirklich meistens nur als weiße Punkte sehen. In der Ferne ist das so also alles okay. Aber wenn man von oben auf eine beleuchtete Bundesstraße schaut, sieht's schon ganz anders aus. Und eine beleuchtete Altstadt eben auch.

Gruß
  Andy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Neo, das wäre z.B. eine Shape Key Animation: 

Und eine texture-Animation ist, wieder Name schon sagt, eine Änderung der Farb-Oberfläche in einer Animation, damit lässt sich z.B ohne grossen Aufwand einen Fernseher simulieren, oder _LC_ Objekte  (_LS_) Farbänderung für Scheinwerfer, was sehr interessant wäre...

Und daß bei der Beleuchtung (Licht) sehr viel zu machen wäre hat ansatzweise @BahnLand ja schon angesprochen, sieh dir mal heutige PC-Spiele an.
Und wenn du sagst, daß das ja wohl sehr Hardware-fressend ist, gebe ich dir recht, nur sollten wir nicht an der Technik von vor 10 Jahren festkleben.

lg max

PS: Von Wetter (Sonne, Regen, Nebel) spreche ich noch gar nicht.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

vor 54 Minuten schrieb maxwei:

Hallo Neo, das wäre z.B. eine Shape Key Animation:

ich kann nur die Funktionen implementieren, die Blender auch nach glTF korrekt exportiert. Wenn Blender für die Shape Key Animationen auf das Skinning zurückgreift, hast du gute Chancen.

vor 56 Minuten schrieb maxwei:

damit lässt sich z.B ohne grossen Aufwand einen Fernseher simulieren

Das ist ein gutes Beispiel, warum eine andere 3D-Engine oder der Vergleich mit anderen Spielen keine Lösung ist. Das Studio unterscheidet sich von Spielen oder typischen 3D-Engines dahingehend, dass dem Nutzer völlige Planungsfreiheit gegeben wird. Das Studio verhindert z.B. nicht, dass ein Nutzer eintausend Häuser mit jeweils einem animierten Fernseher auf der Anlage platziert. Ebenso könnte der Modellbauer jedem Rücklicht eines Autos eine eigene Lichtquelle spendieren. Was, wenn der Nutzer dann tausend Autos auf der Anlage platziert?

Mit solchen Problemen haben typische Spiele nicht zu kämpfen, weil sie die Gestaltungsfreiheit limitieren. Ich muss mich daher entscheiden:

  1. Biete ich all die modernen Grafikfeatures an bei Beibehaltung der völligen Planungsfreiheit? -> Wenn ja, beschwert sich jeder über die miese Performance (kommerzielle 3D-Engines sind zu universell, als das sie alle Anforderungen des Studios stemmen könnten)
  2. Verzichte ich auf völlige Planungsfreiheit und schränke die Modellbauer und Nutzer ein? -> Mehr Kontrolle, bessere Performance, aber weniger Möglichkeiten.

Ich strebe Punkt 1.5 an. In jeder neuen Version erweitere und verbessere ich die 3D-Engine, sodass das Studio sich kontinuierlich weiter entwickelt, verzichte dabei aber auf zu viele Einschränkungen, damit das Studio eben nicht zu einem austauschbaren Spiel wird.

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Neo, lt. Blender -Manual werden folgende Funktionen in's *.gltf exportiert.
----------------------

Usage

glTF™ (GL Transmission Format) is used for transmission and loading of 3D models in web and native applications. glTF reduces the size of 3D models and the runtime processing needed to unpack and render those models. This format is commonly used on the web, and has support in various 3D engines such as Unity3D, Unreal Engine 4, and Godot.

This importer/exporter supports the following glTF 2.0 features:

  • Meshes
  • Materials (Principled BSDF) and Shadeless (Unlit)
  • Textures
  • Cameras
  • Punctual lights (point, spot, and directional)
  • Animation (keyframe, shape key, and skinning
lg max
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Neo,

(Auswahl zitieren funktioniert irgendwie momentan nicht)

-----
Das ist ein gutes Beispiel, warum eine andere 3D-Engine oder der Vergleich mit anderen Spielen keine Lösung ist. Das Studio unterscheidet sich von Spielen oder typischen 3D-Engines dahingehend, dass dem Nutzer völlige Planungsfreiheit gegeben wird. Das Studio verhindert z.B. nicht, dass ein Nutzer eintausend Häuser mit jeweils einem animierten Fernseher auf der Anlage platziert. Ebenso könnte der Modellbauer jedem Rücklicht eines Autos eine eigene Lichtquelle spendieren. Was, wenn der Nutzer dann tausend Autos auf der Anlage platziert?

-----

Was aber in der heutigen Zeit aber sowas von kein Problem mehr ist, als Beispiel  ANNO 1800, völlige Gestaltungsfreiheit, so eine große MBS Anlage wird es auch nie geben, und viiiiiiiiel mehr Animationen.

Ich verstehe schon daß es als Einzelner nicht so einfach ist sowas auf die Beine zu stellen, als wenn eine große Fa. dahintersteht.

Du könntest auch einfach schreiben, "Ich habe weder die Zeit noch die Möglichkeiten das und das zu bewerkstelligen" und niemand macht dir einen Vorwurf, aber alles auf das "Nichtmögliche" (in Bezug auf die Anzahl der Objekte (GraKa)) zu schieben ist mir dann doch zu einfach.

lg max 

Bearbeitet von maxwei
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Neo,

vor einer Stunde schrieb Neo:
vor 2 Stunden schrieb maxwei:

damit lässt sich z.B ohne grossen Aufwand einen Fernseher simulieren

Das ist ein gutes Beispiel, warum eine andere 3D-Engine oder der Vergleich mit anderen Spielen keine Lösung ist.

... dann muß ich noch ein "gutes" Beispiel bringen für eine Textur-Animation.
So wie ich es verstehe, ist es eine Animation die die Textturkoordinaten in der Animation speichert.

Ein klassisches Beispiel wäre eine Ampel (3 Kreisflächen in einem mesh)
846456328_Bild005.jpg.bf40c6cf76280c16ca9079698474f038.jpg

Texturzuordnung 1. Frame...
2030645422_Bild001.thumb.jpg.f1e54d1a88df355d2abbd3de14da6ac6.jpg

Texturzuordnung 2. Frame...
967741278_Bild002.thumb.jpg.a126e378ee7451e09a95550e3af49e85.jpg

Texturzuordnung 3. Frame...
1276086208_Bild003.thumb.jpg.a59c6522443e083f72cefc3145b28755.jpg

Texturzuordnung 4. Frame...
1017231814_Bild004.thumb.jpg.324123603b335d569a3c14af0df68683.jpg

... so bräuchte man das ganze mit den "Klappen", die die Farbscheiben abdecken nicht...

... aber aus der zwischenzeitlichen Antwort von maxwei muß ich wohl schließen, daß die Texturanimation beim glTF Export wohl nicht unterstütz wird...:/:(
... hat sich also schon erledigt, bevor ich geantwortet habe... abschicken tue ich es trotzdem mal noch...

Gruß
EASY

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo max,

welche Einsatzmöglichkeiten siehst du bei Shape Keys (Morph Targets)? Sie unterscheiden sich ja dann doch etwas von dem Skinning, was ich eher im Context des Studios favorisiere. So ermöglicht das Skinning z.B. richtige Menschenanimationen, während die Shape Keys eher für Gesichtsanimationen gedacht sind.

vor einer Stunde schrieb maxwei:

Ich verstehe schon daß es als Einzelner nicht so einfach ist sowas auf die Beine zu stellen, als wenn eine große Fa. dahintersteht.

Hier ist wichtig zu verstehen, dass es nicht um Manpower geht, sondern um technische Umsetzbarkeit. Der Wechsel der 3D-Engine oder die Vergleiche mit anderen Spielen funktionieren doch nur oberflächlich, scheitern dann aber an der Realität, nämlich dann, wenn man mal die tatsächlichen Anforderungen vergleicht und erkennt, dass Anno etwas völlig anderes ist als das Studio.

Hier musst du mir vertrauen, dass ich aufgrund der langjährigen Erfahrung mit dem Studio gut beurteilen kann, wo Gemeinsamkeiten und wo Unterschiede zu anderen Programmen liegen. Und wie gesagt, dass Studio bzw. die 3D-Engine befindet sich nicht am Ende der Entwicklung, niemand muss einen Stillstand befürchten. Aber dennoch nicht vergessen, was das Studio leisten muss und was andere Spiele/Programme leisten. Wenn Vergleiche angestellt werden, dann nur bei gleichen Anforderungen.

vor einer Stunde schrieb EASY:

So wie ich es verstehe, ist es eine Animation die die Textturkoordinaten in der Animation speichert.

Ich glaube max wünscht sich eher das Abspielen von Videos auf Objekten, aber da bin ich mir nicht genau sicher. Zwischen Videos abspielen und der Animation von Texturkoordinaten liegen natürlich Welten (letzteres gibt es im Studio bereits bei der Wasseranimation).

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Neo

vor 8 Minuten schrieb Neo:

Ich glaube max wünscht sich eher das Abspielen von Videos auf Objekten

teilweise, aber mir schweben da noch ganz andere Möglichkeiten vor, ein Bespiel hat  @EASY ja schon erwähnt, alle _LS_...LC Objekte die jetzt doppelt gemacht werden wenn sie schaltbar sind würde man Meshes sparen (ob da jetzt der große Zeit-Unterschied ist weiß ich nicht) aber der Arbeitsaufwand, flackernde Neon-Röhren, wechselnde Lichter in Gebäuden....Lauflichter an Baustellen usw...oder eben ein Auto-Kino, grosse Werbeflächen in Städten.

vor 13 Minuten schrieb Neo:

welche Einsatzmöglichkeiten siehst du bei Shape Keys (Morph Targets)?

Shape-Keys hätte ich jetzt beim London-Eye gebraucht, da ich die Kegel der Licht-Spot's ändern wollte, und das geht über normale Mesh-Animation nicht, da es eben Morphing ist. (zugegeben sicher eine Rand-Anwendung aber trotzdem interessant), immer im Zusammenhang mit dem richtigen Verhältnis Aufwand/Gewinn.

lg max

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

vor 33 Minuten schrieb maxwei:

aber mir schweben da noch ganz andere Möglichkeiten vor

das sind gute Beispiele, ich denke aber, hier handelt es sich um verschiedene Techniken. Aus anderen 3D-Engines kennt man "parametrisierbare Materialien", d.h. ein "Leuchtfaktor" eines Materials würde sich z.B. animieren lassen. Damit bräuchte man keine verschiedenen Meshes mehr, sondern regelt nur durch eine Materialeigenschaft, ob ein Objekt leuchtet oder nicht. Damit wären zumindest flexiblere Beleuchtungen möglich. Leider gibt so etwas das glTF-Format noch nicht her, weshalb hier eigene Lösungen implementiert werden müssten.

vor 40 Minuten schrieb maxwei:

Shape-Keys hätte ich jetzt beim London-Eye gebraucht, da ich die Kegel der Licht-Spot's ändern wollte

Da das Skinning auf jeden Fall kommen wird, wäre das für dich dann eventuell auch eine Lösung, weil man auch per Skinning ein Mesh deformieren kann (wenn auch nicht so filigran wie bei Shape Keys).

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

vor 10 Minuten schrieb Roter Brummer:

ich vermisse bei den leuchtenden Objekten einen Lichthof

das habe ich mir für V6 bereits vorgenommen. Der Bloom-Effect ist zwar "nur" eine Bildmanipulation, verbessert aber doch den visuellen Eindruck, z.B. auch bei leuchtenden Fenstern.

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 57 Minuten schrieb Roter Brummer:

Vielleicht noch ein bisschen ausgeprägter

*grins* - Brummi bleibt Brummi.

So ein paar 'was wäre wenn'-Bilder kannst Du gerne noch zurechtmachen Neo. Die bringen bestimmt Leben in die Bude.

Gruß
  Andy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...