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

Aktuelle Zeit: Do Jul 17, 2025 14:39

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Displaylisten - Texturwechsel
BeitragVerfasst: Mi Nov 10, 2004 13:40 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Ich möchte ne Displayliste schreiben in der mit Texturen gearbeitet wird.
Wenn ich das glBind vor (außerhalb) der DL mache, kann ich dann durch manuelles binden verschiedener Texturen meine Displaylisten ne andere Textur verpassen?

Also so:
Code:
  1. glBind(Tex1) -> glCallList() -> glBind(Tex2) -> glCallList


Haben die gezeichneten Elemente dann tatsächlich verschiedene Texturen, oder sind die Texturinformationen beim erstellen der DL in der DL abgespeichert?

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Nov 10, 2004 14:05 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Also so, wie du das planst, geht das glaub ich auch, ist meiner Meinung nach einer der Hauptvorteile von Displaylisten.
In DLs werden ja blos (verständlich ausgedrückt) Werte gespeichert, wie zB Vertexdaten, die ob ihrer großen Zahl, praktisch schon vorgespeichert werden. Die Grafikkarte muss also nicht jeden Frame die komplette glBegin(...);...glEnd; - Sache abarbeiten, sondern hat seine Daten schon parat. Die Texturen kannst du also ganz einfach vorher, wie du das vorhast binden. Hoffe, ich habe des jetzt richtig rübergebracht :?

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Nov 10, 2004 14:06 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Ja denke schon....werd das dann so machen. :)

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Nov 10, 2004 18:16 
Offline
DGL Member
Benutzeravatar

Registriert: Do Jun 19, 2003 10:44
Beiträge: 991
Wohnort: Karlsfeld (nahe München)
Flash hat geschrieben:
Wenn ich das glBind vor (außerhalb) der DL mache, kann ich dann durch manuelles binden verschiedener Texturen meine Displaylisten ne andere Textur verpassen?

Ich würde mal vermuten nein, da wahrscheinlich dann die vorherige Textur verwendet wird.

Ich glaube nämlich auch irgendwo mal gelesen zu haben das gerade die Festlegung auf eine Textur einen Geschwindikeits-Vorteil bringt.


Aber probier es doch einfach aus und berichte uns dann. :wink:

MfG
Flo

_________________
Danke an alle, die mir (und anderen) geholfen haben.
So weit... ...so gut


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Nov 10, 2004 20:53 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 02, 2003 12:47
Beiträge: 300
Wohnort: Marburg
Äh, ich mach das eigentlcih genauso. Funktioniert auch mit VBO's.

_________________
Nothing, oh sweet nothing,
today we are doing nothing at all...
http://www.geo-progs.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Nov 13, 2004 11:09 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 13, 2002 12:18
Beiträge: 1063
Zitat:
Wenn ich das glBind vor (außerhalb) der DL mache, kann ich dann durch manuelles binden verschiedener Texturen meine Displaylisten ne andere Textur verpassen?

Natürlich klappt das, eine DisplayListe kapselt *genau* die Kommandos, die darin aufgerufen werden, nicht mehr und nicht weniger. Die einzige Ausnahme sind VertexArrays und VBOs, bei denen der Stand der Vertexdaten zum Zeitpunkt der Erstellung der Displayliste in eben diese hineinkompiliert wird, da das entsprechende Objekt zum Zeitpunkt des Aufrufs der DL ja nicht mehr existieren könnte (Zeiger in den Speicher sind ClientDaten, über die OpenGL keine impliziten Informationen hat).
Für Texturen gilt dies aber nicht, da es OpenGL ja völlig egal ist, ob nun eine gültige Textur gebunden ist oder nicht, das liegt schließlich in deiner Verantwortung (Texturobjekte werden vom OpenGL Server verwaltet, womit OpenGL selbst weiß, ob die aktuellen Texturen gültig sind oder nicht).

_________________
Viel Spaß beim Programmieren,
Mars
http://www.basegraph.com/


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 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:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]