2010-JOGL-07-Hinweise-Uebungsblatt05

359 views
282 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
359
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
2
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

2010-JOGL-07-Hinweise-Uebungsblatt05

  1. 1. CARL VONOSSIETZKY ¨ Hinweise zu Ubungsblatt 5 Johannes Diemke ¨ Ubung im Modul OpenGL mit Java Wintersemester 2010/2011
  2. 2. ¨Hinweise zu Ubungsblatt 5Nebel Einfacher atmosph¨rischer Effekt a In der Fixed Function Pipeline implementiert Kurz vor Ende der Rendering Pipeline Anpassen der Fragmente bevor sie ausgegeben werden Anwendungsgebiete Mehr Realismus Geben Hinweise uber die Platzierung und Ausdehnung von Objekten ¨ Hilfreich bei Culling durch die Far Plane Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 2/10
  3. 3. ¨Hinweise zu Ubungsblatt 5Nebel (Forts.) Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 3/10
  4. 4. ¨Hinweise zu Ubungsblatt 5Nebel (Forts.) Die Fragmentfarbe cp ergibt sich in Abh¨ngigkeit von a Nebelfarbe cf Nebelfaktor f ∈ [0, 1] (f¨llt mit zunehmender Entfernung) a Oberfl¨chenfarbe cs a cp = f cs + (1 − f )cf Diverse Funktionen zum Ermitteln von f z end −z p Linear Fog: f = zend −zstart Exponential Fog: f = e −df zp 2 Squared Exponential Fog: f = e −(df zp ) Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 4/10
  5. 5. ¨Hinweise zu Ubungsblatt 5Nebel (Forts.) Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 5/10
  6. 6. ¨Hinweise zu Ubungsblatt 5Nebel in OpenGLfloat[] fogColor = new float[] {0.2f, 0.2f, 0.2f, 1.0f};gl.glClearColor(fogColor[0], fogColor[1], fogColor[2], fogColor[3]);gl.glEnable(GL2.GL_FOG);gl.glFogfv(GL2.GL_FOG_COLOR, fogColor, 0);gl.glFogf(GL2.GL_FOG_START, 5.0f);gl.glFogf(GL2.GL_FOG_END, 30.0f);gl.glFogi(GL2.GL_FOG_MODE, GL2.GL_LINEAR); Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 6/10
  7. 7. ¨Hinweise zu Ubungsblatt 5Transluzente Objekte Partielle Lichtdurchl¨ssigkeit a Zeichnen mittels Alpha-Blending F¨r α = 0.5 i.A. keine kommutative Operation uL¨sungen o Zwei Renderpasses Erst alle lichtundurchl¨ssigen Objekte a Daraufhin alle lichtdurchl¨ssigen Objekte mittels a glDepthMask(GL FALSE) Lichtdurchl¨ssige Dreiecke/Objekte sortieren a Alternativen Depth Peeling (order-independent transparency) ... Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 7/10
  8. 8. ¨Hinweise zu Ubungsblatt 5OpenGL Display-Listen http://www.songho.ca/opengl/gl_displaylist.htmlOpenGL Vertex-Arrays http://www.songho.ca/opengl/gl_vertexarray.htmlTorus-Knoten N¨chster Foliensatz! a Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 8/10
  9. 9. Literatur Dave Shreiner OpenGL Programming Guide http://www.opengl-redbook.com/ Richard S. Wright, Benjamin Lipchak und Nicholas Haemel OpenGL SuperBibel http://www.starstonesoftware.com/OpenGL/ Randi J. Rost OpenGL Shading Language http://www.3dshaders.com/ Tomas Akenine-M¨ller, Eric Haines und Naty Hoffman o Real-Time Rendering http://www.realtimerendering.com/ Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 9/10
  10. 10. Literatur Edward Angel Interactive Computer Graphics http://www.cs.unm.edu/˜angel/ Gerald Farin und Dianne Hansford Practical Linear Algebra http://www.farinhansford.com/books/pla/ Fletcher Dunn und Ian Parberry 3D Math Primer for Graphics and Game Development www.gamemath.com/ Johannes Diemke OpenGL mit Java WiSe 2010 / 2011 10/10

×