- var pTexData: Pointer; //natürlich global, sodass ich den Speicher gegen ende freigeben kann
- NewTex : glUInt; //die fertige Raumschifftextur(-ID)
- GrundTex: glUINT //die schwarz-weiß Textur
- begin
- GetMem(pTexData, 256*256*3);
- glGenTextures(1, @NewTex);
- glBindTexture(GL_TEXTURE_2D, NewTex);
- glTexImage2D(GL_TEXTURE_2D, 0, 3, 256, 256, 0, GL_RGB, GL_UNSIGNED_BYTE, pTexData);
- glClearColor(1.0,0.0,0.0,0); //oder welche Farbe auch immer
- //Hintergrundgedanke: alles rot und dann die schwarze RahmenTextur darüber
- glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
- glViewport(0, 0, 1, 1);
- glEnable(GL_BLEND);
- glBlendFunc(GL_one,GL_one);
- glBindTexture(GL_TEXTURE_2D, GrundTex); //wurde natürlich vorher schon geladen
- glBegin(GL_QUADS);
- glTexCoord2f(0,0); glVertex3f(0, 0, 0);
- glTexCoord2f(1,0); glVertex3f(1, 0, 0);
- glTexCoord2f(1,1); glVertex3f(1, 1, 0);
- glTexCoord2f(0,1); glVertex3f(0, 1, 0);
- glEnd;
- glDisable(GL_Blend);
- glBindTexture(GL_TEXTURE_2D, NewTex);
- glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 0, 0, 256, 256, 0);
- end;