Einzelnen Beitrag anzeigen

Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#1

OpenGL, Transparentes Malen mit Maskenbitmap

  Alt 9. Mai 2006, 13:50
oh ich hoffe mal ich habe den Titel treffend genug gewählt.

Also

Ich Programmiere seit neuestem in OpenGL und habe nu das Prob das ich ein Bild habe das ich mit Transparenten Stellen gemalt haben will, aber so wie ich das den Tutorials entnommen habe tut es bei mir net.

Ich habe 2 Bilder eines das meine MAske enthält und eines das ich Zeichnen will.

mit Folgendem Code mache ich das dann.

Delphi-Quellcode:
  glpushmatrix;
  glcolor3f(1, 1, 1); // Reset the OpenGL Pen
  glBindTexture(GL_TEXTURE_2D, Ftexture); // Select the Texture
  glBegin(GL_QUADS);
  glTexCoord2f(+0.0, 0.0);
  glVertex3f(-1.1, -1.1, 0.0);
  glTexCoord2f(+1.0, 0.0);
  glVertex3f(1.1, -1.1, 0.0);
  glTexCoord2f(+1.0, 1.0);
  glVertex3f(1.1, 1.1, 0.0);
  glTexCoord2f(+0.0, 1.0);
  glVertex3f(-1.1, 1.1, 0.0);
  glEnd();
  glEnable(GL_BLEND);
  glBlendFunc(GL_ZERO, GL_SRC_COLOR);
  glBindTexture(GL_TEXTURE_2D, fmaskTexture); // Select the MAsk Texture
  glBegin(GL_QUADS);
  glTexCoord2f(+0.0, 0.0);
  glVertex3f(-1.1, -1.1, 0.0);
  glTexCoord2f(+1.0, 0.0);
  glVertex3f(1.1, -1.1, 0.0);
  glTexCoord2f(+1.0, 1.0);
  glVertex3f(1.1, 1.1, 0.0);
  glTexCoord2f(+0.0, 1.0);
  glVertex3f(-1.1, 1.1, 0.0);
  glEnd();
  glDisable(GL_BLEND);
  glPopMatrix;
Nu habe ich das Prob das das die Maske leider überhaupt nicht dafür sorgt das der Rest Transparent wird.

Im Anhang ist das Bild Problem da sieht man das , so wie ich das will müste man die 2 Boxen im Hintergrund deutlich mehr sehen können.

Was mus ich da nu machen das das so wird ?
Miniaturansicht angehängter Grafiken
problem_141.jpg  
Angehängte Grafiken
Dateityp: bmp floor_top_checkpoint_mask_846.bmp (48,1 KB, 11x aufgerufen)
Dateityp: bmp floor_top_checkpoint_236.bmp (48,1 KB, 12x aufgerufen)
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat