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

Aktuelle Zeit: Fr Jul 18, 2025 14:24

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Farbe in 2D
BeitragVerfasst: Do Jan 19, 2006 17:33 
Offline
DGL Member

Registriert: Mo Jan 16, 2006 16:52
Beiträge: 20
Hallo,

Ich habe ein Quad im Ortho-Modus gezeichnet. Wenn ich jetzt den einzelnen Vertexs (??) eine Farbe über glColor3f zuweisen will, funktioniert das nicht. Das Quad wird immer in so einem komischne Braunton angezeigt. Was kann man da machen?

Laden vom Ortho-Modus:
Code:
  1.  
  2. procedure TForm1.Render;
  3. begin
  4.   glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  5.  
  6.   glMatrixMode(GL_PROJECTION);
  7.   glLoadIdentity;
  8.   glViewport(0,0,ClientWidth,ClientHeight);
  9.   glOrtho(0,800,0,600, 0,128);
  10.   glMatrixMode(GL_MODELVIEW);
  11.   glLoadIdentity;
  12.   CreateMenu;
  13.   .....
  14.  


Zeichnen des Quads:
Code:
  1.  
  2. BEGIN
  3.   glBegin(GL_QUADS);
  4.     glColor3f(0.5,0.5,0.5); glVertex2f(0,0);
  5.     glColor3f(0.5,0.5,0.5); glVertex2f(Width,0);
  6.     glColor3f(0.5,0.5,0.5); glVertex2f(Width,100);
  7.     glColor3f(0.5,0.5,0.5); glVertex2f(0,100);
  8.   glEnd;
  9. END;
  10.  


mfg, Lt.Cmd.Data


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 19, 2006 17:57 
Offline
DGL Member
Benutzeravatar

Registriert: Do Mär 06, 2003 15:27
Beiträge: 281
Wohnort: Bochum
hasse lighting an ?

_________________
www.extrawurst.org


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 19, 2006 17:59 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Deaktiver mal Beleuchtung mit glDisable(GL_LIGHTING);.

Wenns dann noch nicht geht, kann es sei, dass du Texturen nutzt?

Und noch was: Es reicht, wenn du glColor3f(0.5,0.5,0.5); einmal aufrufst, das wird dann für alle Vertices zwischen glBegin...glEnd verwendet.

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 19, 2006 18:07 
Offline
DGL Member

Registriert: Mo Jan 16, 2006 16:52
Beiträge: 20
glDisable(GL_LIGHTING); funktioniert leider nicht. Ich hab immernoch nur diesen Braunton. Texturen verwende ich nur im 3D-Bereich, aber nicht im 2D.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 19, 2006 18:11 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Sagst du.

Hast du sie auch deaktiviert mit glDisable(GL_TEXTURE_2D)?

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 19, 2006 18:20 
Offline
DGL Member

Registriert: Mo Jan 16, 2006 16:52
Beiträge: 20
Ok, das hab funktioniert, aber jetzt wirkt sich das glColor3f auch auf den 3D Bereich mit aus. Wie kann ich das jetzt voneinander trennen?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 19, 2006 18:41 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 16, 2003 15:20
Beiträge: 198
ganz einfach, wenn du die 2D-Sachen zeichnest setzt du die farbe dafür und vor den 3 dimensionalen genau so (falls du nur die Texturen haben möchtest [musst sie natürlich wieder enablen] setzt du die farbe einfach auf 1,1,1)

_________________
Bevor du definierst, was etwas ist, versichere dich seiner Existenz.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 19, 2006 18:44 
Offline
DGL Member

Registriert: Mo Jan 16, 2006 16:52
Beiträge: 20
Funktioniert, danke.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 19, 2006 18:46 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
OpenGL ist eine Statemachine. Das heißt: Alle einstellungen zu einem Thema (Texturen, Licht, Normalen, Farbe, Position) bleiben solange gleich, bis du etwas neues sagst.

Wenn du im 2D Bereich keine Texturen willst: dann schalte sie aus.
Wenn du im 3D bereich Texturen willst: Dann schalte sie wieder ein.

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 16 Queries | GZIP : On ]