• Hallo Zusammen


    Wollte mal Fragen wie ihr dazu steht ein Spiel mit großer offener Fläche zu gestalten. Eigtl hatte ich vor ein große offene Spielewelt zu kreieren. Allerdings gibt es dann einiges an Performanceeinbrüchen. Und ich weiß nicht wie das aussieht wenn ich World Composition benutze. Ob man dann im Spiel sieht das die Level nach und nach geladen werden. Das würde es doch ziemlich kaputt machen.


    So sieht es im Moment aus:


    Wie man sehen kann wird nichtmal im Editor das komplette Landscape geladen. Zu weit weg.
    Oder findet ihr eh verwinkelte Landschaften besser?

    • Offizieller Beitrag

    Performance kostet immer nur das was du sehen kannst und niemals das wo du nicht sehen kannst.
    Die Performance Probleme müssen sprichwörtlich in Sichtweise liegen.


    Schallte doch mal die Stats ein und mach davon ein Screenshot.


    Spontan würde ich vermuten das du einen zu hohen Polycount bei den bäumen hast oder du zuviele Materials verwendst.


    Fakt ist: Performance kostet nur das wo sichtbar ist und das Camera Occlusion Culling ist standardmäßig an. Was du noch tun könntest wäre ein sog. Cull Distance Volume hinzufügen das Objekte ab einer bestimmten Entfernung zum Player nicht mehr anzeigen.
    Du beschränkst also die Sichtweite des players.


    Fog hast du schon drin und bringt dir auf jeden Fall auch nochmal Performance allerdings wirk rosa Nebel eher unrealistisch es sei den er wird komplett von der Sonne angestrahlt. Im Hintergrund hat Nebel normalerweise immer eine leicht blaue Note.
    Du könntest dem Hintergrund noch einen Blur verpassen damit alles nicht mehr so genau gezeichnet werden muss.

  • Das stimmt so nicht ganz @ Sleepy. Alle Blueprints, die im Hintergrund laufen, kosten auch Performance.
    Lässt du ein Mesh durch ein Blueprint berechnen (Beispiel ein Seil das über einem Abgrund hängt) dann kostet das mehr Performance als dieses Mesh statisch einzusetzen.


    Das was Sleepy sagen will anders ausgedrückt: Alles was du sehen kannst, kostet auf jeden Fall Performance. Also sorge dafür, dass man weniger sieht. Nicht durch Blurr oder Fog. Sondern durch Sichtblock. Oder ausdünnen.

  • Die Settings sind schon alle soweit eingestellt. Wie weit was sichtbar ist bzw wann LODs angezeigt werden. Werde wohl nicht drum herrum kommen weniger Foliage einzufügen. Bäume etc. sind schon LowPoly;)
    Im Moment ist Sonnenaufgang also ist der Nebel auch leicht Orange. Aber da scheint sich was mit blauem Licht zu vermischen. Werde mir das aber später anschauen. Das Level Design werde ich wohl noch ändern. Aber nicht wegen der Performance;) Habe jetzt gerade auch gesehen das ein Grass Foliage trotz Sichtweitenbeschränkung nicht verschwindet auch wenn das LandscapeCell schon gar nicht mehr geladen ist. Werde das wohl noch bearbeiten müssen.

  • Das ist es ja. Ich möchte den Spieler das erste Stück führen und dann soll er selber erkunden. Mir geht es darum das der Spieler viel Freiheit in der Landschaft rum zu laufen. Aber unbewusst wird der Spieler wohl immer geführt werden. Alleine durch die Level(Stärke) der "Gegner" und der Quests. Was wiederum bewusst ist beim Questverlauf. Sagen wir mal so ähnlich wie bei Skyrim^^

  • Also. Assets sind wirklich wenig Polys. ca 500 pro Baum sagen wir mal. Die Materials sind mit Displacements und in 2k. Zurzeit gibt es nur eine Lichtquelle. Die Sonne bzw. der Mond. Allerdings habe ich beim Grass tatsächlich noch Schatten. Das ich die ja mit dem Foliagetool setze muss ich jetzt die Meshes selber einstellen so das sie keine Schatten mehr werfen?
    Im großen und ganzen hab ich eine solide Framerate. 40-60 FPS. Irgendwie verstehe ich aber nicht welche Einstellung jetzt für die Sichtweite zuständig ist-.-

  • Schattenwurf der Grasmeshes kannst du direkt im Mesh selbst deaktivieren oder im jeweiligen Foliage Layer. Schatten frisst die meißte Performance. Oder Lichtberechnung im Allgemeinen.


    Displacement ist natürlich auch ein Performancefresser. Da musst du entscheiden ob das nötig ist.
    Auf deinen Screens kann ich kein Displacement sehen. Wo soll das drauf sein?


    2 - 4k Texturen sind mittlerweile Standard. Da kommt es drauf an, wieviele gleichzeitig sichtbar sind. Ist dann eher ein Grafikspeicherproblem.

  • Auf den Screenshots habe ich Displacement nocht nicht benutzt. Aber hier:

    Was ich markiert habe. Sind das die Einstellungen für die Sichtweite? Bei der "grünen" Map hat es zumindest funktioniert. Jetzt auf der neuen ändert sich einfach nichts. Die sichtweite bleibt die ganze Zeit auf ca. 20 meter. Also wo die ersten LODs geladen werden.


    Übrigens ist das Gestein ein 2. Landscape was über dem 1. geht. Geht das oder ist das eine schlechte Idee?

  • Oh Gott...


    Also Displacement solltest du auf gar keinen Fall so großflächig benutzen. Nur für Details. So im 5 Meter Radius um den Char.


    2 Landscapes übereinander? Ganz schlechte Idee. Und vor allem absolut sinnlos. :D
    Wenn du Steine haben willst, dann leg da Steinmeshes rein. Oder mach einen Layer für dein Landscape Material. Aber auf keinen Fall ein zweites Landscape.

  • Kannst du auch erklären warum? Einfach nur nein kann ich leider auch nicht draus lernen was dann passiert ;)


    Achja. 3 layer die Displacment benutzen kann ich vergessen. Dann wird gar kein Shader mehr angezeigt sobald ich den dritten zeichne. 2 gehen noch. Jetzt muss ich überlegen wie ich den Übergang von Schnee zu Grass hin bekomme.

  • Dazu musst du dir mal bitte ansehen, mit welchen Techniken du arbeitest.


    Lerne, was sie machen.


    https://de.wikipedia.org/wiki/Displacement_Mapping


    Displacement erzeugt in Echtzeit sehr viele Polygone um die Tiefe geometrisch darzustellen. Wenn du das auf die gesamte Map macht, dann hast du Millionen unnötige Polygone. Deswegen nur im unmittelbaren Umkreis des Spielers darstellen lassen.

  • Als Anfänger muss ich erst die Gegenfrage stellen wozu die zweite Landscape gut sein soll.
    Mir fallen Spontan nur zwei Gedankengänge ein.
    1) Man will Abwechslung in der Textur. Das wird aber über das Landschaftsmaterial erledigt.
    2) Man will Abwechslung in der Geometrie. Das Landschaftstool manch erst einmal einen guten Eindruck, ist aber begrenzt. Du kannst damit keinen Überhang, Ausbuchtung, Brücke oder eine Höhle mit erzeugen.

  • Welche Sichtweite. Da du das mit dem LOD weißt, kenne ich nur noch die Einstellung für das culling im foliage. Also wen du einen Baum oder einen Stein da rein packst um es nachher auf die Landschaft zu pinseln hat jedes Teil auch seine Detail Einstellungen. Dort steht die Cull Distance
    Zb. Min 0 Max 4000. Ab 4000 (Meter?) wird das Mesh dann ausgeblendet.

    So im 5 Meter Radius um den Char.

    Wie wird das gesteuert. Habe bis dato noch kein Displacement verwendet.

  • Welche Sichtweite. Da du das mit dem LOD weißt, kenne ich nur noch die Einstellung für das culling im foliage. Also wen du einen Baum oder einen Stein da rein packst um es nachher auf die Landschaft zu pinseln hat jedes Teil auch seine Detail Einstellungen. Dort steht die Cull Distance
    Zb. Min 0 Max 4000. Ab 4000 (Meter?) wird das Mesh dann ausgeblendet.
    Wie wird das gesteuert. Habe bis dato noch kein Displacement verwendet

    Das werde ich mir morgen nach der Arbeit nochmal genauer anschauen.


    Wie wird das gesteuert. Habe bis dato noch kein Displacement verwendet

    Bei mir ist es im Moment irgendwie schon vom editor eingestellt. Auf ca. 5m wird Displacement langsam ausgeblendet. Finde ich aber sehr störend wenn ich durch die Map laufe und langsam Steine auf dem Boden wachsen. Muss ich auch noch rausfinden wie ich das einstelle. Wenn ich es raus gefunden habe werde ich hier schreiben.

  • Achja. 3 layer die Displacment benutzen kann ich vergessen. Dann wird gar kein Shader mehr angezeigt sobald ich den dritten zeichne. 2 gehen noch. Jetzt muss ich überlegen wie ich den Übergang von Schnee zu Grass hin bekomme.

    Hast du in deinem Landscape_Material, "Texture Objects" oder "Texture Samples" benutzt?
    Wenn "Texture Samples", dann stell mal bei jedem einzelnen, die Sampler Source auf "Shared: Wrap".


    Hier ne alte Frage von mir, im englischen Forum, die dir erklärt, was es mit den Sampler Sources auf sich hat