Skip to content

Scratcha Pixel

Mathematics and Physics for Computer Graphics

Geometry Mathematical Foundations of Monte Carlo Methods Monte Carlo Methods in Practice Matrix Inverse Jacobi Transformation and Eigenvalue Algorithm Quaternions Interpolation The Mathematics of Shading Placing a Camera: the LookAt Function Introduction to Frequency Analysis

Volume 1: Foundations of 3D Rendering

Introduction to Ray Tracing: a Simple Method for Creating 3D Images Where Do I Start? A Very Gentle Introduction to Computer Graphics Programming Rendering an Image of a 3D Scene: an Overview Computing the Pixel Coordinates of a 3D Point 3D Viewing: the Pinhole Camera Model Rasterization: a Practical Implementation The Perspective and Orthographic Projection Matrix An Overview of the Ray-Tracing Rendering Technique Ray-Tracing: Generating Camera Rays A Minimal Ray-Tracer: Rendering Simple Shapes (Sphere, Cube, Disk, Plane, etc.) Ray Tracing: Rendering a Triangle Introduction to Polygon Meshes Ray-Tracing a Polygon Mesh Transforming Objects using Matrices Introduction to Shading The Phong Model, Introduction to the Concepts of Shader, Reflection Models and BRDF Global Illumination and Path Tracing What's Next?

Volume 2: Better, Faster, More (2017)

Bézier Curves and Surfaces: the Utah Teapot Introduction to Acceleration Structures Rendering Implicit Surfaces and Distance Fields: Sphere Tracing Volume Rendering for Artists Volume Rendering for Developers Distributed Ray-Tracing Texture Mapping Depth of Field Motion Blur Area Lights Intuitive Introduction to Anti-Aliasing Multi-Threading in Rendering

Volume3: Advanced Techniques (2018)

The Infamous Rendering Equation Bias vs Unbias Path Tracing & the Russian Roulette Light Transport Algorithms Intuitive Introduction to Importance Sampling Subdivision Surfaces Photon Mapping Displacement and Bump Mapping Metaballs and Polygonization of Implicit Fields Shadow Map and Deep Shadow Maps NURBS Surfaces

Digital Imaging

Introduction to Light, Color and Color Space Digital Images: from File to Screen Simple Image Manipulations

Procedural Generation of Virtual Worlds

Value Noise and Procedural Patterns: Part 1 Perlin Noise: Part 2 Simulating the Colors of the Sky Simulating Ocean Waves Simulating Terrain