Frage

ein Künstler Freund hat mir eine OBJ-Datei von 3DS Max 2009, die enthält drei Texturkoordinaten als Parameter an den vt Befehl exportiert gesendet. Und das ist richtig nach in.OBJ Spezifikation. Allerdings bin ich mir nicht sicher, wie U-V-W Koordinaten zuzuordnen, die für eine reguläre 2D .jpg Textur versehen ist.

Dies ist relativ wichtig für mich, da ich mit 3DS Max versucht, herauszufinden, gespielt habe, wie es zu zwingen, nur U-V-Koordinaten zu exportieren, aber es scheint kein straightfoward Weg. In diesem Fall ist dies nur eine Skybox, aber in anderen Fällen könnte es etwas Art und Weise komplexe und nicht von Hand fixierbar sein.

Danke!

War es hilfreich?

Lösung

Es gibt einen Abschnitt im Artikel Was UVW Mapping ist , das erklärt?:

  

Sie könnte sich fragen, warum Sie ein brauchen   Tiefe für eine 2D-Koordinaten wie W   Ebene. Ein Grund dafür ist, weil es   manchmal nützlich, der Lage sein, leicht zu schlagen   die Orientierung einer Karte, bezogen auf   seine Geometrie. Um dies zu tun, müssen Sie die   dritte Koordinate. Die W-Koordinaten   hat auch eine Bedeutung für 3-dimensionale   Verfahrensmaterialien.

In Ihrem Fall können Sie einfach die W-Koordinate ignorieren und nur die ersten beiden Schwimmer von Zeilen lesen, die mit vt beginnen. Dies setzt voraus, dass Sie nicht sehr besorgt über den zusätzlichen Platz durch die W-Koordinate genommen sind seit OBJ ziemlich ineffiziente Dateiformat ist zu beginnen.

Persönlich mag ich nicht in OpenGL mit OBJ, weil es Vertex Normalen pro Fläche bietet statt pro Vertex. Um ein Objekt beleuchten zu können, sollte entweder doppelte Ecken oder Normalen berechnen, indem die umliegenden Vertex Normalen in einer Fläche gemittelt werden. Wenn Sie effizientere Alternativen erkunden wollen, werfen Sie einen Blick auf Binärformaten, wie die sorgfältig dokumentiert .md2 Format. Sehen Sie sich auch glDrawElements verwenden, wenn Sie nicht bereits verwendet wird.

Andere Tipps

sorry, wenn ich Ihre Frage falsch verstanden. Aber could't Sie einfach den dritten Parameter ignorieren, w? Wie ich es verstehe, w nur in einer Ebene senkrecht zur Ebene von u und v beschrieben Koordinate ist, so ist es selten für einfaches 2D-Textur-Mapping erforderlich.

hoffe, das hilft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top