Thema: Delphi Texture nach vorne

Einzelnen Beitrag anzeigen

Benutzerbild von littleDave
littleDave

Registriert seit: 27. Apr 2006
Ort: München
556 Beiträge
 
Delphi 7 Professional
 
#7

Re: Texture nach vorne

  Alt 23. Mai 2008, 14:41
Hier:
Delphi-Quellcode:
procedure BeginStayOnTop;
begin
  // Depth-Buffer auf Read-Only setzen
  glDepthMask(ByteBool(False));
  // Depth-Buffer deaktivieren
  glDisable(GL_DEPTH_TEST);
end;

procedure EndStayOnTop;
begin
  // und nun den Depth-Buffer reaktivieren
  glEnable(GL_DEPTH_TEST);
  glDepthMask(ByteBool(True));
end;

{ .............. }

  if i = CurrentQuad then
  begin
    // Blendung einschalten
    glEnable(GL_BLEND);
    // Blend Funktion setzen
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
    glColor4f(1, 1, 1, 0.7);
  
    // Hervorhebung aktivieren
    BeginStayOnTop;
 
    Win.IMGTexture := quadTexture[i];
    Win.bRenderGUI := True;
  end else
  begin
    // Original Farben setzen
    glColor4f(1, 1, 1, 1);
    // Blenden ausschalten
     glDisable(GL_BLEND);
  end;

  glBegin( // .... hier das Quad Rendern
  glEnd(); // das ende des Quad-Renderings

  // Hervorhebung wieder deaktivieren (falls es an war)
  if i = CurrentQuad then
     EndStayOnTop;
Edit: hab dein Edit nicht gesehen
Also der Code sollte eigentlich funktionieren. Ich weiß nicht, was du dir unter dem "StayOnTop" vorstellt: Der Code ist nur dafür da, um den Tiefentest zu deaktivieren. Wenn du jetzt das Quad noch größer machen willst, musst du das schon von Hand machen.
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
  Mit Zitat antworten Zitat