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

Aktuelle Zeit: So Mai 19, 2024 05:53

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



Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Mo Apr 15, 2013 10:01 
Offline
DGL Member

Registriert: Do Mär 21, 2013 14:57
Beiträge: 51
Programmiersprache: C#,C++
Hi Leute,

Es tut mir leid so viele Fragen zu haben, aber anscheinend habe ich sehr spezielle Probleme,
die nicht per Google zu finden sind, bzw. deren Lösung.

Im Anhang könnt ihr einen von mir erstellen Körper erkennen, welcher per:


Code:
  1.  
  2. // Enable lightning.
  3.                 GL.Enable(EnableCap.Lighting);
  4.  
  5.                 // Choose the modelview matrix.
  6.                 GL.MatrixMode(MatrixMode.Modelview);
  7.  
  8.                 // Save matrix in stack.
  9.                 GL.PushMatrix();
  10.  
  11.                 // Set material characteristics.
  12.                 GL.Material(MaterialFace.FrontAndBack, MaterialParameter.Diffuse, 1.0f);
  13.                 GL.Material(MaterialFace.FrontAndBack, MaterialParameter.Ambient, 1.0f);
  14.                 GL.Material(MaterialFace.FrontAndBack, MaterialParameter.Shininess, 50.0f);
  15.                 GL.Material(MaterialFace.FrontAndBack, MaterialParameter.Specular, 1.0f);
  16.  
  17.                 // Enable light spots.
  18.                 GL.Enable(EnableCap.Light1);
  19.                 GL.Enable(EnableCap.Light2);
  20.  
  21.                 // Set light reflection computing.
  22.                 GL.LightModel(LightModelParameter.LightModelLocalViewer, 1.0f);
  23.  
  24.                 // Set light parameters.
  25.                 GL.Light(LightName.Light1, LightParameter.Ambient, OpenTK.Graphics.Color4.Brown);
  26.                 GL.Light(LightName.Light1, LightParameter.Diffuse, OpenTK.Graphics.Color4.Silver);
  27.                 GL.Light(LightName.Light1, LightParameter.Position, (new Vector4(2f, 2f, -1f, 5f)));
  28.                 GL.Light(LightName.Light1, LightParameter.SpotDirection, (new Vector4(0f, 0f, 0f, 0f)));
  29.                 GL.Light(LightName.Light2, LightParameter.Ambient, OpenTK.Graphics.Color4.Yellow);
  30.  
  31.                 // Pop matrix out of stack.
  32.                 GL.PopMatrix();


..beleuchtete wird. Jedoch, obhwohl ich die Normalenvektoren der kleinen Kreissegmente in den Ecken der Frontfläche gleich denen der zugehörigen Fläche gesetzt habe,
reflektieren sie das Licht nicht wie gewünscht. Jemand ne Idee was, ein Frischling in OpenGL wie ich, falsch macht?

PS: Diese Kreissegmente zeichne ich über Glu.Quadratics mit der Form Disk.


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
_______________________________________
Lets move over mountains and through valleys:
GL.Map2(,,,,,,,,,)
GL.MapGrid2(,,,,,,,,,)
GL.EvalMesh2(,,,,,,,,,)


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mo Apr 15, 2013 18:11 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,

mir hat mal jmd gesagt, das die Quadrics, auf gut deutsch gesagt, mist sind. Was eigenes ist immer schneller und auch besser debugbar. Probier mal anstatt der Quadrics was eigenes zu schreiben. Eine weitere Fehlerursache könnte die Seite des Quadrics sein. Vlt ist das was du da siehst das Backface? Mach mal Culling an und guck ob die Fläsche noch sichtbar ist.

MfG Bergmann.

_________________
Aktuelle Projekte: BumpMapGenerator, Massive Universe Online
Auf meiner Homepage gibt auch noch paar Projekte und Infos von mir.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mo Apr 15, 2013 20:37 
Offline
DGL Member
Benutzeravatar

Registriert: So Sep 26, 2010 12:54
Beiträge: 238
Wohnort: wieder in Berlin
Programmiersprache: Englisch
http://arcsynthesis.org/gltut

Man kann es nicht oft genug erwähnen.

* [URL] macht keine URL draus wenn kein http:// davorsteht :roll:


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di Apr 16, 2013 06:45 
Offline
DGL Member

Registriert: Do Mär 21, 2013 14:57
Beiträge: 51
Programmiersprache: C#,C++
Vielen Dank für die Antworten, das sollte mir erstmal weiterhelfen.
Problem gelöst!

_________________
_______________________________________
Lets move over mountains and through valleys:
GL.Map2(,,,,,,,,,)
GL.MapGrid2(,,,,,,,,,)
GL.EvalMesh2(,,,,,,,,,)


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 8 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.024s | 14 Queries | GZIP : On ]