oder â€‍jogln in java“ - ... 3d-graphik in diesem kapitel soll es...

Download oder â€‍JOGLn in Java“ - ... 3D-Graphik In diesem Kapitel soll es ausschlielich um 3D-Graphik mit OpenGL bzw. Jogl gehen. Da 3D-Spiele sich vor allem durch die Graphik auszeichnen

Post on 06-Feb-2018

219 views

Category:

Documents

3 download

Embed Size (px)

TRANSCRIPT

  • Tutorial

    Spieleentwicklung mit OpenGL und Java

    oder

    JOGLn in Java

    Prof. Dr. W. P. KowalkUniversitt Oldenburg

    kowalk@informatik.uni-oldenburg.de

    August 2005

  • Inhaltsverzeichnis1 Einfhrung........................................................................................................................................ 4

    1.1 Aufbau des Skripts....................................................................................................................42 3D-Graphik.......................................................................................................................................6

    2.1 Aufbau des Tutorials.................................................................................................................62.2 Ein einfhrendes Beispiel......................................................................................................... 62.3 Die Main-Klasse....................................................................................................................... 7

    2.3.1 Die Anweisungen der Methode main()............................................................................. 72.4 Die Klasse RendererIntroduction..............................................................................................9

    2.4.1 Die Interface-Methode reshape().......................................................................................92.4.2 Die Interface-Methode init()........................................................................................... 112.4.3 Die Interface-Methode display()..................................................................................... 112.4.4 Die Methode setUp().......................................................................................................122.4.5 Die Methode DrawModels()........................................................................................... 15

    2.5 Die Methode RenderScene()...................................................................................................182.5.1 Betrachtungsposition (Viewing)..................................................................................... 182.5.2 Lichtposition................................................................................................................... 192.5.3 Lschen der Puffer.......................................................................................................... 192.5.4 Lschfarbe.......................................................................................................................202.5.5 Weitere Anweisungen..................................................................................................... 21

    2.6 Allgemeines zu OpenGL.........................................................................................................212.6.1 Syntax von OpenGL........................................................................................................212.6.2 OpenGL als Zustandsmaschine.......................................................................................232.6.3 Hilfsbibliotheken.............................................................................................................252.6.4 Animation........................................................................................................................25

    2.7 Transformationen....................................................................................................................272.7.1 Modelview Transformation.............................................................................................272.7.2 Reihenfolge der Operationen.......................................................................................... 322.7.3 Die Modelview-Matrix....................................................................................................34

    3 Graphische Objekte........................................................................................................................ 363.1 Koordinatensystem in OpenGL.............................................................................................. 363.2 Eine Flche im Raum .............................................................................................................37

    3.2.1 Oberflchen und Farben.................................................................................................. 393.2.2 Oberflchen nicht zeichnen ............................................................................................403.2.3 Normale...........................................................................................................................40

    3.3 Komplexe Krper................................................................................................................... 433.3.1 Tetraeder und Dreiecke................................................................................................... 433.3.2 Wrfel und Vierecke....................................................................................................... 443.3.3 Komplexe Objekte.......................................................................................................... 45

    3.4 Tessellation............................................................................................................................. 473.5 Effizienzsteigerung................................................................................................................. 49

    3.5.1 Displaylisten....................................................................................................................493.5.2 Vertex Arrays.................................................................................................................. 523.5.3 GLU Quadrics................................................................................................................. 543.5.4 Bzier-Kurven................................................................................................................. 54

    3.6 Sulen......................................................................................................................................553.6.1 Raumkoordinaten fr Sulen...........................................................................................553.6.2 Normalen fr Sulen....................................................................................................... 563.6.3 Interaktiver Suleneditor................................................................................................. 56

    4 Licht und Farbe...............................................................................................................................584.1 Farben, Oberflchen und Licht .............................................................................................. 584.2 Lichtquellen............................................................................................................................ 59

  • 3

    4.2.1 Ambientes Grundleuchten...............................................................................................594.2.2 Emissives Licht............................................................................................................... 594.2.3 Paralleles Licht (directional light)...................................................................................604.2.4 Punktfrmige Lichtquelle (positional light)....................................................................614.2.5 Scheinwerfer (spots)........................................................................................................634.2.6 Transparenz..................................................................................................................... 644.2.7 Mirror World...................................................................................................................664.2.8 Camera World................................................................................................................. 684.2.9 Nebel............................................................................................................................... 70

    4.3 Schatten...................................................................................................................................714.3.1 Schattenebene..................................................................................................................714.3.2 Berechnung von Schatten mit dem Tiefenpuffer............................................................ 74

    4.4 Lichtquellen in OpenGL......................................................................................................... 754.5 Licht in virtuellen Welten....................................................................................................... 75

    5 Texturen..........................................................................................................................................765.1 Allgemeines zu Texturen in OpenGL..................................................................................... 765.2 Texturen fr eine ebene Flche...............................................................................................77

    5.2.1 Manuelle Erzeugung von Texturkoordinaten..................................................................775.2.2 Texture-Umgebungsmodi............................................................................................... 785.2.3 Wrappen und Clampen....................................................................................................795.2.4 Automatische Erzeugung von Texturkoordinaten.......................................................... 795.2.5 Spiegelnde Texturen...

View more