Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Звук, графика и видео > gluLookAt - не могу заставить работать.


Автор: evilguard 23.6.2008, 10:02
Код

procedure TfrmGL.FormPaint(Sender: TObject);
begin
 glClear (GL_COLOR_BUFFER_BIT);      // î÷èñòêà áóôåðà öâåòà

 glBegin(GL_QUADS);
   glVertex3f(1.0, 1.0, 0.0);
   glVertex3f(-1.0, 1.0, 0.0);
   glVertex3f(-1.0, -1.0, 0.0);
   glVertex3f(1.0, -1.0, 0.0);
 glEnd;

 SwapBuffers(DC);
end;

procedure SetDCPixelFormat (hdc : HDC);
var
 pfd : TPixelFormatDescriptor;
 nPixelFormat : Integer;
begin
 FillChar (pfd, SizeOf (pfd), 0);
 pfd.dwFlags  := PFD_DRAW_TO_WINDOW or PFD_SUPPORT_OPENGL or PFD_DOUBLEBUFFER;
 nPixelFormat := ChoosePixelFormat (hdc, @pfd);
 SetPixelFormat (hdc, nPixelFormat, @pfd);
end;


procedure TfrmGL.FormCreate(Sender: TObject);
begin
 DC := GetDC (Handle);
 SetDCPixelFormat (DC);
 hrc := wglCreateContext (DC);
 wglMakeCurrent (DC, hrc);
 glClearColor (0.5, 0.5, 0.75, 1.0);
 glColor3f (1.0, 0.0, 0.5);
 glPolygonMode (GL_FRONT_AND_BACK, GL_LINE);
end;

procedure TfrmGL.FormDestroy(Sender: TObject);
begin
 wglMakeCurrent(0, 0);
 wglDeleteContext(hrc);
 ReleaseDC (Handle, DC);
 DeleteDC (DC);
end;

procedure TfrmGL.FormResize(Sender: TObject);
begin
 glViewport(0, 0, ClientWidth, ClientHeight);
 glMatrixMode(GL_PROJECTION);
 glLoadIdentity;

 gluPerspective(30, ClientWidth / ClientHeight, 1.0, 15.0);

 glMatrixMode(GL_MODELVIEW);
 glLoadIdentity;
// gluLookAt(0,0,10,0,0,0,0,0,1);
 glTranslatef (0.0, 0.0, -10.0);

 InvalidateRect(Handle, nil, False);
end;


Код из примера, который я нашел в сети. В последней функции если раскомментировать gluLookAt и закомментировать glTranslate - изображение пропадает. Обычно работаю с opengl на С++ или в последнее время в D - там все работает хорошо. Отзовитесь кто использует это в Дельфи

Автор: TDM 22.7.2008, 12:19
Может быть так? 
gluLookAt(0,0,-10,0,0,0,0,1,0);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)