CS380: Introduction to Computer Graphics Introduction to OpenGLSL Min H. Kim KAIST School of Computing Welcome [CS380] Introduction to Computer Graphics Professor: Min H. Kim ( 김민혁 ) (minhkim@vclab.kaist.ac.kr) (Lecture) Tuesday and Thursday, 13:00 14:15AM, Rm. 113, N-1 (Lab) Monday and Thursday 19:00 22:00, Rm. 317, N-1 Course website: http://vclab.kaist.ac.kr/cs380/ 2 1
About Instructor Min Hyuk Kim ( 김민혁 ) PhD in Computer Science (UCL 2010) Associate Professor at KAIST School of Computing Postdoc Researcher at Yale University ACM SIGGRAPH Asia Technical Paper Committee 2017, 2018 Eurographics Technical Paper Committee 2017 Associate Editor of ACM Trans. Graphics (TOG) 2014--2017 Associate Editor of ACM Trans. Applied Perception (TAP) 2016--Present Associate Editor of Elsevier Computers & Graphics (CAG) 2016--Present Microsoft New Faculty Award 2013 Naver Young Faculty Fellowship 2015 Best Paper Awards (ACCV 2014, VAST 2012) 3 Textbook Textbook: Steven J. Gortler (2012) Foundations of 3D Computer Graphics, MIT Press (available from the KAIST library) Harvard CS textbook for Graphics 4 2
Example 5 Notification There are no official course prerequisites. [Warning] However, we assume in CS380 programming experience in C (or C++): not teaching basic programming skills, C/C++ language, Visual Studio, Compiler, etc. Note that we only support the Windows environment in the lab!!! a good knowledge of linear algebra: not teaching general mathematics an exposure to calculus and image processing: not teaching computer vision 6 3
Teaching Assistants Sukjun Jeon VCLAB, ex. 7864 sjjeon@vclab.kaist.ac.kr Giljoo Nam VCLAB, ex. 7864 gjnam@vclab.kaist.ac.kr Hyunho Ha VCLAB, ex. 7864 hhha@vclab.kaist.ac.kr Hyeonjoong Jang VCLAB, ex. 7864 hjjang@vclab.kaist.ac.kr 7 Resources Useful website Textbook website LightHouse3D.com freeglut OpenGL GLEW OpenGL Shade Language GLFW (advanced one) GTK+ Wolfram MathWorld Address http://www.3dgraphicsfoundations.com/ http://www.lighthouse3d.com/ http://www.transmissionzero.co.uk/software/freeglut-devel/ http://glew.sourceforge.net/ http://www.opengl.org/documentation/glsl/ http://www.glfw.org/ http://www.gtk.org/ http://mathworld.wolfram.com/ 8 4
What is Computer Graphics? http://techcrunch.com/2014/10/01/this-is-cg/ 2014 Chris Jones, The Passenger 9 What is Computer Graphics? The study of algorithms and systems for generating images with computers History Photography and Television Computer graphics rendering 10 5
What is Computer Graphics? Geometry Material model Light Rendering Virtual photography 11 What is Computer Graphics? Geometry 3D scanning, 3D modeling Color, Texturing, BRDFs Material model Light Color, spectrum Rendering Virtual photography Global illumination 12 6
What is Computer Graphics? Meyer, Rushmeier, Cohen, Torrance and Greenberg, ACM TOG, 1986 13 What is Computer Graphics? Imaging = capturing 2D images Modeling = creating 3D objects Rendering = generating 2D images from 3D models Animation = simulating changes over time 14 7
Research in Computer Graphics Image Creator: What controls are available? Image User: How will the image be perceived? Research in Computer Graphics 2D imaging Digital imaging/filtering Color transformations Display technology Compositing and layering 2D drawing Sketching, illustration User interface 16 8
Research in Computer Graphics 3D modeling Scanning 3D shapes 2D texture mapping Polygons, curved surfaces Procedural modeling 2D texture Virtual 3D character 17 Research in Computer Graphics 3D rendering 2D views of 3D geometry Projection and perspective Removing hidden surfaces Lighting simulation 2D 3D Tracing ray transport 4 rays per pixel 1024 rays per pixel 18 9
Research in Computer Graphics User Interaction 2D graphical user interfaces 3D modeling interfaces Virtual reality NASA 19 Research in Computer Graphics Animation Physical simulation Key-frame animation Water nvidia Hair D. Enright Allowing artists complete controls over animation Prabath Gunawardane 20 10
Applications in Computer Graphics Games Computer-Aided Design Computer-Aided Analysis Movies Simulation Training Cultural Heritage User Interface Information Visualization Medical Imaging 21 Historical Perspective A short history of graphics: 1950: MIT Whirlwind (CRT) 1955: Sage, Radar with CRT and light pen 1958: Willy Higinbotham Tennis for Two 1960: MIT Spacewar on DEC PDP-1 1963: Ivan Sutherland s Sketchpad (CAD) 1969: ACM SIGGRAPH founded 1968: Tektronix storage tube ($5-10,000) 1968: Evans & Sutherland (flight simulators) founded 1968: Douglas Engelbart: computer mouse 1970: Xerox: GUI 1971: Gourand shading 1974: Z-buffer 1975: Phong shading model 1976: First animations rendered 1979: Eurographics founded 1980: Whitted: Ray tracing 22 11
Historical Perspective A short history of graphics (Cont.): 1981: Apollo Workstation, IBM PC 1982: Silicon Graphics (SGI) founded 1984: X Window System 1984: First Silicon Graphics Workstations (IRIS GL) Until mid/end of 1990s: Dominance of SGI in the high end HW: Reality Engine, InfiniteReality, RealityMonster,... SW: OpenGL, OpenInventor, Performer, DigitalMediaLibs,... End of 1990s: Low- to mid range taken over by PCs (Nvidia, ATI,...) HW: Fast development cycles, Graphics-on-a-chip,... SW: Direct3D & OpenGL, computergames 1995: First feature film Toy Story Today Programmable graphics hardware, Cg, Cuda Realtime Ray Tracing 23 State-of-the-art Graphics 24 12
State-of-the-art Graphics Detroit: Become Human, Sony 25 What We Are Doing Underneath 26 13
What We Are Doing Underneath 27 What we are going to do in this course Taking both lectures and lab courses (either lab A or B will be assigned to you by the TA today) Checking attendances for both lectures and labs Programming homework every week! (you will do your homework in the lab courses) Quiz at the beginning of every lecture! Midterm and final term examinations (all about math in graphics, not open-book, no memory test!) Let s have fun! J 28 14
Grading Class participation: 10% Midterm/final exam: 50% (25% each) Programming assignments (about ten HWs): 30% Class quizzes: 10% An assignment after its original due date will be degraded from the marked credit, e.g., A à B. Plagiarism will not be tolerated (plagiarism detection software will be used.) No grade for copied codes is given! 29 15