Hi Leute,
Mein erster Betrag ist gleich mal ein kleines Problem. Ich hab ein Programm gemacht - mit
OpenGl, das Farbwerte in Höhen und Tiefen umwandelt. Allerdings stört das flackern sehr.
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
dc : HDC;
pf : integer;
pfd : TPIXELFORMATDESCRIPTOR;
begin
{OpenGL initialisieren}
dc := GetDC(
Handle);
{PixelFormat setzen}
pfd.nSize := sizeof(pfd);
pfd.nVersion := 1;
pfd.dwFlags := PFD_DRAW_TO_WINDOW
or PFD_SUPPORT_OPENGL
or 0;
pfd.iPixelType := PFD_TYPE_RGBA;
pfd.cColorBits := 32;
pf := ChoosePixelFormat(
dc, @pfd);
SetPixelFormat(
dc, pf, @pfd);
rc := wglCreateContext(
dc);
wglMakeCurrent(
dc, rc);
glClearDepth(1.0);
// Depth Buffer Setup
glEnable(GL_DEPTH_TEST);
glDepthFunc(GL_LEQUAL);
end;
Könnt ihr mir vielleicht sagen, was ich da hinzufügen muss, damit das nicht mehr flimmert? - thx
[edit=sakura] [delphi]Tags Mfg, sakura[/edit]
Ich hab mich nochmal umgeschaut und das hier gefunden: PFD_DOUBLEBUFFER, aber wenn ich das bei pfd.dwFlags statt der 0 einsetze passiert überhaupt nichts mehr, obwohl es bei anderen codes zu funktionieren scheint...