Introduction to Computer Graphics with OpenGL ES
English Edition (CRC Press, 2018.06) |
Korean Edition (홍릉과학출판사, 2019.05) * 2019 세종도서 선정 |
Synopsis
OpenGL ES is the standard graphics API used for mobile and embedded systems. Despite its widespread use, there is a lack of material that addresses the balance of both theory and practice in OpenGL ES. JungHyun Han’s Introduction to Computer Graphics with OpenGL ES achieves this perfect balance. Han’s depiction of theory and practice illustrates how 3D graphics fundamentals are implemented. Theoretical or mathematical details around real-time graphics are also presented in a way that allows readers to quickly move on to practical programming. Additionally, this book presents OpenGL ES and shader code on many topics. Industry professionals, as well as, students in Computer Graphics and Game Programming courses will find this book of importance.
Key Features
- Presents key graphics algorithms that are commonly employed by state-of-the-art game engines and 3D user interfaces
- Provides a hands-on look at real-time graphics by illustrating OpenGL ES and shader code on various topics
- Depicts troublesome concepts using elaborate 3D illustrations so that they can be easily absorbed
- Includes problem sets, solutions manual, and lecture notes for those wishing to use this book as a course text
Lecture Notes
- TOC and Preface
- Chapter 1 (introduction)
- Chapter 2 (math basics)
- Chapter 3 (modeling)
- Chapter 4 (spaces and transforms)
- Chapter 5 (vertex processing)
- Chapter 6 (OpenGL ES and shader)
- Chapter 7 (rasterizer)
- Chapter 8 (image texturing)
- Chapter 9 (lighting)
- Chapter 10 (output merger)
- Chapter 11 (Euler transforms and quaternions)
- Chapter 12 (screen-space object manipulation)
- Chapter 13 (character animation)
- Chapter 14 (normal mapping)
- Chapter 15 (shadow mapping)
- Chapter 16 (texturing toward GI)
- Chapter 17 (curves and surfaces)
- Chapter 18 (surface tessellation)
- Errata (2022-06-23)
Solutions
3D Graphics for Game Programming
English Edition (CRC Press, 2011.02) |
Korean Edition (홍릉과학출판사, 2011.07) * 대한민국학술원 우수학술도서 선정 |
Chinese Edition (清华大学出版社, 2013.01) |
Review and Recommendations
This book provides an overview of the skills needed to create 3D
graphics for game programming (although many of the skills would
translate to a broader 3D graphics context). ... The book covers
pretty much every important facet of the topic ... This could
certainly be used as a text for advanced undergraduates interested in
game programming. ... Professionals interested in learning game
programming might also find the text helpful ...
-- Jeffrey Putnam, Computing Reviews, March 2012
JungHyun Han is a masterful teacher, and nowhere do his teachings
come through more clearly than in 3D Graphics for Game
Programming. Han presents the essential foundations of graphics
programming that every serious game programmer needs in a
straightforward no-nonsense style that gets right to the point. I
highly recommend this book for anyone who wants to program 3D
games.
-- Jesse Schell, CEO of Schell Games and professor of entertainment technology at Carnegie Mellon University
The author has sought to satisfy a need experienced by the growing
pool of game development students: a textbook that balances theory and
practicality. The resulting compilation provides a broad coverage of
the most important topics to graphics programmers. I would expect that
anyone who has digested this material would be immediately effective
as a member of a game development team.
-- Michael Guerrero, Delta3D game engine senior programmer and research associate of the Naval Postgraduate School
Lecture Notes
- TOC and Preface
- Lecture Note 01 (2012-04-28)
- Lecture Note 02 (2012-04-28)
- Lecture Note 03 (2012-04-28)
- Lecture Note 04 (2012-04-28)
- Lecture Note 05 (2012-04-28)
- Lecture Note 06 (2012-05-10)
- Lecture Note 07 (2012-05-30)
- Lecture Note 08 (2013-04-22)
- Lecture Note 09 (2012-06-14)
- Lecture Note 10 (2012-06-14)
- Lecture Note 11 (2013-04-22)
- Lecture Note 12 (2011-02-28)
- Errata (2011-06-23)