Registriert: Di Apr 29, 2008 18:56 Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,
ich hab zwar grad keine Idee warum dieser Effekt zustande kommt, aber warum übergibts du die Textur-Koordinaten nicht normal mit den Vertex-Daten. Das über eine extra Textur zu lösen ist eher untypisch und auch langsamer, da du ja immer 2 Textur-Lookups machen musst.
Diesen untypischen Weg habe ich gewählt, weil ich die lookup-Textur offscreen rendern möchte um so sehr flexible Texturen in Echtzeit mappen zu können.
Die Lookup-Textur erstelle ich mit GL_RGBA, GL_UNSIGNED_BYTE. Gespeichert ist sie als png mit 0 Kompression.
Zur Shader Präzision habe ich nur etwas im Zusammenhang mit OpenGL ES 2.0 gefunden. Ich programmiere mit dem normalen OpenGL, glsl #version 330 core
Huch, beim Stichwort Präzision fällt mir gerade ein, dass die Farbwerte ja nur von 0-255 gespeichert werden. Da funktioniert eine uv-lookup-textur eh nur bei kleinen Bildern... ups. Spontan fällt mir ein, je uv-Achse zwei Kanäle zu nehmen? mit rgba hätte ich ja vier zur Verfügung.
Genau die Idee mit einer zusätzlichen Weiterleitungstextur habe ich auch schon mal gehabt, allerdings wieder verworfen, weil man eigentlich tatsächlich sehr wenig gewinnt. Es ist kaum aufwendiger die Werte direkt zu updaten.
Registriert: Di Mai 18, 2004 16:45 Beiträge: 2622 Wohnort: Berlin
Programmiersprache: Go, C/C++
Üblicherweise nennt sich das Sparse Texture. Zu deinem Problem, du solltest mal gucken, dass du bei beiden Texturen das Texturfiltern auf linear, trilinear stellst. Ich vermute, dass es aktuell wie folgt eingestellt ist.
Stimmt Opengler, werde die höhere Genauigkeit pro Kanal meiner spontanen Idee mit den zwei Kanälen je Achse klar vorziehen. Für 3D ist die Methode wohl nicht sehr gefragt, aber für nette 2D Effekte finde ich sie Klasse.
Die Texturfilter sind auf Linear. Aber stimmt, Nearest würde wohl ähnliche Fehler produzieren.
Mitglieder in diesem Forum: 0 Mitglieder und 13 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.