Hallo mal wieder,
ich spiele zur Zeit etwas mit der Terrain-Generierung herum. Nun frage ich mich, ob es auch möglich ist für Andere Texturlayer als 1 eine Transformationsmatrix zu setzen.
Möglicherweise gibt es aber auch eine ganz andere Lösung für folgendes Problem:
Ich möchte ein Terrain so darstellen, dass es an manchen Stellen eine Sand, und an anderen Stellen eine Steintextur aufweist. Wo welche dieser Texturen angezeigt werden soll, kann ich mittels einer weiteren Textur bestimmen (das ist ja unter anderem der Sinn von Multitexturing). Das Ganze funktioniert soweit auch problemlos, nur hätte ich gerne, dass die Stein- und die Sandtextur kleiner skaliert angezeigt werden, sodass die Landschaft detailreicher aussieht (das könnte man auch lösen, indem man riesige Texturen verwendet, aber ich denke das ist keine gute Idee).
Kannst du nicht einfach für die höheren Layer andere Texturkoordinaten angeben?
Dann müsste die Terrainklasse bereits über die Texturinformationen verfügen - stimmt, das wäre eine Lösung, auch wenn es bedeutet, dass man das Terrain neu bauen muss um es anders zu texturieren.
Nachträglich die UV-Koordinaten für verschiedene Layer zu beeinfluss ist nicht möglich, oder?
Doch, das sollte eigentlich über den PolygonManager funktionieren.
Ok, aber wie funktioniert das? Ich meine PolygonManager.getTextureUV hat keinen Parameter für die Ebene und ich konnte bisher auch keine andere Methode finden die etwas in diese Richtung zu können scheint.
Das geht mit setPolygonTexture(). Die Variante, die eine TextureInfo als Parameter nimmt.
Oh, das ist mir völlig entgangen *beschämt in eine Ecke stell* :-[ .
Vielen Dank, ich denke damit lässt sich das auch relativ gut umsetzen.
Bin nun endlich dazu gekommen es umzusetzen, zusammen mit einem Shader für die Auswahl der richtigen Textur sieht das Ganze jetzt so aus:
(https://dl.dropboxusercontent.com/u/1618711/web/2014-01-02%2023.41.50.png)
:D
Ja, sieht doch schon gut aus. Ist das ein konkretes Projekt oder 'nur' zu Testzwecken?
Es ist eher zu Testzwecken, beziehungsweise ich entwickle ein paar Klassen die mir später dann hoffentlich einiges an Arbeit abnehmen können. Für den Fall, dass ich mal ein konkretes Projekt habe, irgendwann ;) .