Da hatte ich mich schon so grefreut das opengl so einfach geht und jetzt kommt so ein Code den ich nicht kapiere und bestimmt nih kapieren werde. hm.....................
Im Prinzip werden die Daten aus dem TBitmap über die Eigenschaft Scanline ausgelesen und in ein weiteres Array kopiert das dann OpenGL übergeben wird. Mit gluBuild2DMipMaps übergibt man OpenGL dann die Texturedaten.
Statt die Farbwerte blau und rot zu vertauschen kann man natürlich auch GL_BGRA als Textureformat angeben. Das wäre natürlich besser:
hm... also dein Code funktioniert nicht. Naja...Habe aber immer irgendwie noch probleme bei den Tutorial. Später soll man so ein Beispiel proggen also eine große Pyramide in der Mitte dahinter eine kleine und auf beiden Seiten welche. Die kleine soll sich immer nach oben und unten bewegen. Wenn die kleine Pyramide oben die Spitze der großes Pyramide trift soll die Große Pyramide Rot aufblinken. Außerdem sollen die Halb transparent angezeigt werden. Und der Texture soll sich bewegen. Und die beiden außeren sollen sich um die Große Pyramide bewegen. Naja, wenn ich jetzt die Texture weg lasse funktioniert alles. Aber wenn der Texture da ist. Sieht man nur die kleine Pyramide. Hier mal der Code:
Code:
glClearColor(0,0,0,0);
glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
Vielleicht fängst du mal mit einem einfachen, texturierten Quad an. Achte darauf, GL_TEXTURE2D auch enabled ist, und dass du Texturkoordinaten sendest.
Wenn das dann klappt, kannst du dann mit etwas Komplexeren weitermachen.
Um beim konkreten Problem weiterzuhelfen: nachdem die Pyramide durchsichtig sein soll, ist wahrscheinlich Alphablending aktiviert - wenn dein Bitmap gar keinen Alphakanal hat, du diese aber als RGBA Textur verwendest, sind die Alphawerte alle auf den selben Wert gesetzt, womit du dir u.U. die gesamte Textur (und damit die äußere Pyramide) erfolgreich ausmaskierst...
Hm...also ich habe jetzt mal alle Tutorials hier durchgelesen, irgendwie kapiere ich die nicht. Am anfang gehts ja noch später reden die dann über die und die pas datei und die dll die ich garnicht habe.... also irgendwie etwas undeutlich. Das andere problem ist bereits gelöst. Wo ich die meisten Probleme habe ist das mit dem Texturen laden. Also jetzt kann ich ja nur Bitmaps laden. Aber wie JPG? Und wie kann ich in OnShow mehere Texturen laden? Also Z.b.
Ja hat denn nicht zwei Posts weiter oben Lars gezeigt, wie du aus einem TBitmap eine OpenGL Textur machst?
Du kannst ja jeden TImage Abkömmling in einem TBitmap darstellen... (wenn du dir dazu Lischkes GraphicEx runterlädst, hast du alles an Formaten, was das Herz begehrt).
Die Texturen bindet man normalerweise an Texturobjekte, die dann zum gegebenen Zeitpunkt aktiviert, schau dir dazu die Doku zu glGenTextures und glBindTexture an, schaut dann also so aus:
Hm... aber doch noch probleme mit dem Texturen.
Vorne die wand und die Rechte sind die Texturen falschrum bzw. so komisch habe eigendlich bei der wand oben und unten so ein streifen der läuft aber bei der rechten wand vertical runter....
Mitglieder in diesem Forum: Majestic-12 [Bot] und 3 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.