📅 March 2026
⏱ Curated list
🔄 Updated regularly
Physics Simulation Learning Resources — Books, Papers, Channels, and Datasets
A curated, opinionated collection of the best free and paid resources for learning physics simulation, numerical methods, computer graphics, and WebGL. Ordered from approachable introductions to graduate-level deep dives.
1. Textbooks
Mathematics and Physics Foundations
-
3D Math Primer for Graphics and Game DevelopmentBookThe most readable introduction to vectors, matrices, quaternions, and transforms for 3D graphics. Essential prerequisite for everything else on this list.
-
Game Physics Engine DevelopmentBookWalks through building a complete physics engine from scratch: particles, rigid bodies, collision detection (SAT), constraints. Highly practical C++ code, concepts easily ported to JS.
-
Physics-Based AnimationBookAcademic treatment of rigid body simulation, constraint-based methods, PGS solvers, and articulated body systems. More rigorous than Millington. Free PDF available.
Fluid and Continuum Simulation
-
Fluid Simulation for Computer GraphicsBookThe definitive reference for CFD in graphics. Covers grid-based Navier-Stokes, semi-Lagrangian advection, pressure projection, smoke, water surface tracking, and SPH. Well-paced and mathematically complete.
-
A Course on Partial Differential EquationsBookGraduate-level foundation for understanding the wave equation, heat equation, Laplace equation, and Navier-Stokes from first principles.
Computer Graphics
-
Real-Time RenderingBookThe comprehensive reference for real-time 3D graphics: rasterization pipeline, shading models, shadows, reflections, global illumination, raytracing. Essential for WebGL and Three.js developers.
-
The Book of ShadersFreeOnlineGentle, visual introduction to GLSL fragment shaders. Covers noise, cellular automata, generative patterns. Best starting point for shader authoring — interactive examples in the browser.
2. YouTube Channels
-
Sebastian LagueVideoFreeHigh-production-value tutorials on terrain generation, fluid simulation, neural networks, ray marching, and pathfinding — implemented live with Unity/C#. Concepts transfer directly to Three.js + GLSL.
-
AcerolaVideoFreeDeep-dives into graphics programming topics: ambient occlusion, screen-space effects, water shaders, global illumination. Technical and accessible — highly recommended for shader developers.
-
Íñigo Quílez (iq)VideoFreeCreator of Shadertoy. Tutorials on signed distance functions (SDFs), procedural texturing, ray marching, and smooth boolean operations. The definitive source for SDF techniques.
-
3Blue1BrownVideoFreeVisually stunning explanations of linear algebra, calculus, Fourier series, differential equations, and neural networks — perfect math foundations for simulation work.
-
Coding TrainVideoFreeDaniel Shiffman's p5.js/JavaScript coding challenges: cellular automata, boids, fractals, noise, physics simulations. Great for beginners getting hands-on quickly.
3. Online Courses
-
Bruno Simon's Three.js JourneyCourseThe most complete Three.js course available. 45+ hours covering geometry, lights, shadows, shader, post-processing, physics (Cannon-es), particles, and portals. Worth every dollar for serious Three.js development.
-
CMU 15-462 Computer GraphicsFreeFull undergraduate graphics course from Carnegie Mellon: rasterization, ray tracing, GLSL, mesh processing, animation, physically based rendering. Lecture notes and assignments freely available.
-
SIGGRAPH Physics-Based Animation CourseFreePDFAnnual course notes covering the state of the art in cloth, fluid, MPM, rigid body, and fracture simulation. Free PDFs on the ACM Digital Library (open access).
4. Key Papers
-
Stable Fluids — Stam 1999PaperFreeIntroduced unconditionally stable semi-Lagrangian advection for grid-based fluid simulation. The foundation of all real-time smoke and fire simulations in games and VFX for 25 years.
-
A Material Point Method for Snow Simulation — Stomakhin et al. 2013PaperFreeThe paper behind Frozen's snow. Introduces the elastoplastic snow constitutive model with hardening. Essential reading before implementing MPM.
-
Position Based Dynamics — Müller et al. 2006PaperFreeIntroduced PBD: position constraint projection for cloth, volumes, and fluids. Used in Unity's DOTS Physics, NVIDIA FleX, and many games. Very easy to implement and stable.
-
Real-Time Fluid Dynamics for Games — Stam 2003PaperFreeCompact C implementation (~200 lines) of a real-time grid fluid solver. The most-implemented fluid simulation in game demos and browser toys — a perfect starting point.
-
Particle-based Viscoelastic Fluid Simulation — Clavet et al. 2005PaperFreeSPH variant with spring-based viscosity and elasticity. Produces striking gels, slimes, and water with a simple particle loop. Popular starting point for browser SPH demos.
5. Datasets and Benchmarks
-
Stanford 3D Scanning RepositoryFreeHigh-quality polygon meshes: Stanford Bunny, Dragon, Happy Buddha, Lucy. Standard benchmarks for mesh processing, ray tracing, and physics convex decomposition.
-
ERA5 Climate ReanalysisFreeECMWF hourly global atmospheric data (1940–present) at 31 km resolution: temperature, wind, humidity, sea surface temperature, ocean currents. Essential for realistic weather visualizations.
-
USGS Earthquake CatalogFreeReal-time and historical earthquake data (M1+, global, back to 1900). GeoJSON and CSV feeds. Use for seismic visualization or wave propagation demos driven by real data.
-
ShadertoyFreeThousands of open-source GLSL shader demos: fluid simulation, ray marching, procedural terrain, noise fields. An invaluable inspiration library and learning tool for WebGL shader work.
6. Online Tools and Playgrounds
-
GLSL Sandbox / ShadertoyFreeLive GLSL editor in the browser — type shader code, see it render instantly. Perfect for experimenting with noise, distance fields, and fluid-like effects.
-
jsbin / CodeSandbox / StackBlitzFreeFull browser IDEs with live preview. Import Three.js or Cannon-es via CDN; build and share physics demos without any local setup. StackBlitz runs Node.js natively in the browser.
-
Desmos Graphing CalculatorFreeInteractive 2D function plotter — essential for visualizing and debugging mathematical functions before implementing them in simulations (e.g., smoothstep kernels, force curves).
-
Wolfram AlphaFreeSymbolic math, differential equation solving, physical constants lookup, unit conversions. Use to verify analytical solutions against your numerical simulation results.