We aren't endorsed by this school 
Georgia Tech  CS 4451
 Georgia Tech
 Staff
 One Dimensional Spline Interpolation Algorithms, Two Dimensional Spline Interpolation Algorithms, Spline Functions and Multivariate Interpolations (Mathematics and Its Applications (closed)), Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java Applications, CrossPlatform Development in C++: Building Mac OS X, Linux, and Windows Applications

VERSIONS
School: Georgia Tech
\begin{verbatim} All about the GL4Java Version Numbers = The GL4Java versionstring is X.Y.Z.R: X  The major version number, this only changes if the architecture has changed significant AND some or complete i

Trademarks
School: Georgia Tech
<BLOCKQUOTE> * Java and all Javabased trademarks and logos are trademarks or registered trademarks of Sun Microsystems,Inc. in the United States and other countries. <BR> * Solaris is trademark of Sun Microsystems,Inc.<BR> * OpenGL is a registered

Tesselation
School: Georgia Tech
Since GL4Java 2.2.0, tesselation is supported ! = Please look in the sources and/or javadoc of: gl4java.GLUTFunc There exist also many demos: demos/MiscDemos/tess demos/MiscDemos/tessdemo demos/MiscDemos/tesswind DETAILS = The native callb

SwingUsage
School: Georgia Tech
GL4Java & Swing using OffscreenRendering = The demos are located in: demos/GLSwingDemos Start the demos with: java GLSwingDemoApplet java InternalGLFrameDemo1 Status: = Using Offscreen OpenGL rendering, if true overlapping Swing components a

PNGREADME
School: Georgia Tech
Copyright (c) 1998,1999 SixLegged Software All rights reserved. README  com.sixlegs.image.png v1.0 Features Supports all valid bit depths (grayscale/color), interlacing, paletted images, alpha channel/transparency, gamma correction, access

PNGLICENSE
School: Georgia Tech
com.sixlegs.image.png  Java package to read and display PNG images Copyright (C) 1998, 1999 Chris Nokleberg This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as publish

Netscape
School: Georgia Tech
\begin{verbatim} With GL4Java Version 2.0.1 Release 2, GL4Java do supports the Netscape 4.5 Win32JVM and Unix plattform ! <Version 2.0.0 Release 1 and Version 2.0.1 Release 1 has a bug within the capabilities call and the JAR package > Please r

MSJVM
School: Georgia Tech
\begin{verbatim} With GL4Java Version 2.1.0 Release 0, GL4Java do supports the MSJVM plattform, which means GL4JavaApplets runs under the MS InternetExplorer >= 4.0 ! Please read INSTALL.txt first ! Prerequisites = Be sure to have: The new MS

LICENSE
School: Georgia Tech
\begin{verbatim} GL4Java  A OpenGL language mapping to Java Copyright (C) 1999 Sven Goethel This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Fre

COMPILATION
School: Georgia Tech
\begin{verbatim} SOURCE INSTALLATION = Prerequisites = You must allready have the following installed: 1. Common (a) JDK >= 1.2 (b) JavaCC >= 1.1 (c) bash (d) GNU make (e) GNU tools (f) Ja

Opengl2
School: Georgia Tech
Handouts: Raster Graphics Hardware 2SHQ*/ %DVLFV 2SHQ*/ VWUXFWXUH 0RUH EDVLF JUDSKLFV LQIRUPDWLRQ $VVLJQPHQW 2SHQ*/ ' JUDSKLFV OLEUDU\ 2XWSXW RQO\ UHQGHU JUDSKLFV 2QO\ NQRZV DERXW JUDSKLFV FRQWH[WV 3ODWIRUP LQGHSHQGHQW 1R VXSSRUW IRU :LQ

Shoemakes85
School: Georgia Tech
SAN FRANCISCO JULY 2226 I Volume 19, Number 3, 1985 Animating Rotation with Quaternion Curves Ken Shoemaker The Singer C o m p a n y Link Flight Simulation Division ABSTRA CT Solid bodies roll and t u m b l e through space. In c o m p u t e

Sv
School: Georgia Tech
Shadow Volumes 1 Denitions For a 3D object, by its shadow volume we mean the set of all points that are in its shadow. We are going to represent the boundary of the shadow volume using a polygonal mesh. The most important part of the boundary separa

2DTrans
School: Georgia Tech
2D Transformations Larry F. Hodges 1 Rotation About the Origin To rotate a line or polygon, we must rotate each of its vertices. To rotate point (x1,y1) to point (x2,y2) we observe: From the illustration we know that: sin (A + B) = y2/r cos (A + B

Slides
School: Georgia Tech
CS 4451, Fall 2004 Class Notes for August 26 Christopher Durkin and Jeremy Ciccone Administrative Items Prof. Rossignac sent an email Make sure you got it Make sure you read it Phases AD alone, collaboration on phase E Project 1 description

INSTALLER
School: Georgia Tech
\begin{verbatim} GL4Java  INSTALLER  WebApplet ! = You can install GL4Java directly from the Web, while using the URL: http:/www.jausoft.com/Files/Java/1.1.X/GL4Java/Installer/ The WebInstaller works for:  Netscape >= 4.5  MSIE Explorer

Retainedmode
School: Georgia Tech
5HWDLQHG0RGH*UDSKLFV 7ZRDSSURDFKHVWRJUDSKLFV 6D\KRZ ,PPHGLDWHPRGHH[SOLFLWFRPPDQGV 6D\ZKDW 5HWDLQHGPRGHGHILQHDQGFKDQJHPRGHO Page 1 :KDWVLQD*HRPHWULF0RGHO *HRPHWU\ 6SDWLDOOD\RXW $WWULEXWHV 7RSRORJ\ &RQQHFWLYLW\ 6WUXFWXUH $SSOLFDWLRQVSH

Polyrenderingview2
School: Georgia Tech
&RRUGLQDWHV\VWHPV 9LHZLQJ 5HQGHULQJ3RO\JRQDO2EMH.WV 7KRXJKWVRQ$ 5HPHPEHUDOOGUDZLQJLQGLVSOD\URXWLQH +RZWRGUDZHD.KREMH.W 3RO\JRQPHVK VKDSHVSD.NDJH XQLW.XEH /LJKWLQJLVDVSH.LDO.DVH 2SHQ*/LVLPPHGLDWHPRGH 1 'YLHZLQJSUR.HVV 'HILQH REMHFWV &RPSRVH

Myopengl
School: Georgia Tech
GLUT/OpenGL Introduction Presented by Mitch Parry Slides adapted from Prof. Luebke @ UVa 1 GLUT Intro Main() Init() Display() Reshape() Mouse() Keyboard() / / / / / / / Init window set state vars draw model adjust w/h mouse response keyboard

2DLines
School: Georgia Tech
Design of Line and Circle Algorithms Larry F. Hodges 1 Basic Math Review SlopeIntercept Formula For A Line 6 Cartesian Coordinate System P = (X,Y) Given a third point on the line: P = (X,Y) Slope = (Y  Y1)/(X  X1) = (Y2  Y1)/(X2  X1) Solvin

Sv
School: Georgia Tech
Shadow Volumes 1 Denitions For a 3D object, by its shadow volume we mean the set of all points that are in its shadow. We are going to represent the boundary of the shadow volume using a polygonal mesh. The most important part of the boundary separa

THANXS
School: Georgia Tech
\begin{verbatim} I want to THANK : o The GNU & GNU/Linux community, and all the brave folks, who wrote open sourced free (L)GPL'ed software. Without them, a project like this is impossible ! o Leo Chan for porting the OpenGL library

CHANGES
School: Georgia Tech
\begin{verbatim} Last Changes: 11th Dec 2001 (Version 2.8.2  ReleaseCandidate 1  2.8.2.0) Started: July 1997 (Version 0)  TOP = NEW DOWN = OLD  kbr = Kenneth B. Russel jau = Sven Goethel 11th Dec 2001 (Version 2.8.2  ReleaseCandidate

Curves
School: Georgia Tech
Curves and Surfaces Curves z Implicit/Explicit z Piecewise z Parametric cubic curves y y y y Basic ideas Hermite Bezier BSplines Page # Explicit/Implicit z Explicit Functions: y = f(x) (e.g., y = 2x) y Only one value of y for each x y Not rotati

Java2
School: Georgia Tech
\begin{verbatim} Since GL4Java Version 2.0.0 Release 1, GL4Java do supports the Java2 plattform ! Since GL4Java Version 2.7.1, GL4Java do supports the privileges of the extension mechanism ! Please read INSTALL.txt first ! You may have many Jav

Fin
School: Georgia Tech
Final Exam: Monday 2:505:40 1 Rules Closed book, you can use your notes (3 pages total, must be handwritten). All the obvious rules apply, of course. 2 Coverage Only things described in the class notes posted on the class web page (and the book s

Math
School: Georgia Tech
Math 3D Mathematical Preliminaries 3D Coordinate Systems Y Y Z X X Lefthanded coordinate system Righthanded coordinate system Z 1 Math 3D Vectors Have length and direction V = [xv, yv, zv] Length is given by the Euclidean Norm V = ( x

Raytracing2
School: Georgia Tech
More Ray Tracing! T Efficiency T Boolean operations T Antialiasing A comment on attenuation T Attenuation S Light through air (as we use in OpenGL) S Refraction and reflection contribution Page # Efficiency: Intersection Calculations T Precomputa

Mapping
School: Georgia Tech
Mapping Techniques Mapping Techniques Texture Mapping Texture Mapping makes it more real Phong shaded scenes look plasticlike Enylton Coelho, CS4451 Fall 2002 1 Mapping Techniques Texture Mapping Uses polygons with few vertices Give the impre

Aliasing
School: Georgia Tech
Aliasing Antialiasing Theory and Practice References Alan Watt, "3D computer graphics" chapter 14 Jonas Gomes and Luiz Velho, "Image processing for computer graphics" book, SpringerVerlag New York, 1997 chapter 7 Jim Blinn, "Return of the Jaggy

Bezier
School: Georgia Tech
P12 P1 t : 1t t:1 t P123 P2 t: 1 t t: P01 1 t t 1 t:1 t P23 P0123=B(t) t: P012 P0 P3 Figure 1: De Casteljau algorithm. The control points P0 , P1 , P2 and P3 are joined with line segments (shown in red; those red intervals form somethin

Texture
School: Georgia Tech
1 Texture The most common form of texture mapping means laying a color pattern dened by an image onto a 3D surface. It allows to render 3D surfaces with realistic color variation. From programmers perspective, this is done by providing texture coor

Transf
School: Georgia Tech
Transformations and projections Transformations play an important role in computer graphics: they allow to describe mappings between dierent coordinate systems, move or scale 3D models, can be used to concisely describe parallel or perspective projec

Viewing
School: Georgia Tech
Viewing Viewing Aside: Transforms and OpenGL z Transforms go onto matrix stacks z All vertices xformed by top matrices 1 Viewing Two stacks. Why? z Separate modeling & viewing xforms 3D viewing process Define objects Compose scene Define light

Proj3
School: Georgia Tech
Project 3 : Voronoi Diagram Mosaics 1 Overview OpenGL can be used not only for drawing things, but also for solving various geometric problems. Here, we will use it to compute Voronoi diagram of a collection of points in the plane. Assume you are gi

B
School: Georgia Tech
3 10 10 9 T 1 1 1 .12321 .12321 1 1 1 1 1 1 1 T 1 1 1 .12321 .12321 1 .12321 .12321 1 1 1 1 T 1 1 1 .12321 .12321 1 1 1 1 1 1 1 T 1 1 1 .12321 .12321 1 .12321 .12321 1 1 1 1 T 1 1 1 .12321 .12321 1 1 1 1 1 0 0 T 1 1 1 .12321 .12

2dpolygon2up
School: Georgia Tech
Handouts: Projections /LQHV DQG 3RO\JRQV $QG $VVLJQPHQW $QWLDOLDVLQJ $OLDVLQJ FDXVHG E\ ILQLWH DGGUHVVDELOLW\ RI &57 $SSUR[LPDWLRQ RI OLQHV ZLWK GLVFUHWH SRLQWV FDQ UHVXOW LQ D VWDLUFDVH DSSHDUDQFH RU DJJLHV 'HVLUHG OLQH $OLDVHG UHQGHULQJ R

Rendering
School: Georgia Tech
Rendering Rendering T Rasterizing Lines and Polygons T Hidden Surface Remove T Multipass Rendering with Accumulation Buffers 9/23/02 Basic Math Review SlopeIntercept Formula For Lines Given a third point on the line: P = (X,Y) Slope = (Y  Y1)/(

3dclip
School: Georgia Tech
3D Clipping and other things Aside: Windows and Viewports Window on Viewplane Interface Window Viewport 1 Window to Viewport Xform Choose Window in World Coordinates Xform window to Canonical View & Clip Scale to size of Viewport Translate

Globalillumination
School: Georgia Tech
Global Illumination Recall: Global vs. Local Illumination T Global S Model interactions between light and objects S Impossible in practice! R Still active research problem S Basic idea: Follow the light T Local S Consider each object independently

Syllabus
School: Georgia Tech
CS 4451A: Computer Graphics Spring 2004 MWF 1011, CoC 101 Instructor: Andrzej Szymczak (andrzej@cc.gatech.edu) Oce: TSRB 220 Phone: 46609 Oce Hours: After class (until 11:45), 1st oor CoC TA: Justin Jang Webpage: http:/www.cc.gatech.edu/classes/AY20

Math
School: Georgia Tech
'0DWKHPDWLFDO3UHOLPLQDULHV '&RRUGLQDWH6\VWHPV < = < ; /HIWKDQGHG FRRUGLQDWH V\VWHP 5LJKWKDQGHG ; FRRUGLQDWH V\VWHP = 1 '9HFWRUV +DYHOHQJWKDQGGLUHFWLRQ 9 >[Y\Y]Y@ /HQJWKLVJLYHQE\WKH(XFOLGHDQ1RUP _9_ [Y \Y ]Y 'RW3URGXFW 98 >[Y\Y]Y@>[X\X]X@ [Y[X

Openglmodeling
School: Georgia Tech
Intro to OpenGL, Intro to Modeling This class z Recap of first lecture z Overview of 3D Graphics z Building Interactive Applications using OpenGL in Java using GL4Java z Assignment #1 z Representation and Modeling of Objects y Polygonal, CSG, Volume

Polyrenderingview
School: Georgia Tech
&RRUGLQDWHV\VWHPV 9LHZLQJ 5HQGHULQJ3RO\JRQDO2EMH.WV 5H.DS '7UDQVIRUPDWLRQV 1HVWHG&RRUGLQDWH6\VWHPV 9LUWXDO&DPHUDV 1 5H.DS7UDQVIRUPVDQG2SHQ*/ 7UDQVIRUPVJRRQWRPDWUL[VWD.NV $OOYHUWL.HV[IRUPHGE\WRSPDWUL.HV 0HQWLRQHGWZRVWD.NV:K\" 6HSDUDWHPRGHOL

Illuminationandshading
School: Georgia Tech
3L.NLQJ *RDO7RXVHWKHPRXVH'WRVHOH.W 'REMH.WV $QDO\WL.DOPHWKRG JOX8QSURMH.W H[SHQVLYH :KDWDUHZHWU\LQJWRILQG" 7KHREMH.WVWKDWOLHRQWKHOLQHWKDW SURMH.WVWRWKHPRXVHSRVLWLRQ 1 6.UHHQ.RUUHVSRQGVWR &DQRQL.DO9LHZ9ROXPH :KDWVOLYHUOLHVXQGHUWKHPRXVH" 6.D

Colorvision
School: Georgia Tech
Color & Graphics T The complete display system is: S Model S Frame Buffer S Screen S Eye S Brain Color & Vision T We'll talk about: S Light S Visions S Psychophysics, Colorimetry S Color R Perceptually based models R Hardware models 1 Light T Visi

Basicillumination
School: Georgia Tech
Illumination and Shading 9/19/02 Illumination and Shading Illumination and Shading z Illumination Models y Ambient y Diffuse y Attenuation y Specular Reflection z Interpolated Shading Models y Flat, Gouraud, Phong y Problems CS4451: Fall 2002 1

Opengl
School: Georgia Tech
Graphics pipeline: Depth buffer, Backface culling, Triangle Strips and Fans Philosophical idea: instead of processing all the primitives (triangles) for each pixel, like in the simple variant of ray tracing you implemented for the first project, we

Polyscan
School: Georgia Tech
Polygon Scan Conversion 1 Triangles Fast triangle scanconversion is based on linearity of the edges. If an intersection of a scanline and an edge is known, then to get the intersection of that edge with the next scanline below, some constant (depen

Introhardware
School: Georgia Tech
Introduction, Graphics Hardware CS 4451A: Computer Graphics z CCB 101, TT 9:3011 Why Computer Graphics? z Fun! z Lots of uses: y Art, entertainment y Visualizing complex data/ideas y Concise representation of actions/commands/state y Design/task a

Polyrenderingview3
School: Georgia Tech
$GYDQ.HG9LHZLQJ3+,*6 7ZR.RRUGLQDWHV\VWHPV :RUOGUHIHUHQ.H.RRUGLQDWHV\VWHP:5& 9LHZLQJUHIHUHQ.H.RRUGLQDWHV\VWHP95& $UELWUDU\YLHZUHIHUHQ.HSRLQW 6SH.LI\YLHZSODQHYLHZ.RRUGV:5& 9LHZ5HIHUHQ.H3RLQW953 9LHZ3ODQH1RUPDO931 9LHZ8S9H.WRU989 6SH.LI\ZLQGR

3dclip
School: Georgia Tech
'&OLSSLQJDQGRWKHUWKLQJV $VLGH:LQGRZVDQG9LHZSRUWV Window on Viewplane Interface Window Viewport 1 :LQGRZWR9LHZSRUW;IRUP &KRRVH :LQGRZ LQ :RUOG &RRUGLQDWHV ;IRUP ZLQGRZ WR &DQRQLFDO 9LHZ &OLS 6FDOH WR VL]H RI 9LHZSRUW 7UDQVODWH WR SURSHU SRV

Bsp
School: Georgia Tech
BSP (=Binary Space Partition) Trees BSP trees are a geometric tool that can be used for a variety of tasks, including resolving visibility, computing shadows and also to reject polygons that are outside the view volume. BSPs are too complex to implem

Scenegraphs
School: Georgia Tech
Scene Graphs Retained Mode Graphics Two approaches to graphics T Say "how" S Immediate mode: explicit commands S E.g., OpenGL T Say "what" S Retained mode: define and change model S E.g., Inventor, Java3D S A3: JOOGL (Java Object Oriented Graphic

Magician213
School: Georgia Tech
Magician Programmer's Guide For Java Alligator Descartes descarte@arcana.co.uk c 19971999 Arcane Technologies Ltd. September 7, 1999 "The Magician Programmer's Guide" was written, illustrated and prepared A by Alligator Descartes for Arcane Technol

Bump
School: Georgia Tech
Bump Mapping Explained by Group 8  http:/www.imperiex.net/bump/ Summary Bump mapping is a texturing technique developed by Blinn in 1978. Essentially, bump mapping allows for wrinkling eects to be applied to surfaces in a costecient manner. The nec

Opengl
School: Georgia Tech
Handouts: Raster Graphics Hardware %XLOGLQJ,QWHUD.WLYH$SSOL.DWLRQV XVLQJ2SHQ*/LQDYDXVLQJ0DJL.LDQ 7RGD\0DJL.LDQ )ULGD\2SHQ*/ &RQ.HSWXDO$SSOL.DWLRQ0RGHO I/O hardware Application Model Application Program Graphics System ie. OpenGL + Magician on X,

Mathpolyrendering
School: Georgia Tech
3D Mathematical Rendering Polygonal Objects Rotation About An Arbitrary Axis 1. Translate one end of the axis to the origin Z U = [P2P1] = [ u1, u2, u3] U Some useful values: a = (u12 + u32 ) b = (u12 + u22) c = (u22 + u32) cos = u3/a sin =

Hardware
School: Georgia Tech
Handouts: Raster Graphics Hardware 5DVWHU*UDSKL.V+DUGZDUH %DVL.'HILQLWLRQV 5DVWHU$UH.WDQJXODUDUUD\RISRLQWVRUGRWV 3L[HO3HO2QHGRWRUSL.WXUHHOHPHQWRIWKHUDVWHU 6.DQ/LQH$URZRISL[HOV Page 1 Handouts: Raster Graphics Hardware ([DPSOH5DVWHU*UDSKL.V $U.K

Shadows
School: Georgia Tech
Shadows Shadows Acknowledgement: Images and many slides from presentations by Mark J. Kilgard and other Nvidia folks, from slides on developer.nvidia.com Practical & Robust Stenciled Shadow Volumes for HardwareAccelerated Rendering, Cass Everitt &

Bezier
School: Georgia Tech
Bezier Curves Curves are trajectories of moving points. We'll specify them as functions assigning a location of that moving point (in 2D or 3D) to a parameter t (think of it as time). In general, all curves we are going to talk about will be defined

Raytracing
School: Georgia Tech
Ray Tracing Recall basic idea Light Source Shadow Center of Projection Reflection Ray Projection Plane Page # The Adventures of 7 Rays Illumination of a point T Start with our illumination equation: I = IakaOd + Change Ri V to N Hi See p 17

OpenGL_Vanderhyde
School: Georgia Tech
OpenGL: Introduction Reorganized from Dr. Rossignacs slides 3D Modeling, Graphics, and Animation James Vanderhyde College of Computing Georgia Institute of Technology 08/30/2004 James Vanderhyde, CoC, GT, 2003 1 Outline API, library, and hardwa

Localreflection
School: Georgia Tech
Local Reflection Models 9/19/02 Local Reflection Models Illumination Thus Far T Simple Illumination Models S Ambient + Diffuse + Attenuation + Specular T Additions S Texture, Shadows, T Used in global algs! (Ray tracing) T Problem: Different m