Landschaften schöner gestalten

  • Hallo Leute!

    (Alles geschriebene auf dem Dedicated Server + Multiplayer)


    Es geht um Landschaften allgemein, ich habe mich damit nun etwas näher befasst, da die anderen Sachen im Projekt soweit gut vorangekommen sind.

    Nun möchte ich den Weltenbau richtig schön gestalten, aber das was auf den Grafiken zu sehen ist, sieht aus wie ein Spiel um das Jahr 2000, total hässlich :(



    Die Bäume sind noch aus der "Open World Democollection" im Marketplace (das womit auch früher mal dieses Video mit dem Kind und dem Drachen gemacht wurde, was durch die Welt spaziert).

    Die Bäume, Steine und das Gebirge sind mit der Hand gesetzt, wobei das alles ziemlich kacke aussieht... obwohl ich darauf geachtet habe möglichst eine hohe Auflösung der "Items" zu nutzen.

    Nun gibt es ja die "MEGASCAN" Sachen, die ja echt wahnsinnig gut detailliert sind... aber bereits oben habe ich schon deutliche FPS Probleme, wie soll das dann mit noch schärferen Gegenständen besser laufen.



    Das Gras wird erst auf Sichtweite erstellt (Automaterial), das finde ich extrem gut da die Karte dann soweit leer ist, aber es sieht so aus als wenn überall Gras/Blumen usw. ist. Nur wenn man auf einen Berg steigt sieht man leider das ganze (echte) leere Gebiet.


    Auch so Geschichten mit Licht, Schatten, diverse Filter (Post Process Volume) usw.


    Extra Frage: Wie macht man Höhlen und Berge allgemein, ohne das man die Spielkarte so zerschnipselst?

    Damit meine ich, man macht kein Loch im Editor in der Map, sondern eher man senkt das soweit ab um dann etwas darüber (Berg) aufzubauen damit eine natürliche Höhle erzeugt wird, die man auch im Live Betrieb wieder entfernen kann?

    Also das Terrain soll im Live Betrieb veränderbar sein, so das Nutzer die entsprechende Rechte haben, die Landschaften im Live Betrieb anpassen/modifizieren können.



    Grob gesagt:

    Wie macht man richtig gute und wunderschöne Landschaften die auch noch performant sind und richtig Lust darauf machen, das Spiel zu spielen und die Welt darin erkunden zu wollen?


    Gibt es dazu leicht verständliche Tutorials die sich vor allem auf die aktuelle UE4 Version beziehen? Denn vor relativ kurzer Zeit (ich meine in den letzten paar Updates) kam auch neue Features vor allem für die Weltgestaltung dazu, das würde ich dann gerne zusätzlich integrieren.

    PS: Mich plagen komischerweise hohe MS Werte (30ms bei Server + 2 Clients = lokal, auch in leeren karten) und ich habe schon diverse Dinge im MyCharacter deaktiviert um zu testen ob das irgendwie daran liegt. Wie kann ich das genau analysieren wo der Flaschenhals ist?

    Vor allem muss man allgemein im Editor noch irgendwas wichtiges De-/Aktivieren damit man mehr Leistung hat?

    Aktuell habe ich alles auf maximale Grafik und Cinematic gestellt.


    Danke für eure Infos!

    • Offizieller Beitrag

    Tja das ist ne Kunst für sich. Du hast ne Menge Fragen gestellt ich versuche die nun mal aus deinem Text zu lesen und entsprechend zu deuten:


    1.Du glaubst nur weil du dir Megascans Sachen runterlädst, sehen die später auch gut aus ? Wenn du sie nicht richtig in Szene setzt wird das auch nichts


    2. Einer der wichigsten dinge überhaupt sind Refrenzen. DIe gelten nicht nur für Objekte sondern auch für Licht und Schatten Deswegen: Such dir erstmal 10 Bilder echte Bilder oder mehr wie dein Ergebnis aussehen soll.


    3.Wenn du das Terrain verändern willst und auch Höhlen machen willst, brauchst du ein Voxel Terrain.


    4.Dein Hauptproblem scheint scheint zu sein, das du offenbar nicht richtig verstehst wie Licht überhaupt funktioniert. Deine Szene ist viel zu Hell. Weiß du wie GI funktioniert ? (Informiere dich darüber erst einmal bitte)

    Warum sieht etwas realistisch aus und welche Faktoren sind hierfür wichtig und welche Rolle spielt hierbei Global Illumination (GI)

    Googel einfach mal nach Global Illumination und überleg dir warum die Bilder so gut aussehen egal ob Landschaft, eine Kugel oder sonst etwas?

    5.Du brauchst ein Realistisches Lichtsetup und nicht einfach nur ein Setup wo das Licht auf 10 gestellt ist. (Das ist nicht realistisch)

    Licht muss Bouncen können und andere Gegenstände anleuchten.



    Ganz Wichtig die Goldene Regel: Realismus ist, wen es dir gelingt die Realität möglichst gut zu kopieren.


    Das heißt:

    1.Grasshalb darf nicht breiter sein als ein echter Grasshalb. (Sonst wirkt es nicht real)

    2.Größen Verhältnisse müssen stimmen

    3.Physikalische Gesetze müssen stimmen (Ein RIesen Baum kann nicht 45 grad gebogen sein ohne umzukippen.

    4.Auch Landschaften sind nicht willkürlich sondern durch Natürliche Gesetze geprägt worden.

    zb.: Ein Bach frist ein Loch in einen Berg, daraus ergibt sich das Tal, Fluss läufe ändern sich mit der Zeit weshalb ein Tal auch breiter sein. Du hast verschiede gesteine wo sich Wasser besser oder schlechter durcharbeiten kann. Dieses gestein sieht man sehr häufig.


    Game Design ist über aus schwierig und ist nicht einfach nur Assets irgend wie in der Welt zu plazieren. Das folgt alles gewissen Regeln.

  • Wie Sleepy schon sagt - Problem am look sind gar nicht die Modelle sondern die Beleuchtung.


    Terrain während der runtime editieren und es sieht immer noch gut aus wäre auch ne Kunst. Das sehe ich hier als die größte Herausforderung. Gerade wenn du im Spiel ein Loch gräbst daß du dann keine schwebenden Steine und Grashalme hast - das ist schwer. Viel Arbeit. Würde erst mal mit statischem terrain anfangen und nebenbei an dem Editor arbeiten, der wird ne harte Nuss wenn er gut sein soll.

  • Schwierige Nummer.

    Also, eine Landschaft muss nicht nur hyperrealistisch sein. (Ich liebe Realismus)

    Sie sollte interessant sein. Eine Wiese mit ein paar Bäumen ist ja OK, aber nach einer Minute hat man sich satt gesehen. Und wenn du so eine Wiese hast, die durch nichts unterbrochen ist, wird auch jeder Baum und Grashalm angezeigt. Dann gehen auch die FPS in den Keller.

    Es gibt nicht umsonst Spiele bei denen du alle Nase lang vor einem Berg stehst, über den du rüberkraxeln musst, um zu sehen was sich dahinter verbirgt. Es muss halt nur das berechnet werden was man auch sieht. Ansonsten würde ich mir in Punkto Gestaltung Referenzmaterial in Form von Landschaftsmalerei und so weiter anschauen.

  • Ja ich weiss das Weltenbau ein extrem umfassendes Thema ist, aber es muss ja trotzdem von jedem gemacht werden.

    Licht spielt dabei natürlich eine ganz zentrale Rolle, daher die Fragen wie man das richtig machen kann. Zumindest welche allgemeinen Regeln sollte man dabei beachten usw.


    Mir ging es bei den allgemeinen Fragen auch darum, wie viele "Triangles und Vertices" die Vegetations-Sachen haben sollten, wie viele LODs und allgemeine collisionen.

    Also alles was sich so darum dreht, Dinge in die Welt zu platzieren und diese dabei performant zu machen.


    Vor allem die LODs wie stelle ich das global so ein das "Current Screen Size" sich über ALLE Dinge bezieht. So das ich alle Bäume, Steine, Gras usw. auf einmal anpassen kann (zumindest in der Reichweite der Darstellung um ein gutes Ergebnis zu bekommen).


    Ist es wirklich so sinnvoll größere Mengen (Bäume, Gräser, Sträuche, Steine usw.) über das "Sculpt" zu machen oder doch lieber einzeln platzieren?


    Das mit dem Voxel ist das gut umzusetzen oder doch eher "die Mühen nicht wert"?


    Danke für eure Infos :)



    PS: Das Landmass Plugin, wie stelle ich mir das vor. Ich nehme ein Bild aus der Realität von einer Landschaft und UE4 erzeugt daraus grob gesagt die landschaftliche Darstellung (Höhen, breite usw.) aber ohne weiteren Inhalt wie Bäume usw.?

    ---


    Hier noch etwas aus dem letzten Engine Update:

    Da kommt ja immer mehr und besseres was mehr Zeit erstpart, also richtig coole sachen.


    Aus UE 4.24
    "

    Landmass Plugin (Experimental)

    The Landmass Plugin provides examples of using Landscape Blueprint Brushes as well as a Blueprint called BP_CameraOverlap that can be used to overlay photo reference on the screen, match up the camera perspective, and then draw shapes into the world based on the reference:"






    New: Screen Space Global Illumination (Beta)

    We've added support for dynamic global illumination with Screen Space Global Illumination (SSGI). It's a screen space effect which comes with all the normal limitations of such an effect but it's scalable across Console and Desktop platforms and offers a dynamic GI solution where needed at a moderate cost to performance.

    • Offizieller Beitrag

    Mir ging es bei den allgemeinen Fragen auch darum, wie viele "Triangles und Vertices" die Vegetations-Sachen haben sollten, wie viele LODs und allgemeine collisionen.

    Das kann man so pauschal nicht sagen da es auf das gesamtpaket ankommt.

    Letztlich kommt es dann auch immer auf den Rechner an und auf welchem Rechner dein Spiel später laufen soll. Wenn du 5000 Euro für deinen PC ausgibst und dein Spiel flüssig läuft, heißt das nicht das es auf einem 1000Euro Rechner auch tut.

    Ich würde auch nie von Anfang an komplett optimieren. Wenn dein Spiel unoptimiert ist, hast du immer noch platz nach unten. Bis du aber bereits am Limit, hast du ein Problem.


    Als Richtline und das sage ich immer wieder: So wenig Polygone wie möglich und soviele wie nötig.

    Die Qualität von Modellen bestimmt nicht der Polycount sondern wie sie technisch gebaut.


    Wichtig ist auch FPS (Frames pro Secunde) Es ist also nicht wichtig wie viele Modelle in deinem Spiel sind oder wie viele Polygone sie haben. Entschiedet ist: Wie viele Polygone sind im höchsten Frame deines Spiels zu sehen.

    Ich habe schon Szenen weit über 10 Millionen Tris pro Frame in VR flüssig getestet und auch an Kunden ohne Beschwerden ausgeliefert.

    Ist es wirklich so sinnvoll größere Mengen (Bäume, Gräser, Sträuche, Steine usw.) über das "Sculpt" zu machen oder doch lieber einzeln platzieren?

    Ne das kannst du machen kann mir sogar vorstellen dass das sogar performanter ist als sie Manuell zu plazieren.

    Das mit dem Voxel ist das gut umzusetzen oder doch eher "die Mühen nicht wert"?

    Die Frage ist eher: Heightmap Terrain oder Voxel ?


    Der Vorteil von einem Normalen Terrain ist, das es sehr sehr performant ist und durch Vertexpaint sehen Boden Texturen sehr hübsch aus und man kann sie schön überblenden. Der Nachteil von Terrains ist, man kann damit keine Höhlen bauen oder Löcher Graben wobei man Höhlen auch mit Meshes in Kombi mit dem Terrain realisieren kann.


    Voxel sind nicht einfach nur Cubes wie man es vielleicht aus MInecraft vermuten würde. Voxel ist Mathematischer Algorithmus der Flächen (sog. Isoflächen) sehr performant darstellen kann. (Voxel sind keine Polygone auch das UV-Mapping funktioniert anderst)

    Ob nun Voxel performanter sind als Terrain kann ich nicht sagen möglicherweise ist der große Vorteil von Voxel darin die Landschaft verändern. (Wobei man auch die Heightmap in der Höhe manipulieren kann.

    Hier noch etwas aus dem letzten Engine Update:

    Da kommt ja immer mehr und besseres was mehr Zeit erstpart, also richtig coole sachen.


    Ja es gibt immer bessere Tool die einem die Arbeit erleichtern nur eins solltest du nicht vergessen:


    DIe Realität ist durch einen Zufallswert entstanden sondern wurde durch sehr viele Faktoren geprägt.


    Wo heute ein Tal ist, war mal ein Fluss, durch verschiedene Gesteinsarten wurde der Flusslauf usw geprägt.

    Gibt einige Terrain Generatoren wie World Maschine die solche Terrains per Zufall generieren und die auch sehr schön aussehen. Aber basieren nicht auf der Logik und genau das bemerkt man als Spieler auch unterbewusst. Daher wäre ich vorsichtig mit Tools die alles einfacher machen.

    Gute Planung und die Orientierung an echten Referenzen ist viel viel wichtiger.

    • Offizieller Beitrag

    Gibt es nicht irgendwelche Faustformeln oder so grobe Dinge die man grundsätzlich beachten muss?

    Das aller aller wichtigste ob du das glaubst oder ist, ist das suchen und verwenden von Referenzen.

    Drei wichtige Punke:


    1. Such dir Bilder wie du dir deine Landschaft vorstellst, (Hier geht es nur um das Motiv)

    2.Such dir Referenzen wie du dir das Licht vorstellt. (Hier ist das Motiv im Hintergrund egal es geht nur um das Licht)

    3.Such dir Refenzen wie du die die Probs vorgestellt hast. HIerbei geht es nicht um das Motiv sondern Meshes die in der Landschaft zu sehen sind.


    DU kannst pro Punkt mehr als nur eine Refernz suchen, deine Landschaft bildet sich so aus dem Motiv, dem Licht und aus dem Meshes.

    Einer deiner ersten Screenshots in diesem Beitrag war dee mit der Bank, Such dir für so ein Filmset ebenfalls Referenzen und versuche das nicht aus dem Kopf heraus zu bauen.


    Hoffe das hilft dir weiter, sonst muss ich wissen was dein genauen Problem ist. Gerne auch Visuell durch weitere Screenshots

  • In Naturszenen kannst du ja nur bedingt Lichter hinzufügen, also sprich Laternen und Leuchtreklamen aufstellen. Was mit echt geholfen hat mit einer Waldszene war ein schönes Plugin aus dem UE4 marketplace namens "Ultra Dynamic Sky". Das schöne ist daß man nicht nur tages und nachtzeit einstellen kann sondern auch die Wolkendecke, das ganze dann animiert, also wie sie Sonne so durch die Wolken sticht, usw. Dann animierter Tages/Nachtzyklus usw. Das hat unglaublich viel ausgemacht, auch wenn du nicht den Tages/Nachtzyklus animiert haben willst verstellst du einfach die Uhrzeit so a la "12 Uhr Mittags" - ne sieht doof aus. 17:00 uhr, Sonne steht tief - ah schon besser, probieren wir mal 18 Uhr - Abendröte - wow sieht gut aus, noch etwas mehr Wolken...


    Naja usw. Das hat meine Waldszene schnell stark verbessert - obwohl es eigentlich echt nur das Licht war. OK wenn die Sonne so durch die Wolken durchkommt sieht auch geil aus.

  • Vielleicht hast Du ja das Rollenspiel "Kingdom Come Deliverance". Das gab es kürzlich sogar kostenlos im Epic-Store. Das könntest Du studieren, es ist meiner Meinung nach die Referenz für

    realistische Landschaftsgestaltung. Ich spiel das Spiel schon einige Wochen und bin immer wieder begeistert von der Landschaft und den Pflanzen egal bei welcher

    Tageszeit im Spiel.

  • Das was Sleepy geschrieben hat mit dem Motiven und so weiter, klar man braucht ja eine gewisse Vorstellung von dem ganzen wie das mal auszusehen hat.

    Mir ging es aber mehr darum, bezüglich Performance und Collisionen.

    Z.B. wenn NPC (Monster) durch die Spielwelt laufen das die nicht an allem und jedem hängen bleiben, so etwas in der Richtung. Denn ich habe in den Screenshot viele Bäume mit üppigen Wurzelwerk, in dem einfach alles hängen bleibt.


    Das "Ultra Dynamic Sky" benutze ich auch, das finde ich für den Anfang perfekt aber dort die richtigen Einstellungen zu treffen ist schwer.

    Noch dazu welche Dinge stellt man im "PostProcessVolume", so wie "LightMassImpotanceVolume" usw. Also die ganzen Licht-Bauteile die es so gibt.

    Abgesehen davon müssen die Gegenstände irgendwelche besonderen UV-Materials haben oder so etwas (keine Ahnung)? Also muss ich bei den Gegenständen noch irgendwas besonderes hinzufügen, vor allem bei den Materials, irgendwie so ein Glanzzeugs oder so?


    Kingdom Come Deliverance ist als nächstes dran, aktuell bin ich noch mit Assassins Creed Odyssey beschäftigt, was grafisch auch sehr imposant ist, aber irgendwie auch etwas Detailarm wirkt (siehe Screenshots).


    Hier 2 Bilder aus Odyssey am Tag (alles gleiche Auflösung 3440x1400 und alles auf maximale Grafik ohne AA).

    Ich finde die Landschaft sieht in den beiden Bildern richtig bescheiden aus.




    Und hier das gleiche nur eben in der Nacht was EXTREM gut aussieht!

    Also alleine das Licht macht so einen wahnsinnig großen Unterschied.




    Und hier ein Bild aus Skyrim welches 9 Jahre alt ist (stark modifiziert, 4k texturen usw.)

    Das sieht auch richtig gut aus und das ist am Tag (die Felsen leider zu kantig).

    • Offizieller Beitrag

    an allem und jedem hängen bleiben,

    Du musst ja auch nicht auf jede Würfel einen Collider drauf machen.

    Ich vermute mal du verwendest Mesh Collider ? DU könntest zb bei einem Baum mit breiten und üppigen Wurfeln einen einfach Cube Collider für Wurfeln und Stam verwenden.

    Du brauchst dann auch nur bei jedem Baum den ersten Meter so ein Collider. Das ist für die Performance besser und du hast mehr Kontrolle.

    Felsen die Probleme machen kannst du dann auch einfach ein Collider hinsetzen so das man dort hin hinreiten kann.

    Was die Nacht angeht, ich glaube werden nur die Feuerpartikel eingeschalten und dann über Posteffekte die Dunkelheit generiert.


    Nach meinem technischen Verständnis:

    Damit eine Szene realistisch aussieht, ist Global Illumination sehr sehr wichtig und GI funktioniert mit Licht. Wenn du das Licht also tatsächlich zurück drehst und einfach dunkler machst, dann kann auch die Global Illumination nicht mehr richtig funktionierten und es sieht einfach alles nur noch schwarz aus.

  • Was ist eigentlich dieses "Twinmotion 2020" was es im Epic Games Launcher bei Unreal Engine ist?

    https://www.unrealengine.com/en-US/get-now/twinmotion


    Kosten: 1x ca. 300 $

    Perpetual License = unbefristete License, aber vermutlich jedes Jahr ein neue Version? Z.B. Twinmotion 2021, 2022 usw.


    Damit soll man hochqualitative Architektur erstellen können, hat sich das jemand schon angeschaut und betrifft das auch die Landschaft (Vegetation usw.)?


    Ist das das Geld wert?

  • Sieht für mich jetzt spontan aus, wie UE4 mit stark versimpelter UI. Ich denke mal der Sinn dahinter ist das man einfacher 3D Szenen erstellen kann. Vermutlich auch für Leute, die eher nicht 3D Modelle, Meterialien etc. erstellen.


    Ich hab mir ein Video angeschaut, da wird damit auch das Terrain modifiziert.


    Ich denke als Leveleditor könnte man das durchaus benutzen, gleichzeitig aber kann das auch jedes 3D Programm...


    Also da bleib ich lieber in C4D exportiere den ganzen Kram am Ende direkt in die Engine. Da hab ich auch einen Content Browser und aus dem kann ich meine Assets rausziehen, sieht sogar so ähnlich aus, wie in Twinmotion. Sag ich mal spontan.


    Außerdem finde ich das die UE4 Engine nun auch nicht so schwer zu bedienen ist, wenn man da eine Szene bauen möchte.

  • Ich hab mir Twin Motion mal angeschaut, gabs bis vor kurzem noch gratis?

    Es ist mit der Unreal Engine gebaut, klar


    Man kann viele vorhandene Assets und Materials nutzen und eigene Objekte importieren

    Es gibt ein recht gutes Wettersystem auch mit Längen und Breitengrad einstellbar

    Eine Möglichkeit per Google Maps Straßen zu importieren

    Animierte Personen die auf einem Pfad entlang laufen, auf einem Fahrrad fahren, im Auto sitzen, auch in unterschiedlicher Dichte


    Ist also schon umfangreich, aber Hauptaugenmerk ist glaub ich die Realtime Archviz und nicht der Export als Level


    Es gibt schon ein Twinmotion Material Pack für die Unreal Engine - bleibt nur abzuwarten bis es die restlichen Assets auch für die Unreal Engine gibt

  • Der Kommentar von GameDevCouple auf https://forum.unity.com/thread…erfect-open-world.529082/ fasst die Herangehensweise von AAA-Devs ein wenig zusammen:


    "They create extremely high poly sculpts and then retopologise those into low poly models, then bake the high poly information onto the low poly. That means it looks super high poly but is actually low poly, just using normal info from high etc. Then whwn getting close they use tesselation to increase or decrease detail as needed.



    Its not jus tas simple as "high detail". You cant just wack high detail assets into a game and have a nice scene, itll run like pants.



    Frostbite 3 Engine as used by battlefront 2 or battlefield has done tons of GDC talks and they seriously over optimise. So again, you wont get that kind of quality without an artist who can do a high - low or low - high workflow or without photogammetry. But again you still need to retopo most of the time so you will need that artist."

    Du machst also aus dem High-Poly Terrain ein Low-Poly Terrain und auf das Low-Poly Mesh, welches weniger Verticles hat, die Normal Maps etc. so dass es aussieht wie High-Poly. Eine perfekte Illusion, wie ein Magier sagen würde. Optimierung ist beim Landscape sicher ganz groß geschrieben, da sie sehr ressourcenhungrig sein können. Vor allem wenn es um Tiling, Level Streaming und alles andere geht, was Open World Entwicklung mit einschließt.

    Das schön aussehen lassen der Vegetation etc. ist eine Frage der Beleuchtung. Das wurde schon beantwortet. Man kann es einfach machen wie zB in Fortnite mit Dynamic Light.
    Oder Du strebst mehr Realismus an, dann musst Du am Post Processing etwas pfeilen - oder auch etwas länger,
    die Lightmap UVs richtig optimieren (SmartUVs helfen evtl), Fog nicht vergessen, Randomization nutzen und und und.

    Es gibt zu viele Spiele die Spaß machen, aber man merkt, das Ästhetik nicht jedermanns Sache ist.
    Dabei ist jetzt das Jahr 2020 und Blender, UE etc. sind soweit, dass sie sogar VFX für die Filmindustrie so gut umsetzen, dass man sich als Spieleentwickler zweimal fragen sollte, wie viel Aufwand mit das Level Design steckt.

    Ich finde das ist ein sehr interessantes Thema und ich würde es auch gerne richtig lernen.
    Wie Nummer 5 sagen würde: "Nummer 5 will meeeeeeehr Input!" ;)