|in Spring 2017: 3D & 2D Computer Graphics Programming with OpenGL ES on Android and iOS|
program OpenGL ES...
...either on Android...
...or on iOS
OpenGL ES is a shader-based API using the GLSL programming language to write GPU-run code.|
B.Y.O.D. and code!
in Spring 2017, we are going to use OpenGL ES and GLSL to write and run graphics programs on the GPU of mobile devices(*): if you have a Android or iOS device (phone, tablet, etc) running a recent version of the operating system, you may test your programs on it: just Bring Your Own Device and code...
(*) bringing your own device is not required: you may complete B581 just as successfully by writing and running the same graphics programs on mobile device simulators that run on STC lab computers, or on your own computer
Instructor: Mitja Hmeljak, mitja*indiana*edu |
Lecture: Section 30656 2:30PM-3:45PM on Monday and Wednesday in AC C116 (Cedar Hall-Union Street Center)
Office hours: 2:30-3:30PM, Tuesday and Thursday, LH 425 (Lindley Hall)
Assistant Instructors: Leif Christiansen, leifchri*iu*edu ; Steve Babcock, wsbabcoc*iu*edu
Lab: Section 30657 - 1:00PM-2:15PM on Friday in LH 030 (Lindley Hall)
Office hours: TBA
Required: [CSCI-C 343 and (MATH-M 301 or M 303)], or equivalent experience: data structures & mathematics for vectors and matrices
Recommended: [CSCI-C 212 and a working knowledge of a C-like language], or equivalent programming experience.
Required: Interactive Computer Graphics: A Top-Down Approach with Shader-Based OpenGL, 6th edition (note: the newer 7th edition is also OK, although it uses WebGL for code examples) by E.Angel and D.Shreiner, Addison-Wesley 2012, ISBN-13: 9780132545235
Recommended: OpenGL ES 2.0 Programming Guide by A.Munshi, D.Ginsburg and D.Shreiner, Addison-Wesley 2009, ISBN-13: 9780321502797
Introduction to graphics hardware and software.
Two-dimensional graphics methods, transformations, and interactive methods.
Three-dimensional graphics, transformations, viewing geometry, object modeling and interactive manipulation methods.
Basic lighting and shading.
Video and animation methods.
Credit not given for both B581 and B481.