Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Di Mai 14, 2024 13:55

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Texture wieder verwenden
BeitragVerfasst: Mi Jun 12, 2013 23:18 
Offline
DGL Member

Registriert: Di Dez 13, 2011 19:14
Beiträge: 166
Wohnort: Hamburg / Mölln
Programmiersprache: D
Es kommt ab und an vor, dass ich eine Texture erneut mit Pixel Daten befüllen muss (obwohl die Texture schon welche besitzt) weil sich der angezeigte Content geändert hat (z.B. bei einer Punkte Anzeige, FPS, Uhrzeit etc.).
Nun, sofern die Abmessungen gleich sind, würde ich einen Aufruf von glTexSubImage2D vorziehen, jedoch wenn nicht, was dann? Bisher rufe ich dann einfach noch einmal glTexImage2D auf. Ist das ok? Oder müsste ich vorher die bereits vorhanden Pixel Daten irgendwie löschen? Oder gar die Texture zerstören und eine neue generieren?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Texture wieder verwenden
BeitragVerfasst: Do Jun 13, 2013 11:25 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Aug 18, 2007 18:47
Beiträge: 694
Wohnort: Köln
Programmiersprache: Java
Sofern sich sonst an der Textur nichts ändert (Größe, Format) musst du nichts löschen, einfach nur neu hochladen mittels glTexImage.

Habe das bei mir so gelöst, dass ich für jede Textur einstellen kann ob die Pixeldaten im Speicher bleiben sollen, so kann ich auch nur Teile anpassen und hochladen. Wenn es also eine normale Textur ist -sagen wir mal Steintextur für eine Wand- wird die Textur von der Platte geladen, auf die Grafikkarte geschoben und die Pixeldaten aus dem Speicher geschmissen.

Für meine bisherigen Anwendungen habe ich auch nie glTexSubImage benutzt, sondern immer die ganze Textur neu hochgeladen.

_________________
Es werde Licht.
glEnable(GL_LIGHTING);
Und es ward Licht.


Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"

on error goto next


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Texture wieder verwenden
BeitragVerfasst: Do Jun 13, 2013 14:19 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
glTexSubImage2D kann deutlich schneller sein, als glTexImage2D und sollte immer verwendet werden, wenn es geht. Man kann aber, für Änderung von Format und/oder Größe glTexImage2D verwenden, ohne vorher die Textur mit glDeleteTextures/glGenTextures zu löschen und neu zu erzeugen.

grüße

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 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.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.069s | 17 Queries | GZIP : On ]