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

Aktuelle Zeit: So Jul 20, 2025 18:29

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



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Sa Mai 03, 2003 10:54 
Offline
DGL Member
Benutzeravatar

Registriert: So Dez 29, 2002 10:37
Beiträge: 251
Wohnort: Ulm
hi,

ich mache gerade das tutorial 6 (bin ich nicht schon weit *g) von nehe und wollte nun wissen, warum ich bei auflösungen der textur, die über 256x256 gehen nichts sehe sondern nur ein komplett weißes quad??

mein code der funktion:

<!--pas--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Delphi-Source </td></tr><tr><td id='CODE'><!--pas1--><pre>
<span class='reserved'>function</span> TVirtualMuseum.LoadGLTextures: Boolean;
<span class='reserved'>var</span>
TextureImage : PTAUX_RGBImageRec;
<span class='reserved'>begin</span>
result := False;
<span class='reserved'>try</span>
<span class='comment'>(* textur laden *)</span>
textureImage := auxDIBImageLoadA('kiste.bmp');
<span class='comment'>(* prüfen, ob textur nun <span class='reserved'>in</span> der variablen vorhanden *)</span>
<span class='reserved'>if</span> <span class='reserved'>not</span> assigned(textureImage) <span class='reserved'>then</span>
<span class='reserved'>begin</span>
result := false;
exit;
<span class='reserved'>end</span>;
glGenTextures(<span class='integer'>1</span>, @texture[<span class='integer'>0</span>]); <span class='comment'>(* textur erzeugen *)</span>
<span class='comment'>(* typische Textur generieren, indem die daten von dem bitmap kommen *)</span>
glBindTexture(GL_TEXTURE_2D, texture[<span class='integer'>0</span>]);
<span class='comment'>(* textur generieren *)</span>
<span class='comment'>(* parameter übergeben. für info -> siehe oben *)</span>
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
glTexImage2d(GL_TEXTURE_2D,<span class='integer'>0</span>,<span class='integer'>3</span>,TextureImage.sizeX,TextureImage.sizeY,
<span class='integer'>0</span>, GL_RGB, GL_UNSIGNED_BYTE, TextureImage.data);
result := true;
<span class='reserved'>except</span>
result := false;
<span class='reserved'>end</span>;
<span class='reserved'>end</span>;
</pre><!--pas2--></td></tr></table><span class='postcolor'><!--pas3-->


gruß

_________________
http://www.rochus.net


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mai 03, 2003 11:13 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 13, 2002 12:18
Beiträge: 1063
Das kann daran liegen,

- dass deine Grafikkarte nur Texturen bis zu einer bestimmten Größe unterstützt (etwa Voodoo)

- dass deine Grafikkarte Texturen benötigt, deren X- und Y-Ausdehnung Zweierpotenzen sind (die meisten älteren GraKas und auch viele Neue sind schneller, wenn dies der Fall ist

- dass das Bild, das du laden willst, nicht kompatibel zum glaux Image Loader ist.

Die glaux Library ist ohnehin Schrott (war eine Quick & Dirty Lösung, ich glaube eh der SGI Programmierer, um schnell mal OpenGL Demos erstellen zu können - für "ernsthafte" Anwendungen war sie nie gedacht) - du kannst z.B. den Speicher, den du für dein Texturimage verbraten hast nicht auf einfache Weise wieder frei geben - und hast die Textur jetzt zweimal: einaml in Grafikkartenspeicher und einmal im PC-RAM

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mai 03, 2003 12:31 
Offline
DGL Member
Benutzeravatar

Registriert: So Dez 29, 2002 10:37
Beiträge: 251
Wohnort: Ulm
ich glaub, ich hatte zu wenig schlaf! die ausgangstextur war 437x4irgendwas groß statt 512..

oh man. schlagt mich mal bitte!

_________________
http://www.rochus.net


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 » OpenGL


Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 11 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.007s | 16 Queries | GZIP : On ]