Skip to content

Computer Graphics & Ray Tracing

Computer graphics tutorials — rendering pipeline, OpenGL, Vulkan, WebGL, shaders, ray tracing, path tracing, BVH, texture mapping, lighting models, GPU architecture, and procedural textures

76 Published

In this tutorial, you will learn about Computer Graphics. We cover key concepts, practical examples, and best practices to help you master this topic.

Comprehensive computer graphics tutorials covering everything from qubits and Superposition to advanced algorithms and real-world applications.

Fundamentals

What Is Computer Graphics: From Pixels to Photorealism
Graphics Rendering Pipeline: Vertex Fragment and Rasterization Stages
Rasterization Explained: Converting Vector Graphics to Pixels
Coordinate Systems and Transformations in Computer Graphics
Pixels Resolution and Aspect Ratio: Digital Display Fundamentals
Color Models in Computer Graphics: RGB CMYK and HSV Explained
Frame Buffer and Display: How Graphics Memory Drives Your Screen

Career & Learning

Computer Graphics Career Paths: Rendering Engineer Technical Artist and More
Learning Graphics Programming: Roadmap from Beginner to Advanced
Graphics API Comparison: OpenGL Vulkan DirectX and Metal Compared
Graphics Performance Optimization: Draw Calls Batching and GPU Profiling
Graphics Debugging Tools: RenderDoc Nvidia Nsight and GPU PerfStudio
Computer Graphics Projects: Building a Portfolio That Gets You Hired

Additional Classic Tutorials

3D Transformations & Matrices -- Translation, Rotation, Scaling and Projection
Acceleration Structures -- BVH and Grids for Ray Tracing
3D Animation and Rigging -- Skinning, Blending and Inverse Kinematics
Anti-Aliasing -- MSAA, FXAA, TAA and Supersampling
BRDF and Materials -- Physically-Based Rendering
Bump, Normal and Displacement Mapping -- Surface Detail Without Geometry
Computer Graphics Overview -- From Pixels to Photorealism
DirectX 12 Guide -- Modern Graphics Programming on Windows
GPU Architecture -- CUDA Cores, Warps and Memory Hierarchy
Lighting Models -- Phong, Blinn-Phong and PBR
OpenGL Programming Guide -- Modern OpenGL 4.x
Parallel Computing with GPU -- CUDA, Thread Blocks and Memory Optimization
Post-Processing Effects -- Bloom, HDR, Tone Mapping and Depth of Field
Procedural Textures -- Perlin Noise, Voronoi and Fractals
Real-Time Global Illumination -- Screen Space, Voxel Cone and Light Probes
Shader Programming -- GLSL Vertex and Fragment Shaders
Texture Mapping -- UV Coordinates, Filtering and Mipmaps
Voxel Rendering -- Marching Cubes and Minecraft-Style Worlds
Vulkan API Guide -- Low-Level Graphics Programming
Vulkan Introduction -- Modern Graphics API
WebGL and Three.js -- 3D Graphics in the Browser

Published Topics

Computer Graphics Overview — From Pixels to Photorealism

Learn computer graphics fundamentals from pixel representation and rasterization to ray tracing, GPU pipelines, and how modern games render photorealistic scenes in real time.

✓ Live

Vulkan Introduction — Modern Graphics API

Learn Vulkan graphics API fundamentals: instance creation, physical device selection, logical device setup, swapchain, command buffers, and drawing your first triangle.

✓ Live

WebGL and Three.js — 3D Graphics in the Browser

Learn WebGL and Three.js for browser-based 3D graphics: create scenes, meshes, cameras, lights, handle animations, and understand the WebGL graphics pipeline.

✓ Live

Shader Programming — GLSL Vertex and Fragment Shaders

Learn GLSL shader programming from scratch: vertex shaders for transformations, fragment shaders for lighting and effects, uniforms, varyings, and practical shader techniques.

✓ Live

Acceleration Structures — BVH and Grids for Ray Tracing

Learn acceleration structures for ray tracing: bounding volume hierarchies, uniform and adaptive grids, spatial partitioning, and how to accelerate ray-scene intersection queries.

✓ Live

Texture Mapping — UV Coordinates, Filtering and Mipmaps

Learn texture mapping in computer graphics: UV coordinates, texture filtering (nearest, bilinear, trilinear), mipmaps, wrapping modes, and practical OpenGL texture implementation.

✓ Live

Lighting Models — Phong, Blinn-Phong and PBR

Learn lighting models in computer graphics: ambient, diffuse, and specular components, Phong and Blinn-Phong models, physically-based rendering, and real-time light implementation.

✓ Live

BRDF and Materials — Physically-Based Rendering

Learn BRDF theory for physically-based rendering: microfacet models, Cook-Torrance BRDF, Fresnel equations, energy conservation, and practical PBR material implementation.

✓ Live

Post-Processing Effects — Bloom, HDR, Tone Mapping and Depth of Field

Learn post-processing effects in real-time graphics: HDR rendering, tone mapping, bloom, depth of field, color grading, and how to implement them with framebuffer objects in OpenGL.

✓ Live

Anti-Aliasing — MSAA, FXAA, TAA and Supersampling

Learn anti-aliasing techniques: MSAA (multisample anti-aliasing), FXAA (fast approximate), TAA (temporal), supersampling (SSAA), and how each eliminates jagged edges in real-time graphics.

✓ Live

GPU Architecture — CUDA Cores, Warps and Memory Hierarchy

Learn GPU architecture design: CUDA cores, streaming multiprocessors, warp execution, memory hierarchy (global, shared, local, constant, texture), and how understanding hardware improves shader performance.

✓ Live

Procedural Textures — Perlin Noise, Voronoi and Fractals

Learn procedural texture generation: Perlin noise, simplex noise, Voronoi diagrams, fractal Brownian motion, and how to create infinite unique textures without image files using shader algorithms.

✓ Live

3D Animation and Rigging — Skinning, Blending and Inverse Kinematics

Learn 3D character animation and rigging: skeleton hierarchy, skinning with linear blend skinning, vertex weights, keyframe animation, blending, and inverse kinematics for procedural animation.

✓ Live

Voxel Rendering — Marching Cubes and Minecraft-Style Worlds

Learn voxel rendering techniques: voxel data structures, greedy meshing, marching cubes for smooth isosurfaces, chunk-based world management, and efficient rendering of block-based environments.

✓ Live

Real-Time Global Illumination — Screen Space, Voxel Cone and Light Probes

Learn real-time global illumination techniques: screen space ambient occlusion, screen space reflections, voxel cone tracing, light probes, and dynamic diffuse GI for games.

✓ Live

OpenGL Programming Guide — Modern OpenGL 4.x

Learn modern OpenGL 4.x programming: core profile, VAOs and VBOs, shader compilation, buffer objects, uniforms, and building a complete renderer in C++ with real-time 3D graphics.

✓ Live

Vulkan API Guide — Low-Level Graphics Programming

Learn Vulkan API programming: instance creation, physical device selection, logical device, swapchain, graphics pipeline, command buffers, synchronization, and rendering a triangle with explicit GPU control.

✓ Live

DirectX 12 Guide — Modern Graphics Programming on Windows

Learn DirectX 12 programming: D3D12 device creation, command queues, root signatures, pipeline state objects, descriptor heaps, and rendering a triangle with explicit GPU resource management.

✓ Live

3D Transformations & Matrices — Translation, Rotation, Scaling and Projection

Learn 3D transformation matrices in computer graphics: translation, rotation, scaling, shear, the MVP matrix pipeline, coordinate spaces, quaternions, and building a transformation hierarchy.

✓ Live

Bump, Normal and Displacement Mapping — Surface Detail Without Geometry

Learn bump mapping, normal mapping, and displacement mapping: perturbing surface normals, tangent space, height maps, parallax occlusion mapping, tessellation, and implementing each technique in GLSL.

✓ Live

Parallel Computing with GPU — CUDA, Thread Blocks and Memory Optimization

Learn parallel computing on GPUs: CUDA thread hierarchy, memory models, parallel reduction, matrix multiplication, occupancy optimization, and performance profiling for data-parallel workloads.

✓ Live

What Is Computer Graphics: From Pixels to Photorealism

Learn what computer graphics is including rendering pipelines rasterization ray tracing and how digital images are created from mathematical models and data.

✓ Live

Graphics Rendering Pipeline: Vertex Fragment and Rasterization Stages

Learn the graphics rendering pipeline from vertex processing through rasterization to fragment shading including coordinate transforms and pixel operations.

✓ Live

Rasterization Explained: Converting Vector Graphics to Pixels

Learn rasterization converting vector shapes and triangles into pixel data using scanline algorithms edge functions and barycentric coordinate interpolation.

✓ Live

Coordinate Systems and Transformations in Computer Graphics

Learn about local world view and screen coordinate spaces and how transformation matrices map geometry between coordinate systems for 3D rendering workflows.

✓ Live

Pixels Resolution and Aspect Ratio: Digital Display Fundamentals

Learn how pixels resolution and aspect ratio define digital image quality and how display characteristics affect rendering choices in graphics applications.

✓ Live

Color Models in Computer Graphics: RGB CMYK and HSV Explained

Learn the RGB CMYK and HSV color models used in computer graphics including additive and subtractive color spaces and when to use each model in rendering.

✓ Live

Frame Buffer and Display: How Graphics Memory Drives Your Screen

Learn how frame buffers store pixel data in memory and how display controllers read and refresh screens including double buffering and vsync mechanisms.

✓ Live

Ray Tracing Basics: Whitted Ray Tracing Algorithm Explained

Learn the fundamentals of ray tracing including primary ray casting shadow rays reflections refractions and how Whitted style ray tracing produces images.

✓ Live

Path Tracing: Monte Carlo Light Transport for Realistic Rendering

Learn path tracing a Monte Carlo algorithm that simulates light transport by tracing millions of ray paths to produce physically accurate global illumination.

✓ Live

Distributed Ray Tracing: Antialiasing Soft Shadows and Depth of Field

Learn distributed ray tracing techniques that sample multiple rays per pixel for antialiasing soft shadows glossy reflections and depth of field effects.

✓ Live

Acceleration Structures: BVH and Grids for Faster Ray Tracing

Learn bounding volume hierarchies and spatial grids that accelerate ray tracing by organizing geometry into hierarchical structures for intersection tests.

✓ Live

Anti-Aliasing Techniques: MSAA FXAA TAA and Supersampling Compared

Learn anti-aliasing methods including multisampling FXAA TAA and supersampling that reduce jagged edges and visual artifacts in rendered images and scenes.

✓ Live

Post-Processing Effects: Bloom HDR Tone Mapping and Depth of Field

Learn screen space post-processing effects including bloom high dynamic range tone mapping depth of field and color grading for enhanced rendered image quality.

✓ Live

Physically Based Rendering: The PBR Pipeline for Realistic Materials

Learn physically based rendering principles including energy conservation microfacet models and image based lighting for photorealistic material appearance.

✓ Live

Translation Rotation and Scaling Matrices for 3D Transformations

Learn how affine transformation matrices translate rotate and scale 3D objects using homogeneous coordinates enabling scene graph transformations in graphics.

✓ Live

Perspective and Orthographic Projection: Viewing 3D on a 2D Screen

Learn perspective and orthographic projection matrices that map 3D scene coordinates onto a 2D viewport including field of view and clipping plane setup.

✓ Live

Quaternions for 3D Rotation: Avoiding Gimbal Lock in Animation

Learn quaternion mathematics for 3D rotation including axis angle representation SLERP interpolation and how quaternions eliminate gimbal lock in animation.

✓ Live

Bezier Curves and Surfaces: Smooth Geometry with Control Points

Learn Bezier curves and surfaces that define smooth shapes using control points and Bernstein polynomials essential for vector graphics and font rendering.

✓ Live

B-Splines and NURBS: Advanced Curve and Surface Modeling

Learn B-spline and NURBS modeling techniques that provide local control over curve shape with knot vectors for precise smooth surface design in 3D graphics.

✓ Live

Scene Graphs and Hierarchical Transformations in Graphics Engines

Learn scene graph data structures that organize objects hierarchically enabling parent child transformations and efficient scene traversal for rendering.

✓ Live

Mesh Representation and Topology: Vertices Edges and Polygons

Learn 3D mesh representations using vertices edges and polygons including triangle meshes half edge data structures and manifold topology concepts in graphics.

✓ Live

Phong Lighting Model: Ambient Diffuse and Specular Reflection

Learn the Phong reflection model that computes lighting as ambient diffuse and specular components giving surfaces realistic shading based on light position.

✓ Live

Blinn-Phong vs Phong: Shading Model Comparison and Best Practices

Learn the differences between Blinn-Phong and Phong shading models including performance half vector approximation and specular highlight quality for rendering.

✓ Live

BRDF and Materials: Physically Based Reflectance for Realistic Rendering

Learn bidirectional reflectance distribution functions that define how materials reflect light including Lambertian Cook Torrance models for PBR workflows.

✓ Live

Real-Time Global Illumination: Screen Space Voxel Cone and Light Probes

Learn real-time global illumination techniques including screen space ambient occlusion voxel cone tracing and light probes for indirect light bouncing.

✓ Live

Shadow Mapping: Depth Based Shadow Generation for Real-Time Graphics

Learn shadow mapping techniques that render shadows by comparing fragment depth against a depth map from the light source including cascade shadow maps.

✓ Live

Normal Mapping: Adding Surface Detail Without Increasing Geometry

Learn normal mapping that simulates surface bumps and crevices by perturbing per pixel normals using tangent space maps for detailed 3D surface appearance.

✓ Live

HDR Lighting and Tone Mapping: High Dynamic Range in Games and Film

Learn high dynamic range lighting pipelines that store luminance beyond display range and apply tone mapping operators for compelling final rendered images.

✓ Live

Texture Mapping and UV Coordinates: Wrapping 2D Images on 3D Models

Learn texture mapping fundamentals including UV coordinate assignment bilinear filtering and mipmapping that map 2D image data onto three dimensional surfaces.

✓ Live

Procedural Textures: Perlin Noise Voronoi and Fractal Generation

Learn procedural texture generation using Perlin noise Voronoi diagrams and fractal Brownian motion for infinite unique textures without image assets.

✓ Live

Bump and Displacement Mapping: Simulating and Actually Moving Geometry

Learn bump mapping for visual surface detail and displacement mapping that physically modifies geometry vertices based on height maps for surface variation.

✓ Live

Mipmapping and Texture Filtering: Reducing Aliasing in Textured Surfaces

Learn mipmapping that precomputes downsampled texture versions to prevent aliasing combined with bilinear and trilinear filtering for textured surfaces.

✓ Live

PBR Material Workflow: Albedo Roughness Metalness and Normal Maps

Learn the PBR material authoring workflow using albedo roughness metalness and normal maps to create realistic surface appearances in rendering engines.

✓ Live

Cube Maps and Environment Lighting: Reflections and Skyboxes in 3D

Learn cube map textures for environment lighting skyboxes and reflections using six face textures that capture omnidirectional scene information for rendering.

✓ Live

Texture Splatting: Blending Multiple Textures for Terrain Rendering

Learn texture splatting that blends multiple terrain textures like grass rock and snow using alpha weight maps for realistic outdoor scene rendering in games.

✓ Live

GPU Architecture: CUDA Cores Warps and Memory Hierarchy Explained

Learn GPU architecture including CUDA core organization warp scheduling shared memory hierarchy and parallelism differences from CPU computation models.

✓ Live

Shader Programming: Vertex and Fragment Shaders with GLSL

Learn shader programming in GLSL including vertex shaders that transform geometry and fragment shaders that compute per pixel color with uniform variables.

✓ Live

Compute Shaders: GPU Compute for Graphics and Beyond

Learn compute shaders for general purpose GPU computations outside the rendering pipeline enabling particle systems image processing and physics simulations.

✓ Live

GPGPU with CUDA and OpenCL: General Purpose GPU Programming

Learn GPGPU programming using CUDA and OpenCL frameworks that leverage GPU parallelism for image processing scientific computing and machine learning.

✓ Live

OpenGL Basics: Drawing Triangles and Writing Your First Shaders

Learn OpenGL basics including vertex buffer objects shader compilation and the draw call pipeline to render triangles and interactive 3D graphics applications.

✓ Live

Vulkan API Basics: Low Overhead Graphics Programming Fundamentals

Learn Vulkan API fundamentals including instance device queue creation command buffers and synchronization for explicit low overhead GPU control in graphics.

✓ Live

WebGL and Three.js: 3D Graphics in the Browser with JavaScript

Learn WebGL and Three.js for browser based 3D graphics including scene setup camera controls lighting and materials for interactive web visualizations.

✓ Live

Keyframe Animation: Interpolation and Timing for 3D Character Motion

Learn keyframe animation including linear spherical and spline interpolation between poses with timing curves for natural character motion in games and film.

✓ Live

Skeletal Animation and Rigging: Skinning Blending and Inverse Kinematics

Learn skeletal animation with bone hierarchies skinning weights linear blend skinning and inverse kinematics for realistic character deformation and posing.

✓ Live

Particle Systems: Simulating Fire Smoke and Visual Effects

Learn particle system design including emitter configuration force fields collision detection and particle lifecycle for real time visual effects in games.

✓ Live

Cloth and Fluid Simulation: Physics Based Animation for Realism

Learn cloth simulation using spring mass systems and fluid simulation with Navier-Stokes equations for physics based animation of fabrics and liquids.

✓ Live

Collision Detection: AABB OBB and Spatial Partitioning for Games

Learn collision detection algorithms including axis aligned oriented bounding boxes and spatial partitioning with broad and narrow phase optimization.

✓ Live

Morph Target Animation: Blend Shapes for Facial Animation and Deformation

Learn morph target animation that interpolates between pre defined vertex positions for facial expressions and surface deformation without skeletal rigs.

✓ Live

Procedural Animation: Algorithmic Motion Without Keyframes

Learn procedural animation that generates motion algorithmically using inverse kinematics physics constraints and noise for adaptive character movement.

✓ Live

Computer Graphics Career Paths: Rendering Engineer Technical Artist and More

Learn about computer graphics career paths including rendering engineer technical artist and graphics programmer and portfolio building for the industry.

✓ Live

Learning Graphics Programming: Roadmap from Beginner to Advanced

Learn a structured roadmap for mastering graphics programming from math fundamentals through shader development ray tracing and real time rendering techniques.

✓ Live

Graphics API Comparison: OpenGL Vulkan DirectX and Metal Compared

Learn the differences between OpenGL Vulkan DirectX and Metal graphics APIs including cross platform support and performance characteristics for graphics.

✓ Live

Graphics Performance Optimization: Draw Calls Batching and GPU Profiling

Learn graphics performance optimization techniques including draw call batching level of detail occlusion culling and GPU profiling for smoother frame rates.

✓ Live

Graphics Debugging Tools: RenderDoc Nvidia Nsight and GPU PerfStudio

Learn graphics debugging with RenderDoc Nvidia Nsight and GPU PerfStudio including frame capture shader debugging and performance analysis for applications.

✓ Live

Computer Graphics Projects: Building a Portfolio That Gets You Hired

Learn how to build a computer graphics portfolio with demo projects including ray tracers game engines and procedural generators to impress employers.

✓ Live

All 76 topics in Computer Graphics — Complete Guide are published.