OpenGL - Texturen aus BMP nur weis
-
Bitte lesen. Danke.
Bye, TGGC (Reden wie die Großen)
-
Moinsen...
Ich bedanke mich herzlichst für diese Qualifizierte antwort...
mfg!
-
Moinsen...
Gut jetzt weis ich, was es mit 0xcdcdcdcd auf sich hat...
komme aber trotzdem net weiter, weil ich net weis wo der Fehler liegt...
mfg!
-
IbdKdUuweat schrieb:
Ich bedanke mich herzlichst für diese Qualifizierte antwort...
Mach ich doch gern.
Bye, TGGC \-/
-
Moinsen...
Nach dem ich mich (, wie in TGGCs netter Hilfe so toll beschrieben,) gestern dumm und dämlich gegoogled hab, steh ich kurz vor der verzweiflung...
Das einzige was ich wirklich gefunden hab sind die Tuts von NeHe(+ übersetzung) und das Red- / Blue- book... und die hatte ich auch schon vorher.
Wenn ich was in Foren gefunden hab, war dass auch net das was ich such...
HILFE!!!
mfg!
-
IbdKdUuweat schrieb:
Moinsen...
Gut jetzt weis ich, was es mit 0xcdcdcdcd auf sich hat...
komme aber trotzdem net weiter, weil ich net weis wo der Fehler liegt...
mfg!
Das Wissen über die Bitfolge 0xcdcdcdcd und ein Debugger sollten eigentlich genug sein um das Problem zu lösen.
cya
liquid
-
Moinsen...
LiquidAcid schrieb:
Das Wissen über die Bitfolge 0xcdcdcdcd und ein Debugger sollten eigentlich genug sein um das Problem zu lösen.
nicht wirklich... ich komm einfach net drauf... ARGHHHHHHHHH
mfg!
-
http://www.samblackburn.com/wfc/technotes/WTN006.htm
0xCDCDCDCD
Microsoft Visual C++ compiled code with memory leak detection turned on. Usually, DEBUG_NEW was defined. Memory with this tag signifies memory that has been allocated (by malloc() or new) but never written to the application.Frei übersetzt by Sarge schrieb:
Derartig belegter Speicher signalisiert Speicher, der zwar von der Andwendung per malloc() oder new angefordert wurde, aber auf den _niemals_ schreibend zugegriffen wurde (a.k.a.: etwas darin gespeichert wurde)!
HTH
-
Moinsen...
Thanx, aber dass war ja das, was ich bei der such nach "0xCDCDCDCD" auch schon gefunden hab... nur was mus da rein...
Mein (MGLgraphicTexture + id)->data is ja ne GLuint Variable, desen Adresse, laut NeHe tutorial, einmal an glGenTextures übergeben wird und einmal die Variable selber an glBindTexture.
Die Function zum erstellen der Textur siet wie folgt aus:
// Variable für Texturen sMGLgraphicTexture *MGLgraphicTexture; // Function: Läd Texturen bool MGLgraphicTextureLoad(int id, char filename[256]) { bool s = true; MGLconsoleLog("Load Texture...",0 , 0); // DatenSpeicher festlegen: MGLconsoleLog("Capture memory for bitmap",1 , 0); AUX_RGBImageRec *t; memset(&t, 0, sizeof(void *) * 1); MGLconsoleLog("Load bitmap...",1 , 0); char m[256]; // Bitmap laden: if(t = MGLhelpTextureImageLoad("test.bmp")) { MGLconsoleLog("Capture memory for texture",2 , 0); // Speicher festlegen: MGLgraphicTexture = new sMGLgraphicTexture; MGLconsoleLog("Set texture",2 , 0); // Textur einrichten: glGenTextures(1, &((MGLgraphicTexture + id)->data)); glBindTexture(GL_TEXTURE_2D, (MGLgraphicTexture + id)->data); glTexImage2D(GL_TEXTURE_2D, 0, 3, t->sizeX, t->sizeY, 0, GL_RGB, GL_UNSIGNED_INT, t->data); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); } else { MGLconsoleLog("ERROR during[Load bitmap]",1 , 0); s = false; } MGLconsoleLog("Load Bitmap done.",1 , 0); sprintf(m, "t->data %u", t->data); MGLconsoleLog(m,0,1); sprintf(m, "&(t->data) %u", &(t->data)); MGLconsoleLog(m,0,1); sprintf(m, "(MGLgraphicTexture + id)->data %u", (MGLgraphicTexture + id)->data); MGLconsoleLog(m,0,1); sprintf(m, "&((MGLgraphicTexture + id)->data) %u", &((MGLgraphicTexture + id)->data)); MGLconsoleLog(m,0,1); // Speicher wieder freigeben: if(t) { if(t->data) { free(t->data); } free(t); } MGLconsoleLog("Load Texture done.",0 , 0); return(s); }
Das Struct für die Textur:
// Struct: MGLgraphicTexture struct sMGLgraphicTexture { char name[256]; char filename[256]; GLuint data; };
Und der aufruf:
glBindTexture(GL_TEXTURE_2D, (MGLgraphicTexture + 0)->data);
Kommt alles von NeHe, mit ausnahme von den Struct und nem Pointer stadt nem Array für die Texturen...
Aber auch wenn ich nur n Array für die Texturen nehme ändert sich nix!
mfg!
-
Moinsen...
ARGLLL!!!
Keiner kann mir helfen??? Ich begeh selbstmord
mfg!
-
-
Wenn glGenTextures() MGLgraphicTexture.data nicht gesetzt hat, wird wohl glGenTextures() fehlgeschlagen sein.
Vermutlich verrät dir nen Aufruf von glGetError() ja warum glGenTextures nicht will ...
-
Moinsen...
gluErrorString(glGetError()) liefert mir nur ein "invalid operation" zurück...
das sagt mir überhaupt nix.
mfg!
-
Jetzt findest du raus welche der GL Funktionen den Fehler erzeugt, nimmst dir das Red/Blue Book und guckst WANN diese Funktionen genau diesen Fehlercode zurückliefert. So schwer kanns doch echt nicht sein...
cya
liquid