Announcement

Collapse
No announcement yet.

Texturierung / UV-Koordinaten

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Texturierung / UV-Koordinaten

    Hi,
    ich erzeuge mir meine Welt aus einer txt datei heraus (ähnlich einer heightmap, allerdings nur mit quadratischen blöcken)
    bis jetzt habe ich nur Seitenwände gezeichnet. Ich hatte also zum beispiel eine Wand mit höhe und breite 4 -> 4 quadrate aus je 2 dreiecken.
    die Textur wird einfach immer wieder auf jedes Quadrat gelegt und es schaut recht hübsch aus.

    Jetzt wollte ich zu den Wänden auch noch einen Boden in mein Mesh speichern. Daher habe ich meine Wand-textur mit meiner Boden-textur zusammengeschnitten.
    In folge wird aber meine Wand nicht mehr durchgehend gezeichnet. Bis jetzt hat man keinen Übergang gesehen... jetzt sieht man so zusagen die Fugen.

    Habe schon ein bischen herumgespielt man Nachkommastellen bei den uv-koordinaten.. es wird aber einfach nicht sauber.

    meine Textur ist im .dds format und eine 2er potenz.

    Ich hoffe mein Problem ist klar. Gibt es dafür eine Lösung? oder muss ich ein extre Mesh für boden und für wände machen und extra zeichnen?

    grüße

  • #2
    Ist das problem wie du deine textur filterst, bei nearest sollte man denke ich keine-weniger seams sehen (jedoch werden die texturen dann pixeliger). Du könntest etwas platz zwischen den unterschiedlichen flächen (in der textur) lassen - entweder im file oder die texturcoordinaten leicht nach innen verschieben. Alternativ kann es auch mit dem TEXTURE_WRAP wert zusammenhängen.

    Oft ist es beim texturieren meist schon hübscher wenn die textur über die kante verläuft, vor allem bei low-poly modellen. (Vgl der minecraft gras zu dirt übergang.) Kommt ein wenig darauf an was dir wichtig ist. Perfekt seamless, oder ob texture seams ok sind.

    Alternativ könntest du auch einen multitexturing ansatz überlegen und zwischen unterschiedlichen texturen interpolieren.
    Matthias
    CGUE, Vis2, Infovis Tutor

    Comment


    • #3
      Ich verstehe nicht ganz, was du jetzt gemacht hast - hast du einen Texturatlas gemacht, der sowohl Wand- als auch Bodentextur in der gleichen Datei beinhaltet? Wenn ja, hast du das Problem dann noch, wenn du als Minification Filter für die Textur Nearest Neighbor verwendest? Bei Texturatlanten musst du beachten, dass die Texturfilterung ein bisschen komplizierter wird, weil du bei bilinearer Interpolation am Rand einer Teiltextur zusätzliche Samples brauchst - am tatsächlichen Texturrand kann man das über Textur-Hints bestimmen, z.B. Clamp to edge, aber innerhalb der Textur selbst musst du selbst für die zusätzlichen Pixel am Rand von Teiltexturen sorgen, z.B. durch Spiegelung des Randes nach außen oder Copy-Paste des gegenüberliegenden Randes, wenn die Teiltextur kachelbar ist.
      Kannst du denn über die Farbe der Fugen bestimmen, woher die Artefakte kommen? Also ist es die Hintergrundfarbe des Texturatlas oder sind es Farben der jeweils anderen Textur? Das würde ich mal überprüfen.
      Former ECG & CGUE Tutor

      Comment


      • #4
        danke für die schnelle antwort.
        ich habe echt schon lange herumprobiert was das problem ist... an die filterung hab ich natürlich nicht gedacht. (daran liegt es natürlich auch )
        mein weiteres Vorgehen werde ich mir noch überlegen.

        Comment


        • #5
          wenn man mit blender Texturen bäckt, kann man einstellen wieviel "Rand" (margin) dazugegeben wird um eben genau diese Filtering-Artefakte zu vermeiden. Wenn man die Texturen selbst anlegt, kann man diesen Margin selbst dazubasteln. In der Textur sollten polys, die keine gemeinsame Kante haben nicht direkt zusammenstehen. Beim Filtering wird über solche Kanten einfach drübergefiltert, und damit hast du dann bleeding. Die größe des "Sicherheitsabstand" hängt von vom Mesh, der Szene und der Textur ab. Mehr ist immer besser, aber damit verschenkst du auch wichtige Auflösung in deiner Textur.

          und noch allgemein: Ein screenshot sagt mehr als Tausend Worte und macht das Fehler finden einfacher

          lg, Simon
          Simon Wallner
          CGUE, EVC Tutor, former RTR, ECG, CG1, CG2, TIL Tutor

          Comment

          Working...
          X