Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Do Jul 10, 2025 10:18

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Do Mär 13, 2003 20:01 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Du suchst den Orthographischen Modus, der sich mittels glOrtho() aktivieren lässt und in eine quasi 2D-Ansicht wechselt in der Objekte nicht perspektivisch verzerrt werden, und der damit für 2D-Grafiken geeignet ist.

Kleines Beispiel :
Code:
  1.  glMatrixMode(GL_PROJECTION);
  2.  glLoadIdentity;
  3.  glOrtho(0, 1024, 768, 0, -1, 10);
  4.  glMatrixMode(GL_MODELVIEW);
  5.  glLoadIdentity;
  6.  


Dieses Codesample schaltet in den orthographischen Modus und setzt die Bildschirmdimensionen auf 1024x768 Pixel fest.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Mär 14, 2003 17:35 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Nov 02, 2002 18:06
Beiträge: 299
Wohnort: Dresden
Also, wofür der erste Parameter da ist, weiß ich nicht. Der zweite und dritte gibt an, in wieviel "Maßeinheiten" das Bild unterteilt werden soll und nicht die Auflösung. Den Rest überschau ich jetzt nicht so schnell. Such mal in dem Form nach Ortho. Da dürfte sich einiges finden lassen.

_________________
"Ich würde ja gern die Welt verändern, aber Gott gibt mir den Quelltext nicht"


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Mär 14, 2003 17:50 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Deklaration von glOrtho :
glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far); (laut Redbook)

Für folgende Orthoansicht :
glOrtho(0,640,480,0,-1,1)
ist folgendes Quad auf jeden Fall sichtbar (Die Sache mit glTranslatef ist übrigens keine gute Lösung) :
Code:
  1.  
  2. glBegin(GL_QUADS);
  3.   glVertex3f(0, 0, 0);
  4.   glVertex3f(1, 0, 0);
  5.   glVertex3f(1, 1, 0);
  6.   glVertex3f(0, 1, 0);
  7. glEnd;
  8.  

Das liegt daran, das dieses Quad im Z-Bereich (definiert zwischen Near und Far) liegt.Alles was ausserhalb dieses Bereiches liegt, wird nicht angezeigt.

Die Tatsache das das komplette Bild gedehnt wird liegt in der Natur von OpenGL und macht den Orthomodus deshalb auch für 2D-Darstellungen so attraktiv, da man den Bildschirm auflösungsunabhängig zeichnen kann.

Wenn du dies verhindern willst, dann musst du mittesl glViewport deinen Anzeigebereich proportional zur Fenstergröße festlegen.Damit entbehrt die Nutzung von OpenGL zur 2D-Darstellung jedoch jeglicher (mal abgesehen von der Geschwindigkeit) Notwendigkeit...

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 15, 2003 11:00 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Ähm...ich glaub ich habs doch schon ein paar mal geschrieben :
Der near und far-Parameter der glOrtho-Funktion dürfen nicht gleich sein.Dann werden nämlich nur Obkejte angezeigt, die genau auf dieser Z-Koordinate liegen.Du solltest für near einen Wert < 0 und für far einen Wert > 0 wählen, dann werden alle Eckpunkte zwischen den beiden Werten angezeigt.Wenn das bei dir nicht funzt, dann machst du beim Zeichnen deiner Objekte ganz einfach nen Fehler.

Und wenn du den Viewport mit glViewPort änddern tust, und nicht willst das Überstehendes abgeschnitten wird, dann musst du die Viewportgrößte ganz einfach auch in deinem Rendercode mit berücksichtigen.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 15, 2003 13:47 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Es wäre vielleicht keine schlechte, Idee, wenn du hier entweder deinen Zeichencode (falls nicht zu lange) postest, oder den Quellcode deines Programmes hochlädst.Dann könnt ich mir das mal genauer ansehen.
Einen Fehler anhand einiger weniger Codefragmente und Beschreibungen zu finden ist nämlich meist ein hoffnungsloses Unterfangen.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Mär 16, 2003 12:31 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Mär 15, 2003 14:07
Beiträge: 7
Okay.
Der gesamte Code ist schon ein bisschen lang, darum hab ich etwas gekürzt. Der Rest ist sowieso fast identisch mit dem OpenGL-Template.
Es soll nur ein Quad gezeichnet werden. Ich musste glOrtho wieder mit zNear=-1 und zFar=-1 initialisieren, weil es sonst nicht funktioniert (ich geb ja zu: ich muss was falsch gemacht haben).

Code:
  1.  
  2. {------------------------------------------------------------------}
  3. { &nbsp;Zeichnen der Szene &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }
  4. {------------------------------------------------------------------}
  5. procedure glDraw;
  6. begin
  7.  &nbsp;glClearColor(0,0,0,0);
  8.  &nbsp;glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  9.  
  10.  &nbsp;glLoadIdentity;
  11.  &nbsp;glBegin(GL_QUADS);
  12.  &nbsp; &nbsp;glColor3f(0.0,0.0,1.0);
  13.  &nbsp; &nbsp;glVertex3f(0, 0, 0);
  14.  &nbsp; &nbsp;glColor3f(0.0,0.0,1.0);
  15.  &nbsp; &nbsp;glVertex3f(1, 0, 0);
  16.  &nbsp; &nbsp;glColor3f(1.0,1.0,1.0);
  17.  &nbsp; &nbsp;glVertex3f(1, 1, 0);
  18.  &nbsp; &nbsp;glColor3f(1.0, &nbsp;0, &nbsp;0);
  19.  &nbsp; &nbsp;glVertex3f(0, 1, 0);
  20.  &nbsp;glEnd;
  21.  
  22. end;
  23.  
  24. {------------------------------------------------------------------}
  25. { &nbsp;Initialisierung von OpenGL &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }
  26. {------------------------------------------------------------------}
  27. procedure glInit();
  28. begin
  29.  &nbsp;glEnable(GL_TEXTURE_2D); &nbsp; &nbsp; &nbsp; &nbsp;// Aktiviert Texture Mapping
  30.  &nbsp;glShadeModel(GL_SMOOTH); &nbsp; &nbsp; &nbsp; &nbsp;// Aktiviert weiches Shading
  31.  &nbsp;glClearColor(0.0, 0.0, 0.0, 0.5); &nbsp; &nbsp;// Bildschirm löschen (schwarz)
  32.  &nbsp;glClearDepth(1.0); &nbsp; &nbsp; &nbsp; &nbsp; // Depth Buffer Setup
  33.  &nbsp;glEnable(GL_DEPTH_TEST); &nbsp; &nbsp; &nbsp; &nbsp;// Aktiviert Depth Testing
  34.  &nbsp;glDepthFunc(GL_LEQUAL); &nbsp; &nbsp; &nbsp; &nbsp;// Bestimmt den Typ des Depth Testing
  35.  &nbsp;glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
  36.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Qualitativ bessere Koordinaten Interpolation
  37.  
  38. end;
  39.  
  40. {------------------------------------------------------------------}
  41. { &nbsp;Behandelt Größenveränderung des Fensters &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }
  42. {------------------------------------------------------------------}
  43. procedure glResizeWnd(Width, Height : Integer);
  44. begin
  45. glViewport(0, 0, min(Width,Height), min(Width,Height)); &nbsp; &nbsp;// Setzt den Viewport für das OpenGL Fenster
  46.  &nbsp;glMatrixMode(GL_PROJECTION); &nbsp; &nbsp; &nbsp; &nbsp;// Matrix Mode auf Projection setzen
  47.  &nbsp;glLoadIdentity; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Reset View
  48.  &nbsp;GlOrtho(0, 800, 600, 0, -1, -1); &nbsp; // Perspektive den neuen Maßen anpassen.
  49.  &nbsp;glMatrixMode(GL_MODELVIEW); &nbsp; &nbsp; &nbsp; &nbsp; // Zurück zur Modelview Matrix
  50.  &nbsp;glLoadIdentity;
  51. end;
  52.  
  53. {------------------------------------------------------------------}
  54. { &nbsp;Message-Behandlung des Programs festlegen &nbsp; &nbsp; &nbsp; &nbsp;}
  55. {------------------------------------------------------------------}
  56. function WndProc(hWnd: HWND; Msg: UINT; &nbsp;wParam: WPARAM; &nbsp;lParam: LPARAM): LRESULT; stdcall;
  57. begin
  58.  &nbsp;case (Msg) of
  59.  &nbsp; &nbsp;WM_CREATE:
  60.  &nbsp; &nbsp; &nbsp;begin
  61.  &nbsp; &nbsp; &nbsp; &nbsp;// Hier kann Zeugs rein das beim Programmstart ausgeführt werden soll
  62.  &nbsp; &nbsp; &nbsp;end;
  63.  &nbsp; &nbsp;WM_CLOSE:
  64.  &nbsp; &nbsp; &nbsp;begin
  65.  &nbsp; &nbsp; &nbsp; &nbsp;PostQuitMessage(0);
  66.  &nbsp; &nbsp; &nbsp; &nbsp;Result := 0
  67.  &nbsp; &nbsp; &nbsp;end;
  68.  &nbsp; &nbsp;WM_KEYDOWN: &nbsp; &nbsp; &nbsp; // Taste als 'pressed' markieren
  69.  &nbsp; &nbsp; &nbsp;begin
  70.  &nbsp; &nbsp; &nbsp; &nbsp;keys[wParam] := True;
  71.  &nbsp; &nbsp; &nbsp; &nbsp;Result := 0;
  72.  &nbsp; &nbsp; &nbsp;end;
  73.  &nbsp; &nbsp;WM_KEYUP: &nbsp; &nbsp; &nbsp; &nbsp; // Taste als 'up' markieren
  74.  &nbsp; &nbsp; &nbsp;begin
  75.  &nbsp; &nbsp; &nbsp; &nbsp;keys[wParam] := False;
  76.  &nbsp; &nbsp; &nbsp; &nbsp;Result := 0;
  77.  &nbsp; &nbsp; &nbsp;end;
  78.  &nbsp; &nbsp;WM_SIZE: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// Größe anpassen
  79.  &nbsp; &nbsp; &nbsp;begin
  80.  &nbsp; &nbsp; &nbsp; &nbsp;glResizeWnd(LOWORD(lParam),HIWORD(lParam));
  81.  &nbsp; &nbsp; &nbsp; &nbsp;Result := 0;
  82.  &nbsp; &nbsp; &nbsp;end;
  83.  &nbsp; &nbsp;WM_TIMER : &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Hier werden alle benutzten Timer behandelt
  84.  &nbsp; &nbsp; &nbsp;begin
  85.  &nbsp; &nbsp; &nbsp; &nbsp;if wParam = FPS_TIMER then
  86.  &nbsp; &nbsp; &nbsp; &nbsp;begin
  87.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;FPSCount :=Round(FPSCount * 1000/FPS_INTERVAL); &nbsp; // FPS berechnen...
  88.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SetWindowText(h_Wnd, PChar(WND_TITLE + ' &nbsp; [' + IntToStr(FPSCount) + ' FPS]')); //... und ausgeben!
  89.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;FPSCount := 0;
  90.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Result := 0;
  91.  &nbsp; &nbsp; &nbsp; &nbsp;end;
  92.  &nbsp; &nbsp; &nbsp;end;
  93.  &nbsp; &nbsp;else
  94.  &nbsp; &nbsp; &nbsp;Result := DefWindowProc(hWnd, Msg, wParam, lParam); &nbsp; &nbsp;// &nbsp;Standard-Behandlung aller anderen Messages
  95.  &nbsp;end;
  96. end;
  97.  
  98. {------------------------------------------------------------------}
  99. { &nbsp;Message-Behandlung des Programs festlegen &nbsp; &nbsp; &nbsp; &nbsp;}
  100. {------------------------------------------------------------------}
  101. function WndProc(hWnd: HWND; Msg: UINT; &nbsp;wParam: WPARAM; &nbsp;lParam: LPARAM): LRESULT; stdcall;
  102. // [...]
  103. // siehe Template
  104.  
  105. {--------------------------------------------------------------------------------------}
  106. { &nbsp;Erstellt ein Fenster mit Passendem OpenGL Rendering Context &nbsp; &nbsp; &nbsp; }
  107. {--------------------------------------------------------------------------------------}
  108. function glCreateWnd(Width, Height : Integer; Fullscreen : Boolean; PixelDepth : Integer) : Boolean;
  109. // [...]
  110. // siehe Template
  111.  
  112.  
  113. {--------------------------------------------------------------------}
  114. { &nbsp;Main message loop for the application &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }
  115. {--------------------------------------------------------------------}
  116. function WinMain(hInstance : HINST; hPrevInstance : HINST;
  117.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; lpCmdLine : PChar; nCmdShow : Integer) : Integer; stdcall;
  118. var
  119.  &nbsp;msg : TMsg;
  120.  &nbsp;appStart : DWord;
  121. begin
  122.  &nbsp;Finished := False;
  123.  
  124.  &nbsp;InitOpenGL;
  125.  &nbsp;// Das Programm wird initialisiert (Fenster erstellen!)
  126.  &nbsp;if not glCreateWnd(800, 600, FALSE, 32) then
  127.  &nbsp;begin
  128.  &nbsp; &nbsp;Result := 0;
  129.  &nbsp; &nbsp;Exit;
  130.  &nbsp;end;
  131.  
  132.  &nbsp;appStart := GetTickCount(); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// Die Zeit zum Programmstart nehmen
  133.  
  134.  &nbsp;// Main message loop:
  135.  &nbsp;while not finished do
  136.  &nbsp;begin
  137.  &nbsp; &nbsp;if (PeekMessage(msg, 0, 0, 0, PM_REMOVE)) then // Nach Windows-Messages suchen
  138.  &nbsp; &nbsp;begin
  139.  &nbsp; &nbsp; &nbsp;if (msg.message = WM_QUIT) then &nbsp; &nbsp; // Falls WM_QUIT dabei ist sind wir fertig
  140.  &nbsp; &nbsp; &nbsp; &nbsp;finished := True
  141.  &nbsp; &nbsp; &nbsp;else
  142.  &nbsp; &nbsp; &nbsp;begin &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Ansonsten wird die Message an das Programm weitergegeben
  143.  &nbsp; TranslateMessage(msg);
  144.  &nbsp; &nbsp; &nbsp; &nbsp;DispatchMessage(msg);
  145.  &nbsp; &nbsp; &nbsp;end;
  146.  &nbsp; &nbsp;end
  147.  &nbsp; &nbsp;else
  148.  &nbsp; &nbsp;begin
  149.  &nbsp; &nbsp; &nbsp;Inc(FPSCount); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// FPS Zähler erhöhen
  150.  &nbsp; &nbsp; &nbsp;Inc(AnzCount); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// Anzeigeschleifenzähler erhöhen
  151.  
  152.  &nbsp; &nbsp; &nbsp;ElapsedTime := GetTickCount() - appStart; &nbsp; &nbsp; // Programmlaufzeit berechnen
  153.  
  154.  &nbsp; &nbsp; &nbsp;glDraw(); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Szene zeichnen
  155.  &nbsp; &nbsp; &nbsp;SwapBuffers(h_DC); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// Szene ausgeben
  156.  
  157.  &nbsp; &nbsp; &nbsp;ProcessKeys; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// Tastatureingaben verarbeiten
  158.  
  159.  &nbsp; &nbsp;end;
  160.  &nbsp;end;
  161.  &nbsp;glKillWnd(FALSE);
  162.  &nbsp;Result := msg.wParam;
  163. end;
  164.  


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Mär 16, 2003 12:37 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Ändere mal deine Zeichnprozedur wie folgt um.Danach muß es funktionieren :
Code:
  1. procedure glDraw;
  2. begin
  3. glMatrixMode(GL_PROJECTION); &nbsp; &nbsp;
  4. glLoadIdentity; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
  5. GlOrtho(0, 800, 600, 0, -1, 1);
  6. glMatrixMode(GL_MODELVIEW);
  7. glLoadIdentity;
  8. glClearColor(0,0,0,0);
  9. glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  10. glLoadIdentity;
  11. glBegin(GL_QUADS);
  12.  &nbsp;glColor3f(0,0,1); &nbsp;glVertex3f(0, 0, 0);
  13.  &nbsp;glColor3f(0,0,1); &nbsp;glVertex3f(1, 0, 0);
  14.  &nbsp;glColor3f(1,1,1); &nbsp;glVertex3f(1, 1, 0);
  15.  &nbsp;glColor3f(1,0,0); &nbsp;glVertex3f(0, 1, 0);
  16. glEnd;
  17. end;
  18.  


Denn genauso mach ichs bei meinen Projekten auch, und hatte damit noch nie Probleme.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Mär 16, 2003 17:46 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Mär 15, 2003 14:07
Beiträge: 7
Es tut mir Leid.

Ich habe es sogar mit dem unveränderten Template versucht, das hier in den Tutorials verwendet wird, habe die glDraw mit der Deinen überschrieben - ohne Erfolg. Ich weiß nicht, was das Template in jeder Zeile tut; es ist für mich nicht möglich, den Fehler zu finden, geschweige denn, ihn auszumerzen.

Edit: Mit 'Template' meine ich das OpenGL 1.2 Template (API).


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Mär 16, 2003 21:54 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Versucht es mal mit folgenden:

Code:
  1.  &nbsp;
  2. procedure glDraw;
  3. begin
  4.  
  5. glMatrixMode(GL_PROJECTION); &nbsp; &nbsp;
  6. glLoadIdentity; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
  7. GlOrtho(0, 800, 600, 0, -1, 1);
  8. glMatrixMode(GL_MODELVIEW);
  9. glLoadIdentity;
  10.  
  11. glClearColor(0,0,0,0);
  12. glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  13. glLoadIdentity;
  14.  
  15. glBegin(GL_QUADS);
  16.  &nbsp; &nbsp;glTexCoord2f(0,0); glVertex2d(0,0);
  17.  &nbsp; &nbsp;glTexCoord2f(1,0); glVertex2d(800,0);
  18.  &nbsp; &nbsp;glTexCoord2f(1,1); glVertex2d(800,600);
  19.  &nbsp; &nbsp;glTexCoord2f(0,1); glVertex2d(0,600);
  20. glEnd;
  21. end;
  22.  


Ein Pixelgröße ist vermutlich doch etwas klein :)

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Mär 17, 2003 11:27 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Mär 15, 2003 14:07
Beiträge: 7
DAS IST ES! Danke!
Das Quad wurde vorher ein Pixel über der linken oberen Ecke dargestellt. Offensichtlich hat die Gleichsetzung von zNear und zFar den Effekt, dass der Bereich von (0|0|-1) bis (1|1|1) dargestellt wird. Sei's drum.

@ Son of Satan:
Zitat:
(Die Sache mit glTranslatef ist übrigens keine gute Lösung)

Ja?


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 14 Queries | GZIP : On ]