Landscape Performance und Design

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Landscape Performance und Design

    Grüße,

    da Inmatic mich gebeten hat, der Übersicht zuliebe einen neuen Thread zu eröffnen, mache ich das doch gleich mal.

    Hier nochmal meine Anfrage:
    Was meint ihr, wie das Landscape bei Ark gemacht wurde? Ich sehe da kein LOD und kann mir schwer vorstellen, dass das das normale UE4 Landscape sein soll bei der Performance, die man in Ark hin bekommt.
    Ich verzeifel gerade an der Größe der Map und der entsprechend schlechten Performance oder dem gräßlichen LOD vom Landscape, welches alles verzerrt. (Was ja bei Ark nicht der Fall ist)


    Derzeit nutzen wir das Landscape Auto Material, was aber unfassbar viel Performance schluckt. (Auch ohne Foliage) Und zudem stellenweise nicht besonders toll aussieht. Ja - wir wollten es uns halt einfach machen... :D

    Was wir soweit schon rausgefunden haben:
    Ark scheint für große Berge Meshes zu benutzen. Diese haben teilweise nur 1900 Tris... oO Unglaubliche Arbeit. Ich nehme an, dass dort viel mit Heightmaps gearbeitet wurde. Hatte aber noch nicht die Zeit mich genauer damit zu beschäftigen.

    Also... ich Würde mich da über Anregungen zum Design und zur Performanceoptimierung sehr freuen.

    Vielen Dank.
  • Hallo
    Ich kenne die Ark Map nicht.
    Die Meshes von den Bergen sind mit großer Wahrscheinlichkeit sehr einfache Meshes, die ständig im persistent Level gehalten werden um die Shilouetten aus der Entfernung darzustellen.
    Erst bei Annäherung werden sie vom Landscape überdeckt. Anders ist das nicht zu lösen.
    Welches Setup hast du gewählt? Bei einem Setup mit 1x1 komponents hast du nur zwei LOD Stufen. Beim Setup mit 2x2 Components kannst du bis zu vier LOD Stufen im Landscape Mesh und Material nutzen, die Abstufungen sind hier viel feiner. Die erhöhte Performancelast gleichst du durch die Verwendung kleinerer
    Landscapes aus.
    Mit Levelstreaming kannst du die kleineren Level nahtlos überblenden, so entsteht der Eindruck einer großen Welt.
    Kleinere Level kannst du viel performanter gestalten als große.
    Das Landscape Level wird ja ständig im Speicher vorgehalten. Zu große Levels haben also einen ihrer Größe entsprechenden Grundbedarf.
    Die Number of Components ist bei 32x32 gekappt um die Auslastung der Cpu zu begrenzen. Das stellt also die Obergrenze dar. Mit 16X16 hast du ein Mittelmaß, das immer performant laufen müsste.
    Die Größe der Map resultiert danach aus 16x16 im 2x2 Modus.
    Bei 127x127 bei 16x16 Components hast du bei optimaler Auslastung bereits ein Landscape von 4x4 km. Das dürfte überall hin reichen und bringt die Performance nicht zum Erliegen.
    Wenn du jetzt sagst, "Oooch, bloß 4x4 km." Ein kleiner Rat. Das Landscape bilden und mit deinem Char von einem Ende zum anderen rennen.

    Wenn du die Berge wie oben beschrieben als Shilouetten Mesh einbringst und die Distance (Im schlechtesten Fall) bei offenen Flächen etwas im Dunst verschwinden lässt, aus dem nur die entfernten Gipfel auftauchen, hast du, meiner Meinung nach, eine performantes und trotzdem noch elegantes Setup für dein Landscape. Man kann natürlich auch unterschiedliche Größen miteinander kombinieren.
    Im Normalfall vermeidest du im Game weite Blickachsen.
    Ein Panorama kannst du ja mit den obengenannten Shilouettenmeshes einrichten, die umliegenden Lanscapes bei Bedarf durch ein Level Stream Volume bei hoher LOD antriggern.
    Das sind jetzt meine ganz persönlichen Erfahrungen und Gedanken und für meinen Bedarf auf einen low-mid Poly Multiplayer ausgerichtet.
    Ich selber bastle gerade an einem 30x30 km Terrain, bei dem allerdings der überwiegende Teil der Fläche aus Wasser besteht.
    Nach langem Kopfzerbrechen und vielem Ausprobieren habe ich mich für die oben beschriebene Lösung entschieden.

    Gruß
  • Ganz herzlichen Dank für deine ausführliche Antwort. Ich werde mich mit dem Thema Shilouetten Meshes mal auseinander setzen.

    Wir haben derzeit das Maximum versucht. Also 64x64 mit 2x2 (ergibt 8x8 KM)
    Die Fläche brauchen wir auch.

    Es geht um ein open World Sandbox Spiel. Die Welt besteht aus fliegenden Inseln. Dementsprechend ist weniger Platz zum basteln da.
    Ark hat übrigens auch 8x8 KM.
    Wir würden es nicht versuchen, wenn wir nicht wüssten, DASS es geht. Wir wissen nur derzeit nicht WIE es geht und tasten uns (mit eurer Hilfe) da ran.

    Zur Not müssen wir auf die Inseln verzichten oder adden sie als gesamtes Mesh.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Monsterlutz ()

  • Artful3D hat soweit ja schon alles gesagt.

    Was mich jedoch stark wundert, dass ihr Performance Probleme habt, wenn ihr eine 8x8km große Welt habt.
    Im Launcher gibt es unter Anleitungen, Landscape Mountain zum Download. Soweit ich weis ist es eine 8x8km große Welt, die mit WorldMachine gemacht
    und im Editor angepasst wurde.

    Da ist auch nichts mit LevelStreaming und das Landscape selber sieht von großer Entfernung auch noch genauso gut aus.
  • Inmatic schrieb:

    Artful3D hat soweit ja schon alles gesagt.

    Was mich jedoch stark wundert, dass ihr Performance Probleme habt, wenn ihr eine 8x8km große Welt habt.
    Im Launcher gibt es unter Anleitungen, Landscape Mountain zum Download. Soweit ich weis ist es eine 8x8km große Welt, die mit WorldMachine gemacht
    und im Editor angepasst wurde.

    Da ist auch nichts mit LevelStreaming und das Landscape selber sieht von großer Entfernung auch noch genauso gut aus.
    Wundert mich auch sehr. Aber das liegt wohl an den Teilen die wir unsichtbar gemacht haben (inseln ausgeschnitten) und das wir ein 2. Landscape in der selben Form auf der Unterseite haben.
    Wenn es da aber schon Performanceprobleme gibt, ohne dass der Content drauf ist, fangen wir lieber gleich ordentlich nochmal neu an.

    Werd mir die von dir erwähnte Demo mal ansehen, Danke dir.
  • Ich glaube nicht das die Polygonanzahl euer Problem ist.
    Es braucht eine Menge Polygone um die Engine in die Knie zu zwingen.

    Ich würde hier nur teilweise Meshes verwenden und zwar genau da, wo man mehr Details braucht, die man mit dem Landscape Tool nicht hinbekommt.
    Höhleneingänge, mal so als Beispiel.

    Wenn du/ihr eh schon dabei seid euch das anzuschauen, würde ich auch gleich die Particle Effekts Demo und Elemental Demo runterladen und anschauen.
    Hier wird immer ganz gut gezeigt wie man mit Meshes eine riesen Welt Simuliert ;)

    Wenn ihr eine richtig geniale Landscape Demo haben wollt, dann empfehle ich hier auch noch "A Boy and his Kite"
    Hier werden aber minimum 32GB Arbeitspeicher Empfohlen um die komplette Welt in einem Stück zu öffnen.


    Epic hat sich hier echt viele Gedanken gemacht um so viel Szenarien wie möglich als Demo zu verpacken, um sich das ganze an oder abzuschauen.
    Das wären zumindest meine ersten Schritte, die ich euch Empfehlen würde ;)
  • Mich wundert das nicht. Haben alle von euch einen 32 GB Arbeitsspeicher?
    Die Theorie und was die bei Epik damit rausholen und was ihr rausholt, sind zwei verschiedene Paar Schuhe.

    Jede Insel in ein eigenes Level zu packen ist nur Logisch.
    Das Lanscape Tool ist schon was feines. LOD,Sculpt,Texturierung....usw.
    Wieso nicht die Oberfläche mit Landscape, Rand und Boden aus Meshes?
    Das könnte ich mir gut vorstellen, so etwa wie bei Avater... extrem Cool.
    Das World Composing Tool finde ich für eure Zwecke kontraproduktiv.
    Das mit den Inseln ist doch sowieso locker. Da kann man die Inseln einzeln erstellen, Platzieren, vergrößern und was weiß ich noch alles... ganz wie man will.
    Das ganze mit Levelstreaming verknüpfen und gut iss...
  • Es ist ja auch ein Zufall, dass wir das Gleiche Problem haben.
    Ihr mit den fliegenden Inseln, ich mit der Inselmap.
    Zuerst habe ich ein Persistent Level mit Sky und Directional Light erstellt.
    Dann habe ich meine Map in Planquadrate unterteilt und zunächst jeweils ein Physcal Volume, ein entsprechendes Lightmassvolume und eine Waterplane pro Planquadrat in ein Level hineingepackt, dann die Inseln jeweils in einem eigenen Level wo sie voraussichtlich hin sollen.
    Als nächstes kommen dann die Verknüpfungen mit Level Streaming. In Der Bewegung über die Mapp schiebe ich so die Visibility dann von planquadrat zu Planquadrat, von Insel zu Insel vor mir her.

    Als nächstes kommen dann die Shilouette Meshes. Dazu werde ich von den einzelnen Inseln einen Screenshot machen, grob nachbauen und texturieren. In welches Streaming level ich das dann packe wird sich zeigen.
    Jetzt habe ich das alles in kleine Chunks unterteilt, die ich nach belieben aus und einblenden und bearbeiten kann.
    Würde ich ein größeres Landscape haben wollen, ich würde es genauso machen. Meine größte Landfläche wird allerdings voraussichtlich "nur" 2x2 km betragen.
    So läuft das auch auf meinem Rechner stabil. Ausserdem bekomme ich schnell Erfolgserlebnisse indem ich Insel für Insel einfügen und bearbeiten kann.
    Sollte ich auf einer insel noch Levels für einen Event brauchen, erstelle ich auf der entsprechenden InselMap einfach ein Sublevel.
    Für den Anfang habe ich mit einer 12km Map begonnen, bei der allerdings der Großteil der Map nur aus Wasser bestehen wird.
    Die bestehende Map kann ich nach und nach auf die angestrebten 30km erweitern.
  • Harlyk schrieb:

    Ich war mal so frei das Thema in den Ark Moddingbereich zu verschieben, da sich die Frage speziell auf Ark bezieht.
    Jap, danke. Wenn wir das Problem gelöst haben (und wir sind kurz davor) werde ich einen neuen Thread mit dem Ergebnis öffnen.

    Was ich jetzt schon mal sagen kann - Finger weg mit Landscape Auto Material. Für Composing ganz ok. Aber definitiv nicht Game ready.
  • Ich hab jetzt einige Zeit im Landscape Editor verbracht und muss sagen, das Ding ist sehr genial.
    Für den Hintergrund kann man ein sehr kleines Landscape erstellen und so hoch skalieren wie man will. Das Landscape kann man ohne Performanceauswirkungen persistent halten. Ob es sich da noch rentiert extra Landscape Meshes zu erstellen, glaube ich nicht.
    Man muss allerdings bedenken dass die Physik zum Rand hin unzuverlässig wird und ab spätestens zwanzig km völlig versagt. Ein Testversuch lief mit vier Levels mit 63x63x1x1 components, vergrößert um Tausend von der Physik her einwandfrei. Hier habe ich ein Gebiet von 40 km* abgedeckt. Die Auflösung reicht für flache Geländeerhebungen mit kleineren Buckeln und Dellen völlig aus. Für ein Panorama Level reichen ganz geringe Auflösungen mit ein paar Vertices schon aus.
    Ein Landscape aus 31x31x1x1 habe ich auf 100km* skaliert (Für diesen Zweck hätte auch ein wesentlich niedriger aufgeteiltes Mesh ausgereicht). Die Physik versagt hier natürlich fast vollständig, ich habe aber ein ausgezeichnetes Panorama Level für umliegende Berge und Inseln.
    Die Landscape Texturen muss ich bei skalierten Landscapes duplizieren und im Materialeditor die UVs so hoch skalieren wie das Landscape, dann kann ich die gleichen Texturen für das vergrößerte Mesh und das original Landscape ( 100x100) verwenden.
    Darüber kann ich dann kleinere Landscapes mit höherer Auflösung legen und die Landschaft sehr hoch aufgelöst sculpten und Texturieren. Die kleinen Landscapes packe ich in kleinere Level, die ich streamen kann wie ich will. Ausserdem kann ich so die Landscape Materialien für die einzelnen Landscapes klein halten und auf ein Minimum beschränken.
    Jedes zusätzliche Texturlevel verringet die Peformance erheblich. Ausserdem kann ich so die Anzahl der gerenderten Segmente minimieren.
    Each component has a render-thread CPU processing cost and each section is a draw call, so try to keep these numbers to a minimum. For the largest Landscapes, Epic recommends a maximum of 1024 components.(Epic)
    Diese Größe entspricht der Kite Demo.
    Die kleineren Landscapes kann ich gut bei der Hälfte oder, je nach Levelgröße noch weniger der angegebenen Komponenten halten und habe trotzdem noch eine gute Auflösung.
    Also hohe Auflösung bei guter Performance.

    Die Landscapes kann man verbauen und ineinander schieben wie man will. Übereinander, untereinander, ineinander, in allen Größen und Skalierungen, in verschiedenen oder gleichen Leveln. Das System ist so flexibel wie unsere Phantasie es zulässt. Aneinandergrenzende Landscapes einfach ein wenig überlappen und so sculpten, dass die Gerade verschwindet und mindestens ein kleiner Winkel zwischen den Flächen entsteht. Das funktioniert so gut, dass man letztendlich keinen Übergang mehr erkennen kann.

    Ein Landscape kann auch als FBX exportiert und in Blender etc. Importiert werden.
    Da das Mesh extrem hohe Poygonzahlen aufweist, kann ich eine niedrig aufgelöste Plane darüberlegen,
    Shrinkwrap modifier drauf und fertig ist das Lowpoly Mesh vom Landscape, das ich bei Bedarf wiederum als Heigthmap für mein LOW_Landscape verwenden kann.
    Mit separate bei lose Parts zerfällt das importierte Landscapemesh in seine einzelnen Segmente, die ich dann im 3D Programm als Referenz verwenden kann.
    Das Importierte Mesh liegt auf verschiedenen Layern. Einfach vor der Weiterverarbeitung in einen Layer zusammenführen.

    Das Skalieren der Landscapes ist ohne Einbußen der Physik möglich. Es gelten lediglich die üblichen Beschränkungen. Momentan liegt die Maximale Größe bei 20x20 km. Zu den Rändern hin wird die Physik unzuverlässig, das Mesh fällt beim Spawn durch das Landscape.
    Die größte Map liegt ohne skalierung etwa bei 8x8 km. Da is die Zahl der Segmente und Componenten ist dann aber schon extrem hoch. Die Renderkosten steigen mit erhöhter Segmentzahl exponential, ähnlich wie bei den Texturgrößen. Also doppelte Größe=4fache Belastung.
    Epic enmpfiehlt als Obergrenze 63x63 komponents. Die 127 oder 255 sind, denke ich nicht mehr echtzeit geeignet. Bei kleinen Landscapes benötigt man aber nur einen Bruchteil dieser Obergrenze. Ich selber verwende nie mehr als 31x31 Segmente, also lediglich ein Viertel der Segmentzahl der empohlenen Obergrenze. Das reicht für meine Zwecke mehr als überall hin.
    Levelstreaming ist kinderleicht, weshalb also auf den riesigen Landscapes bestehen, wenn es mehrere kleinere auch, um nicht zu sagen, erheblich besser tun?
    Die Physik folgt dem Charakter bei der Erstellung der Landscapes in einzelnen Levels problemlos ins jeweilige Level. Es sind keine weiteren Einstellungen nötig
    Die World Composition kann ziemlich viele Segmente aneinanderfügen, die Physik wandert hier automatisch mit dem Charakter mit.
    Theoretisch sind hier endlose Landscapes möglich, die jedoch nicht multiplayertauglich sind.
    Praktisch schmiert mir hier relativ schnell der Rechner ab.

    Ich denke man sollte beim Gestalten der Landscapes die Exponentiale immer im Hinterkopf behalten, dann fährt man gut dabei.
    Die Landscapes müssen nicht Quadratisch sein, obwohl natürlich die Ökonomie mit zunehmendem Länge Breite Verhältnis abnimmt.
    Im Technical Guide von Epic ist eine sehr schöne Liste optimaler Landscapedimensionen dazu dargestellt.

    Die Skalierung in der Höhe muss vor der Bearbeitung eingestellt werden. Die Einstellung steht default bei hundert, der höchste Berg kann also hundert Meter hoch sein.
    Will man dreihundert Meter hohe Berge haben, einfach die Z Skalierung des Landscapes entsprechend erhöhen. Dran denken, wenn man Wasser hat, die Wassertiefe abziehen.
    Nachträgliches Skalieren ist möglich, wobwi natürlich die Dimensionen entsprechend verzerrt werden.
    Auch kann im Editor die Komponenten und Segmentzahl nachträglich verändert werden. Zum Testen der verschiedenen Auflösungen habe ich das Tool oft benutzt, Praktisch sehe ich eine nachträgliche Veränderung des Landscapes hier eher mit Skepsis, da sich zu viele Parameter verschieben.

    Die Größenverhältnisse ingame sind anders als im reelen Leben. Genau wie die Gebäude etwas größer sein sollten, so sollten die Landscapes etwas kleiner sein. Die Berge vielleicht nur halb so hoch machen wie ursprünglich gedacht, das reicht oft überall hin.
    Meine ersten Inseln musste ich z:B. weit auseinanderziehen, die einzelnen Inseln verkleinern und abflachen und die Karte ein gutes Stück erweitern, da sie, von einem Berggipfel aus betrachtet, ausgesehen hat wie ein zugewachsener Gartenteich. Das ist halt ein Erfahrungswert. Ein Bisschen Nebel dazu und jetzt gehts einigermaßen.

    Landscapes und Worldmap.
    Ich verwende solche Tools nicht, die Größenverhältnisse spiegeln meiner Meinung nach nicht die Bedürfnisse einer Spielwelt wieder aber das kann jeder machen wie er will.
    Ich lege ein Landscape in verschiedenen Ebenen an.
    Zuerst das Land bis knapp über den Wasserspiegel, dann lege ich nach und nach mehrere Meter hohe Ebenen drauf bis die Insel komplett ist. Das ist ganz einfach mit dem Flatten Tool und der Zieleinstellung. Das sieht dann in etwa aus wie die Höhenlinien in einer Landkarte.
    Diese Ebenen können dann mit Wegen, Rampen verbunden, die Steilwände abgeflacht oder mit Felsmeshes verkleidet werden.
    Sculptet man einfach drauflos, wird man schnell feststellen, dass man die meiste Zeit irgendwo an einem Hang und in Schräglage verbringen wird.
    Vorher am besten die Grundrisse der verschiedenen Ebenen aufzeichnen und planen.
    Immer wieder Referenzbilder von Landschaften anschauen und versuchen die Grundprinzipien der Landschaft zu erfassen.
    Als Beispiel: Oft Gehen die Berge einer Landschaft auf einer Seite Flach hoch und fallen alle auf der anderen Seite in die selbe Richtung Steil ab... Das Ganze kann man dann auf seine kleine Welt eindampfen und umsetzen.
    Nicht tausende von Kleinigkeiten hineinbringen. Einige wenige, auffällige Landmarken wirken besser.
    Das Gelände so formen, dass man es wiedererkennt. Etwa einen hohen, einzelstehenden Felsen als orientierungspunkt, einen Bergrücken, den man an seiner markannten Form erkennen kann.
    Für allzuviel Beliebigkeit finde ich, ist in einer kleinen Spielwelt kein Platz.
    Landscapes müssen nicht zwingend aneinandergereiht sein. Wichtig ist nur ein existierendes Level. Ob ich hier Meshes, Landscapes oder auch nur ein Physical Volume vorhalte ist völlig egal.
    Fliegende Inseln etc. kann ich als einzelne Meshes oder Landscapes in den Raum setzen wie ich will. Ich kann sie mit Brücken verbinden, den Char fliegen lassen, ganz nach Gusto.


    Während meiner Testphase habe ich meine Spielwelt mehrmals zusammengebaut und wieder verworfen. Ich habe alle Sculptingwerkzeuge ausprobiert, alle Arten von Landscapes erstellt, und auch sonst noch vieles ausprobiert und wieder verworfen. Von einigen Ideen musste ich mich verabschieden anderswo haben sich neue Möglichkeiten eröffnet. Ich denke, da bin ich soweit durch und kann wieder ein Häkchen hinter eine Thematik machen.
    Sollte ich irgendwo einem fatalen Fehler oder einer Falscheinschätzung unterliegen, bitte ich Euch um Rückmeldung.
    Die Ergebnisse meiner kleinen Abhandlung entsprechen lediglich meinem eigenen Wissen. Ich erhebe keinen Anspruch auf Allgemeingültigkeit.
    Für die Erstellung meiner eigenen Spielwelt reicht es jedenfalls aus. Die nächsten Tage werde ich das Grundgerüst für meine Karte fertigstellen, dann kann ich nach Lust und Laune, mal hier, mal da, immer ein Wenig daran arbeiten.
    Ich hoffe, ich konnte dem einem oder anderen helfen.


    Wer einen Rechtschreibfehler findet, darf ihn behalten.

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von Artful3D ()

  • Heilige Sch...e... da hast du dir aber ordentlich Arbeit gemacht. Erstmal vielen Dank für deinen Text.
    Zumindest einen wichtigen neuen Hinweis hast du mir gegeben. Ich bin noch gar nicht auf die Idee gekommen, das Landscape zu skalieren... oO

    Derzeit arbeiten wir erstmal an unseren fliegenden Inseln. Da ist uns ein Durchbruch gelungen und es sieht fantastisch aus. Wenn das erledigt ist, kommt das Landscape dran.

    Vielen Vielen Dank für deine Tips!!
    Vielleicht kannst du ja noch ein paar Bilder zu deinen Erklärungen machen?

    Und bei GElegenheit hätte ich dich dann auch gern mal im TS gesprochen, wenn du nichts dagegen hast. :D

    Kurz zur Erklärung: Die Inseln machen wir jetzt komplett aus Meshes ohne Landscape. Die Technik mit 2 Landscapes aufeinander um die Tiefe zu generieren hat einfach zu viel Performance gefressen. Zumal ich die Meshes genau so sculpten kann. Und so haben wir die Performance übrig um unten noch ein komplettes Landscape zu basteln.
  • @Arful3D: Nur mal so als Zwischenstand. Auch dank deiner Hinweise habe ich jetzt eine wunderbar einfache und performante Lösung für die schwebenden Inseln gefunden. Komplett aus Meshes bestehend mit Layerblend Material. Ich werd noch ein paar Optimierungen machen und dann kann ich eventuell schon erste Bilder zeigen.

    Wenn das erledigt ist, gehen wir vielleicht ein größeres Landscape an. Da sind wir uns noch nicht einig.
    Nochmal danke für deine Hilfe!

    PS: Besteht Interesse an einem Tut für das Layerblend Material?
  • Die Landscape ist grenzenlos, vollkommen egal ob skaliert oder nicht. Der Aufwand hinter der Landscape ist jedoch riesig. Der einfachste Weg eine unendliche Landscape zu erstellen ist WorldComposition.

    Es wird ein Unterordner erstellt indem die Hauptkarte (Persistent Level) erstellt wird. Hier kommt keine Landscape rein. Dann schaltet ihr WorldComposition ein. Unter dem Menüpunkt "Levels" kann dann eingestellt werden, wie wann und wo die einzelnen Landscape und die sonstigen Levels mit Folliage und StaticMeshes erscheinen sollen (streaming).

    Der einfachste Aufbau ist eine Rasterkarte auf einem Papier anzulegen und dann die Quadranten logisch zu nummerieren.

    Beispiel:

    Map_0_0_0 - Landscape
    Map_0_0_0_F - Folliage auf der Karte Map_0_0_0
    Map_0_0_0_SM - StaticMeshes auf der Karte Map_0_0_0

    Map_0_0_1 - Landscape +1 über der Ausgangskarte
    Map_0_0_1_F - Folliage auf der Karte Map_0_0_1

    Das Prinzip ist denke ich klar soweit.
    Im Menüpunkt "Levels" kann man bei eingeschalteter WorldComposition den jeweiligen Levels eine Kategorie zuweisen und je nach Kategorie angeben, auf welcher Entfernung sie ins Spiel gestreamt werden oder gelöscht werden sollen.

    Bei der Benennung mit Map_0_0_0 kann man die erste 0 dafür verwenden mehrere Levels übereinander zu legen.
    Beispiel:

    Map_0_0_0 - Landscape (low)
    Map_1_0_0 - Landscape (high)

    Die beiden Level haben ein niedrig und ein Hoch aufgelöstes Landscape, wobei das natürlich das hochaufgelöste Landscape über den Low liegt. Man stopft jetzt im Compositionfenster die Low-Maps in eine Kategorie mit beispielsweise 1000m und die High in eine Kategorie mit 500m. Das rein und rausstreamen erledigt die Engine.

    In zwei weitere Kategorien kommen die Folliage und die Static Meshes. Für große und sehr Dichte Wälder kann man so extrem viele Bäume erstellen sodass es so schein als würde man kilomenterweit durch einen dichten Wald mit tausenden von Bäumen laufen. Tatsächlich werden aber immer nur ein paar 100 Bäume rein und raus gestreamt.

    Der zweite vorteil des Systems liegt im Editor selber. Alle Levels auf denen man gerade in einer Open World nicht arbeitet können so super einfach ausgeblendet werden.

    Dritter Vorteil ist, dass jede Landscape mit einer eigenen Materialinstanz belegt werden kann. Also steht einer Graslandschaft und einer Wüstenlandschaft oder einer Steppe nichts im Wege, da eine Limitierung der 16 Texturen so umgangen werden kann.

    Soweit ich das bis jetzt testen konnte, funktioniert es sogar, zwei Levels zur selben Zeit anzuzeigen und die getrennten Landscapes verschmelzen zu lassen. Ob das allerdings Sinn hinter der Angelegenheit ist, mag ich bezweifeln, jedenfalls konnte ich noch keine Problem damit feststellen.
  • Du gräbst ja alte Sachen aus. :D

    Danke für deinen Text. Das nutzen wir schon seit ein paar Wochen. ;) Sehr gut geschrieben.


    Wir haben mittlerweile das Ark Dev Kit auseinander genommen. Die haben in der Tat kein Hexenwerk betrieben.
    Das imposanteste daran ist das Landscape Material, das von der Komplexität her sogar noch das ALM übersteigt. Da habe ich noch ein wenig meine Sorgen mit, weil ich nicht verstehe, wie die Details ausgearbeitet wurden. Aber kommt Zeit, kommt Gedankenblitz. Wir schaukeln das schon und halten euch auf dem Laufenden.
Unreal®, Unreal Engine, the circle-U logo and the Powered by Unreal Engine logo are trademarks or registered trademarks of Epic Games, Inc. in the United States and elsewhere.