Einzelnen Beitrag anzeigen

Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#1

OpenGL: DelphiGL-Tutorial-codes machen Probleme

  Alt 18. Apr 2005, 16:13
Und zwar versuch ich mich grade etwas in die OGL-Materie einzuarbeiten. Dazu hab ich mir das DelphiGL-Tutorial geschnappt. Ich bin grade bei Lektion 1 bei den ersten Codeschnipseln. Hier einmal mein Code (1:1 aus dem Tutorial in Delphi reinkopiert und 1:1 von Delphi hier rein kopiert):

Delphi-Quellcode:
PROGRAM Main;

USES
   Windows,Messages, dglOpenGL;

function WndProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
begin
  case (Msg) of
    WM_CREATE:
      begin
        // Hier kann Zeugs rein das beim Programmstart ausgeführt werden soll
      end;
    WM_CLOSE:
      begin
        PostQuitMessage(0);
        Result := 0
      end;
    WM_SIZE: // Größe anpassen
      begin
        dglOpenGL.glResizeWnd(LOWORD(lParam),HIWORD(lParam));
        Result := 0;
      end;
    else
      Result := DefWindowProc(hWnd, Msg, wParam, lParam); // Standard-Behandlung aller anderen Messages
  end;
end;

FUNCTION WinMain(hInstance : HINST; hPrevInstance : HINST;
                 lpCmdLine : PChar; nCmdShow : Integer) : Integer; stdcall;
VAR
  msg : TMsg;
  appStart : DWord;
BEGIN
     Finished := False;

     // Das Programm wird initialisiert (Fenster erstellen!)
    if not glCreateWnd(800, 600, FALSE, 32) THEN
BEGIN;
Result := 0;
          Exit;
     END;

     // Main message loop:
     while not finished do
     begin
          if (PeekMessage(msg, 0, 0, 0, PM_REMOVE)) then
begin
               if (msg.message = WM_QUIT) then finished := True
               else
               begin
TranslateMessage(msg);
                    DispatchMessage(msg);
               end;
          end
          else
          begin
               glDraw(); // Szene zeichnen
               SwapBuffers(h_DC); // Szene ausgeben
          end;
     end;
  glKillWnd(FALSE);
  Result := msg.wParam;
end;

BEGIN
WinMain( hInstance, hPrevInst, CmdLine, CmdShow );
END.
Mal davon ab, dass es mich das kalte Grauen packt, solch einen Code überhaupt kompilieren zu wollen (Ich sehe selten ähnlich schlecht formatierten Code), kommen folgende Fehlermeldungen:

Zitat:
[Fehler] Project3.dpr(20): E2003 Undefinierter Bezeichner: 'glResizeWnd'
[Fehler] Project3.dpr(34): E2003 Undefinierter Bezeichner: 'Finished'
[Fehler] Project3.dpr(37): E2003 Undefinierter Bezeichner: 'glCreateWnd'
[Fehler] Project3.dpr(57): E2003 Undefinierter Bezeichner: 'glDraw'
[Fehler] Project3.dpr(58): E2003 Undefinierter Bezeichner: 'h_DC'
[Fehler] Project3.dpr(61): E2003 Undefinierter Bezeichner: 'glKillWnd'
[Warnung] Project3.dpr(66): W1000 Symbol 'HPrevInst' ist veraltet
[Warnung] Project3.dpr(66): W1002 Symbol 'CmdLine' ist plattformspezifisch
Warum kommt das? Was mach ich falsch?
  Mit Zitat antworten Zitat