The Graphics Codex

The Graphics Codex



$9.99

2.16for iPhone, iPad and more
9.5
18 Ratings
Morgan McGuire
Developer
121.2 MB
Size
Sep 19, 2019
Update Date
Education
Category
12+
Age Rating
Age Rating
4+
Apps in this category do not contain restricted content.
9+
Apps in this category may contain mild or occasional cartoon, fantasy or real-life violence, as well as occasional or mild adult, sexually suggestive or horrifying content and may not be suitable for children under 9 years of age.
12+
Apps in this category may contain occasional mild indecent language, frequent or intense cartoon or real-life violence, minor or occasional adult or sexually suggestive material, and simulated gambling, and may be for children under 12 years of age.
17+
You must be at least 17 years old to access this App.
Apps in this category may contain frequent and intense offensive language; Frequent and intense cartoon, fantasy or realistic violence: frequent and intense adult, scary and sexually suggestive subjects: as well as sexual content, nudity, tobacco, alcohol and drugs, may not be suitable for children under 17 years of age.
The Graphics Codex Screenshots
The Graphics Codex posterThe Graphics Codex posterThe Graphics Codex posterThe Graphics Codex posterThe Graphics Codex poster
The Graphics Codex posterThe Graphics Codex posterThe Graphics Codex posterThe Graphics Codex posterThe Graphics Codex poster

About The Graphics Codex

This app is a scholarly reference of equations, concepts, and notation employed in 3D computer graphics, supplemented by long-form chapters of lecture notes. It is designed for students, researchers, and industry practitioners.

I am Dr. Morgan McGuire, a computer graphics scientist and game developer.

I'm a Distinguished Research Scientist at NVIDIA and an adjunct professor at the University of Waterloo (in Mathematics) and McGill University (in Electrical and Computer Engineering). I was previously a full professor of Computer Science at Williams College and have taught computer graphics, film, and game design for fifteen years.

I served as the founding Editor-in-Chief of the Journal of Computer Graphics Techniques and coauthored the Computer Graphics: Principles & Practice 3rd Edition and Creating Games: Mechanics, Technology, and Content textbooks. I received a Ph.D. and a M.S. from Brown University and a M.Eng. and a B.S. from the Massachusetts Institute of Technology.

I've contributed to the video game series for Skylanders, Roblox, Call of Duty, Guitar Hero, Titan Quest, Marvel Ultimate Alliance, NVIDIA GPUs and software products, and the Unity game engine. I've worked on non-game 3D software and hardware for products ranging from robot drones to the E-ink display in the Amazon Kindle.

I wrote this app and website and respond to all e-mails personally. Follow my development blog and see other projects at http://casual-effects.com on the web and @CasualEffects on Twitter.
Show More

What's New in the Latest Version 2.16

Last updated on Sep 19, 2019
Old Versions
Path Tracing chapter introducing this fundamental algorithm.
Array filter for efficient in-order removal during iteration.
Array fast remove for efficient random-access removal.
Fisher-Yates shuffle for randomizing an array.
Uniformly distributed random integers.
Added scalar C++ HSV-RGB conversion.
Added GLSL and JavaScript code to Cross product.
Added some simple examples of scattering functions to The Rendering Equation chapter.
Moved the Version Control chapter after the The Rendering Equation chapter.
Added syntax highlighting for more C++ types.
Show More
Version History
2.16
Sep 19, 2019
Path Tracing chapter introducing this fundamental algorithm.
Array filter for efficient in-order removal during iteration.
Array fast remove for efficient random-access removal.
Fisher-Yates shuffle for randomizing an array.
Uniformly distributed random integers.
Added scalar C++ HSV-RGB conversion.
Added GLSL and JavaScript code to Cross product.
Added some simple examples of scattering functions to The Rendering Equation chapter.
Moved the Version Control chapter after the The Rendering Equation chapter.
Added syntax highlighting for more C++ types.
2.15
Nov 1, 2018
▸ Monte Carlo Integration chapter
▸ Box-Muller transformation for random numbers
▸ CSS Box model
▸ git LFS notes
▸ Stable quadratic equation solution
▸ Notes on new HTC and Oculus HMDs
▸ Notes on retro consoles
2.14
Jul 1, 2018
• Monte Carlo Integration
• PICO-8
• Python Lambdas
• git + svn cheat sheets
• iPhone X native support
• Lua reference
• Optimized code listing layout
2.13
Jan 17, 2017
- Implicit surface normals
- git quick reference
- PICO-8
- Small typo corrections
- Fixed Blinn Microfacet BRDF crash
2.12
Oct 22, 2016
* New and Updated Topics
Extended the shared_ptr initialization discussion in the C++ chapter.
Random direction on a sphere.
Added observations from Edwards et al. and Heitz about the “white furnace test” in Materials.
Added explanation of using std::make_shared with a protected constructor in the std::shared_ptr topic.
Added std::shared_from_this example in the std::shared_ptr topic.
Added a link to tinyobjloader in the A Camera Model chapter.
Clarified the pixel coordinate system with more diagrams and comments in the A Camera Model chapter.
Added Blinn's microfacet BSDF.
Improved transport graph diagrams in the Rendering Algorithms survey chapter.
Updated the Ray Marching chapter for GLSL 4.10 and G3D 10.01.

* App Changes
Improved the layout of code listings
Added Graphics Codex Programming Projects for covering graphics implementation and software engineering topics
Removed status bar

* Corrections
Fixed a stray const in the A Camera Model chapter
Fixed a broken link in Blinn-Phong Microfacet Distribution
2.11
Sep 7, 2016
- New Version Control Basics chapter
- git and svn quick reference guides
- Topics on C++11 through C++17 features
- New paintings with art history synopsis
- Optimized app startup time
2.10
Aug 8, 2016
- Microfacet smoothness
- Git quick reference
- Expanded radiosity derivation
- C++ 14 updates
2.9
Sep 11, 2015
+ New GPU ray tracing chapter
+ iOS 8.4 support
+ Fully-expanded GGX equation
+ 20 new bibliography entries
+ iPhone 6 Plus native resolution
+ Extended GLSL syntax coloring
+ Improved quotation marks
+ Better image compression for smaller app
+ Fixed broken links
2.8.1
Feb 9, 2015
iOS 8.1 support, native iPhone 6 and iPhone6+
2.8
Oct 21, 2014
▸ New topics: Barycentric coordinates, Heaviside step function, and subversion quick reference
▸ Fully linked table of contents within chapters
▸ Rewrote ray-triangle intersection explanation to be clearer
▸ Added mobile operating systems to screenshot command list
▸ Extended search and chapter indexing
▸ Fixed citation links
▸ Over 100 minor corrections and layout adjustments
2.7
Aug 28, 2014
▸ More C++ code listings
▸ Equation numbers
▸ Chapter numbers
▸ Chapter table of contents
▸ Bugfixes and corrections
2.6
May 25, 2014
Physically based shading overview
GGX, GTR, Trowbridge-Reitz and Phong microfacet models
Three Birth of Venus paintings with art history commentary
2.5
Mar 29, 2014
New in 2.5
▸ HLSL matrix code samples
▸ Toksvig's normal filtering
▸ Volumetric fog chapter
▸ Lambertian surfaces chapter

New in 2.4
▸ Code listings now in multiple languages
▸ Diacritics and ligatures reference
▸ New artwork from Church and Picasso
▸ Toolbar now hides during search
2.4
Jan 3, 2014
New in 2.4
▸ Code listings now in multiple languages
▸ Diacritics and ligatures reference
▸ New artwork from Church and Picasso
▸ Toolbar now hides during search

New in 2.3
▸ RGB to HSV
▸ Extended trigonometric information
▸ Geometric series
▸ C++, Java, and JavaScript API links
▸ Famous artworks
▸ iOS 7 clock now visible
2.3
Oct 23, 2013
New in 2.3
▸ RGB to HSV
▸ Extended trigonometric information
▸ Geometric series
▸ C++, Java, and JavaScript API links
▸ Famous artworks
▸ iOS 7 clock now visible

New in 2.2
▸ Save position in page when navigating
▸ Added __float128 to printf and floating point topics
▸ JavaScript introduction topic
▸ Minor performance enhancements
▸ Fix for white screen bug in version 2.1
2.2
Sep 8, 2013
Save position in page when navigating
Added __float128 to printf and floating point topics
JavaScript introduction topic
Minor performance enhancements
Fix for white screen bug in version 2.1
2.1
Sep 5, 2013
Restore position within a page on forward & back buttons.
Minor performance enhancements.
2.0
Aug 16, 2013
▸ Syntax highlighting for code samples
▸ Better touch interface
▸ New reader's guide with lots of tips
1.9
Jul 10, 2013
▸ iOS 7 style interface
▸ Fixed equation font scaling on iPhone
▸ Better search results through fuzzy matching
▸ Six new topics on JavaScript and HTML5
1.8
Jan 17, 2013
▸ Fix for iPad 1 / iOS 5.1 rendering bug
▸ Table of lengths and distances
▸ New index with chapter search
▸ smoothstep(), smootherstep()
▸ Small corrections to many entries
▸ More bibliography entries with free PDF links
▸ Optimizations for iPad Mini and iPad 1
1.7
Nov 18, 2012
- Matrix to quaternion algorithm
- Instantaneous chapter loading
- Hardware accelerated scrolling
- iPad Mini, iPhone 5, 5th gen iPod, and iPad with retina support
- New Human Eye chapter
- Redesigned rendering algorithm diagrams
1.6
Sep 17, 2012
▸ New chapter on path tracing, photon mapping, and more
▸ New chapter on materials
▸ New chapter on direct illumination
▸ Radiosity & biradiance
▸ 10% faster math rendering

1.5
Sep 4, 2012
▸ 50% faster load time
▸ C++11 shared_ptr examples
▸ Cosine-weighted hemisphere
▸ Random vector in a cone
▸ GLSL 4.30 reference
▸ Dürer etchings

+60 pages of physically-based rendering lecture notes

1.4
Jul 7, 2012
▸ Depictions of radiometric quantities
▸ A* Pathfinding
▸ Hadamard Product
▸ Frobenius Inner Product
▸ Kass-Miller Shallow Water equations
▸ Improved link formatting
▸ Fixed iPhone/iPod startup resolution
▸ Clearing search box retains keyboard focus
1.3
Mar 26, 2012
App Changes:
▸ Doubled image resolution for the new iPad
▸ Fixed "blank page" and "slow index" bugs
▸ Fast device rotation

New Topics:
▸ S3TC, BCn/DXn, PVRTC texture formats
▸ RGB ↔ sRGB equations
▸ Index of all GLSL functions
▸ Luminance
▸ Photometric quantities
▸ ASCII table
▸ Normalized fixed point
▸ C/C++ integer types
▸ Reciprocity
▸ Unit quaternions
▸ Hyperbolic cosine
▸ Clamp function
▸ XML escape codes

The Graphics Codex FAQ

Click here to learn how to download The Graphics Codex in restricted country or region.
Check the following list to see the minimum requirements of The Graphics Codex.
iPhone
Requires iOS 8.0 or later.
iPad
Requires iPadOS 8.0 or later.
iPod touch
Requires iOS 8.0 or later.
The Graphics Codex supports English

The Graphics Codex Alternative

You May Also Like