Texturing des Terrains ?



  • Hi,
    Ich habe von einer Heigmap ein Terrain erstellt. Jedoch hat das keine Farbe ( textur ).

    Jetzt möchte ich aber eine Textur über mein Terrain legen.
    Wie funktioniert das jetzt genau ?

    Also ich weiß, dass ich ganz am anfang eine Textur erstelle die ich dann über mein Terrain lege.

    Wie genau erstell ich die Textur ?

    Müssen die anderen Texturen (grass, schnee...etc ) kachelbar sein ?
    Und weclehn Texel der Oberflächen Textur(grass,schnee..etc) verwede ich für welchen Texel der großen Terrrain Textur ?

    Bye



  • [qoute]
    Wie genau erstell ich die Textur ?
    [/qoute]
    Nimm die Heightmap, lege pro Textur eine Höhe von Bis fest. Die tust du zusammenblenden. Allerdings wenn sie feiner aufgelöst sein soll, mußt du zwischen den Vertices auch noch interpolieren, sonst hast du Kacheln, wegen der Höhenunterschiede

    [qoute]
    Müssen die anderen Texturen (grass, schnee...etc ) kachelbar sein ?
    Und weclehn Texel der Oberflächen Textur(grass,schnee..etc) verwede ich für welchen Texel der großen Terrrain Textur ?
    [/quote]
    Ja - müssen sie, sonst hast du seltsame nicht passende Kanten im Terrain. Wenn du es per Multitexturing machst, dann entscheidest du das anhand der Höhe. Die kannst du vorher auslesen und zu einer Alpha Map konvertieren.
    Andere Möglichkeit, allerdings für Streaming schlechter geeignet: Precompilen einer Textur

    Nähere Infos kannst du auf www.vterrain.org erfahren.

    Cheers
    Sven



  • oder du nimmst eine große textur und legst sie drüber...das kann aber wirklich groß werden 🙂

    bye

    tt



  • Terrain.TexturEnable( true );



  • TheTester schrieb:

    oder du nimmst eine große textur und legst sie drüber...das kann aber wirklich groß werden 🙂

    bye

    tt

    Die Möglichkeit besteht zwar, allerdings ist 2048er Textur über einer 256x256er Heightmap mit Detailmap meiner Minung nach das Optische Mindestmaß. Wenn du nicht Größer als 512 werden willst vom Terrain ist das eine Funktionierende Lösung. S3TC einschalten ( bzw. als solche Laden ) und draufpappen *g



  • TGGC schrieb:

    Terrain.TexturEnable( true );

    Syntax error: Function TexturEnable not declared for class Terrain...

    Heißt wohl eher TexturEinschalten oder TextureEnable ... 🤡



  • SnorreDev schrieb:

    TheTester schrieb:

    oder du nimmst eine große textur und legst sie drüber...das kann aber wirklich groß werden 🙂

    bye

    tt

    Die Möglichkeit besteht zwar, allerdings ist 2048er Textur über einer 256x256er Heightmap mit Detailmap meiner Minung nach das Optische Mindestmaß. Wenn du nicht Größer als 512 werden willst vom Terrain ist das eine Funktionierende Lösung. S3TC einschalten ( bzw. als solche Laden ) und draufpappen *g

    Hm, warum eine solch große Textur ?

    Was bedeutet S3TC ?

    ... Was macht man denn sonst, als eine große Textur über das Terrain zu nehemen ?

    Wie/Wann blendet ihr euere Textur ? Und speichert ihr diese Textur(en) in einer Datei ?

    Bye



  • Numerus schrieb:

    Hm, warum eine solch große Textur ?

    Wie oben beschrieben, willst sicher eine Optisch gute Textur haben. Alles unter 2048 ist einfach zu verwaschen. Das währe bei Spielen vor 4 Jahren ok gewesen. Aber bei dem heutigen Stand der Technik... eher nicht mehr.

    Hier der unterschied:
    Das war glaube ich eine 512x512 Texture, ohne Filtering, deshalb sind die Texel auch sehr leicht zu erkennen. Gefiltert würde es mehr verwaschen aussehen:
    http://future-bytes.com/index.php?action=nerohistory&bild=screeni15.jpg
    Hier ein neueres Bild mit 2048x2048:
    http://future-bytes.com/index.php?action=nerohistory&bild=screeni20.jpg

    Was bedeutet S3TC ?

    S3 Texture Compression siehe hier: http://oss.sgi.com/projects/ogl-sample/registry/ARB/texture_compression.txt
    M$ Nutzt die gleiche Technik, hat sie nur in DXTC umbenannt.

    ... Was macht man denn sonst, als eine große Textur über das Terrain zu nehemen ?

    Kleine Texturen tiled rendern. Wenn du nur 2 Stück hast also Gras und Berg, dann kommst du mit 4 Texture Units aus. Also Gras, Berg, Alphamap, um zwishen Gras und Berg zu faden und eine Detailmap, damit es nicht so steril aussieht.

    [qoute]Wie/Wann blendet ihr euere Textur ? Und speichert ihr diese Textur(en) in einer Datei ?[/quote]
    Wir haben 2 Algorithmen. Wir haben ein Tool, daß die Texturen vorher erstellt. Für jedes Tile im Terrain ( 257x257 ). Allerdings gibts beim Streaming Performanceeinbrüche.
    Der 2. ist Multitexturing. Von dem habe ich aber leider momentan keinen Screenie, weil ich an was anderem arbeite, und die Engine nicht ohne große Änderungen unter Linux laufen will 😉

    May the source be with you


Anmelden zum Antworten