Map Automatisch Texturieren

  • Hallöchen,
    da ich neu in diesem Forum bin, hoffe ich erst mal das dies der richtige Platz für die Frage ist.
    Wie bereits im Titel Erwähnt, möchte ich eine Automatische Texturing Funktion für meine Map.
    Da das Gebiet recht groß ist, wäre es etwas schwierig jede ecke selbst anzumalen.
    Folgendes möchte ich:
    Berge/Steile Kanten sollen eine Cliff Texture bekommen (Texturen, Normal, Spec ect alles Vorhanden)
    Tiefere stellen im Landscape sollen zmb Grass/Sand haben. Stellen die sehr hoch sind, sollen etwas Schnee bekommen. Gibt es hierfür irgendwelche Ramps?
    Eine Art UV Map habe ich auch zum Terrain. Jedoch sind es nur drei Farben (Grün"Grass",Blau"Stein",Rot"Schnee")
    Wie ersetze ich die drei Farben mit Texturen.
    Hoffe jemand Versteht meine Frage :D
    mfg

    • Offizieller Beitrag

    Für Terrains wird normalerweise keine Textur verwendet. Stell dir einfach vor du hättest ein ein Terrain mit 4096 * 4096 m, wenn du darauf nun eine 4k Textur legen würdest, dann hätte 1 qm genau ein Pixel.


    Bei Terrains in der UE4 wird das sog. Vertexpaint verwendet. Genau genommen malst du in der UE4 nicht das Terrain an, sondern du zeichnest eine Maske.
    Vertex Paint Funktioniert so:


    1.Du fügst mehre Texturen zu deinem Terrain hinzu.
    2. Alle Texturen werden übereinander gelayert ähnlich wie bei Photoshop. (Die Texturen wiederholen sich unendlich oft so groß wie dein Terrain ist)


    3.Nun liegen alle Texturen übereinander nun wählst du den Pinsel aus und Pinselst auf das Terrain, wodurch du bestimmst welche Textur sichtbar sein soll (Wie gesagt alle Texturen werden übereinander gelayert und gekachelt.
    4.DNochmal: Damit man nicht eine 4k Textur auf ein 4K Terrain mappen muss wodurch man dann ein Pixel pro qm hätte. Werden diese Informationen als Vertex Paint gespeichert.


    5.Wie funktioniert Vertexpaint ? Dein Terrain besteht aus ganz vielen Vertecies die zu einem Tesselation Mesh verbunden sind. Jedes Vertex im Terrain hat verschiedene Informationen gespeichert. zb: Position im 3D Raum XYZ aber auch seine Farbe.
    6.Um sich das mal vereinfacht vorzustellen:


    Alle Vertecies auf einer ebenen Fläche bekommen die Farbe Blau, Blau entspricht gleich eine Grass Textur. (Jedes Vertex das die Blaue Farb Information enthält, macht einen Blauen Klecks in seiner Umgebung. Dieser Farbklecks ist das Eine Maske die bestimmt welches Material sichtbar sein soll. Viele Klecke Kleckse zeichnen so eine größere Grasfäche da sich alle Kleckse miteinander verbinden.


    Das ist der Trick warum man bei Terrain niemals Auflösungsprobleme bekommt, weil die Texturen einfach gekachelt werden und durch die Vertex Informationen bestimmt wird wann wo welches Material sichtbar sein soll. (Geniale Technik)


    So nun hast du hoffentlich verstanden wie Terrains funktionieren aber dies Beantwortet natürlich nicht deine Frage.


    Ich hab keine Ahnung mit welchem 3D Programm du arbeitest, aber der Workflow wäre ganz grob folgender:


    1. Das Terrain im 3D Programm durch Shader zu bauen.
    2. Das Terrain im 3D Programm als Diffusemap zu baken und diese Diffusemap als sog. Splatmap in der UE zu importieren.
    3. Per Splatmap heißt: Du Bakest die Vertex Postionen (Ihre Farbe) als Map und fütterst hiermit die UE4 damit diese diese Informationen wieder als Vertex Informationen behandelt.


    So kannst du theoretisch dein Komplettes Terrain in zbrush, Maya etc erstellen, ob Automatisch oder händisch spielt dann keine Rolle mehr.


    Ach und Tesselation bedeut: Dein Terrain ist eigentlich ne Scheibe und wird immer nur dann zu einem Terrain aufgebaut wenn du hinsiehst. Deswegen ist die Hightmap flach und wird nur angewendet wenn der Player in diese Richtung schaut. (Ebenfalls eine geniale Technik)


    Siehe auch mal hier: Texturierung von Landschaften

    • Offizieller Beitrag

    Auto Landscape Material


    Das was du willst, geht mehr stark ins scripten. Das wäre eine harte Arbeit um dir das alles zu zeigen. Das was ich dir gegeben habe, ist praktisch ein Anfang.
    Mit dein Rot Grün Blau sind genau die farben um etwas zu filtern. Du könntest alle Layer durch ein Filter laufen lassen, also einen Lerp.

  • Auto Landscape Material


    Das was du willst, geht mehr stark ins scripten. Das wäre eine harte Arbeit um dir das alles zu zeigen. Das was ich dir gegeben habe, ist praktisch ein Anfang.
    Mit dein Rot Grün Blau sind genau die farben um etwas zu filtern. Du könntest alle Layer durch ein Filter laufen lassen, also einen Lerp.

    So viel scripten ist da nicht. World Position, Slope Blend, Height blend sind die Stichworte. Viel Spaß beim lernen.

  • Auto Landscape Material


    Das was du willst, geht mehr stark ins scripten. Das wäre eine harte Arbeit um dir das alles zu zeigen. Das was ich dir gegeben habe, ist praktisch ein Anfang.
    Mit dein Rot Grün Blau sind genau die farben um etwas zu filtern. Du könntest alle Layer durch ein Filter laufen lassen, also einen Lerp.

    Eigentlich nennt man es ja Landscape Auto Material oder auch LAM^^
    Hab auch ein LAM, ist eigentlich recht nützlich, wobei man es nicht unbedingt braucht (braucht schon ein bisschen mehr Leistung als ein normales Material), falls man WorldMachine benutzt, siehe hier.

  • 1. Das Terrain im 3D Programm durch Shader zu bauen.
    2. Das Terrain im 3D Programm als Diffusemap zu baken und diese Diffusemap als sog. Splatmap in der UE zu importieren.
    3. Per Splatmap heißt: Du Bakest die Vertex Postionen (Ihre Farbe) als Map und fütterst hiermit die UE4 damit diese diese Informationen wieder als Vertex Informationen behandelt.

    Erstellt ist das Terrain mit WorldMachine, Heightmap erstellt und in UN4 eingefügt.

    Zum Glück habe ich es einigermaßen hinbekommen. Das Terrain ist noch nicht Perfekt, alles hier dient als Übung zu meinem Projekt.
    Leider bekomme ich es nicht hin, das ich eine Normal Map mit einbinde

    Wie man auf denn Bildern sehen kann, sieht es mit der Planken Texture Ka... aus. Bekomme es einfach nicht hin eine NOR,SPEC einzubauen

    Ich Verstehe das die Bilder hier nicht viel weiter Helfen können/werden. Aber ich Verzweifle langsam wirklich. Auf dem Rechten Bild kann man sehen, das oben Grass ist und unten Stein.
    Leider kann ich das Ohne mein YouTube Tutorial nicht Wirklich nachvollziehen. Bringt mir ja auch nix, wenn ich alles aus dem Video hier für mein Material nachmache. Aber evt sieht hier wer was ich vorhabe. Hoffe es gibt eine etwas leichte Erklärung dazu.

    3. Per Splatmap heißt: Du Bakest die Vertex Postionen (Ihre Farbe) als Map und fütterst hiermit die UE4 damit diese diese Informationen wieder als Vertex Informationen behandelt.

    Das "Baken" kenne ich bereits aus Blender. Hilft es wenn ich das Terrain in Blender Texturiere,Bake und dann wieder in die UN4 zurück Bringe? Denke aber das dies mehr Arbeit ist (die Vermeidbar ist)

    • Offizieller Beitrag

    Wie groß ist den dein Terrain oder welche Textur Größe willst du den Verwenden ? Wieviele Pixel hättest du den dann pro qm ?


    Nutzt du den eine Splatmap ?


    Du brauchst definitv nicht in Blender texturieren, das einizge was du exportieren müsstest wäre die Slatmap die du im übrigen auch aus WM raus exportieren kannst.

  • Wie groß ist den dein Terrain oder welche Textur Größe willst du den Verwenden ? Wieviele Pixel hättest du den dann pro qm ?

    Mein Terrain war glaube ich 4097 x 4097. Texturen habe ich 1024x1024 von CT Textures. Mit Gimp habe ich sie Kachelbar gemacht. Wieviel Pixel ich pro pm habe weiß ich da leider nicht ganz. Muss leider zugeben das ich davon kein Plan habe. Habe immer die Texturen drauf gemacht, und gut war :D

    Du benutzt im Material bei Normals Add. Somit überlagern sich die beiden Normals. Du müsstest wie in meinen Tutorial alle Texturen gleich behandeln. Statt Add machst du ein WorldAlignedBlend wie die BaseColor.

    Vielen dank...Das werde ich gleich mal Ausprobieren
    Also hänge ich nun alle Normals mit einem Add zusammen...Anschließend kommen sie in denn Normals Slot (Wie Base Color) Teste es Später gleich mal

  • @Sleepy
    Danke dir. Jetzt kenne ich denn Begriff Splatmap...mit dem Tut sollte nun alles gehen

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Thx