-
Notifications
You must be signed in to change notification settings - Fork 122
References
Most of the time spent building a project like this is actually not dedicated to coding or bug fixing but mostly focused on researching and understanding the background of whatever feature you're trying to implement. Naturally, you end up accruing a huge list of links to blogs or papers or other miscellaneous articles that you referenced at some point or another, which usually end up being abandoned after you move on. I think it would be a shame if that were the case, so I've categorized and kept track of all the links I found useful with the hope that I might help others who are also building similar projects or just want to learn about some specific topics in Computer graphics (CG).
I did something similar during my previous project too! You can check it out here. Although there's some overlap between both projects, there are some links to more foundational topics in CG over there that might be more useful if you're just starting out or have a particular interest in Software Rendering.
Feel free to message me with any corrections, dead links or cool articles that I haven't included but you think I totally should!
-
1.0 Computer Graphics Techniques
- 1.1 Shading Algorithm Overviews
- 1.2 Deferred Shading
- 1.3 Cluster Forward Rendering
- 1.4 General Purpose learning Resources
- 1.5 Image Based Lighting
- 1.6 Physically Based Rendering
- 1.7 Shadow Mapping
- 1.8 Normal Mapping
- 1.9 ZBuffer
- 1.10 High Dynamic Range (HDR)
- 1.11 Screen Space Ambient Occlusion
- 1.12 Screen Space Reflections
- 1.13 Screen Space Pixel Shaders
- 1.14 Global Illumination
- 2.0 GPU Programming and Parallel Computer Architectures
- 3.0 Software Development
- 4.0 OpenGL
Table of contents generated with markdown-toc
- Clustered Shading vs Deferred Shading by Matias
- Tiled Forward Shading links by Aras Pranckevičius
- The real time rendering Continuum by Angelo Pesce
- Forward vs Deferred vs Forward+ Rendering with DirectX 11 by Jeremiah Van Oosten
- Rendering in Battlefield 3 by Johan Andersson
- Screen-space classification for efficient deferred shading by Seong Min In
- Great stackoverflow answer as to what are the benefits of deferred rendeering by Neverender
- Lighting Alpha Objects in Deferred Rendering Environments by Kostas Anagnostou
- Efficient Real time shading with Many lights
- Clustered Shading in the wild by Ola Olsson
- Clustered Deferred and Forward Shading by Ola Olsson, Markus Billeter and Ulf Assarsson
- Volume Tiled Forward Shading by Jeremiah Van Oosten
- Doom(2016) - Graphics Study by Adrian Courreges
- The devil is in the details id Tech666 by Tiago Sousa and Jean Geffroy
- Practical Clustered Shading by Emil Persson
- The rendering Technology of Detroit: Become Human by Ronan Marchalot
- Forward+: Bringing Deferred Lighting to the Next Level by Takahiro Harada, Jay McKee and Jason C. Yang
- Efficient virtual shadow maps for many lights by Ola Olsson et al.
- Learn OpenGL
- Real Time Rendering 4th edition
- HandMade Hero by Casey Muratori
- TinyRenderer
- Modern OpenGL Tutorials
- Stanford CS248: Interactive Computer Graphics
- ScratchaPixel
- Hammersley Points on the Hemisphere by Holger Dammertz
- Localized - IBL Implementation by Chosker
- Image Based Lighting GPU GEMS by Kevin Bjorke
- Mathematical Foundations of Monte Carlo Methods
- Introduction to "Physically Based Shading in Theory and Practice" by Naty Hoffman
- Moving Frostbite to PBR 3.0 by Sebastien Lagarde
- Real Shading in Unreal engine 4 by Brian Karis
- Physically Based Rendering: From Theory to implementation by Matt Pharr, Wenzel Jakob and Greg Humphreys. So good it literally won an oscar!
- Soft Shadow Mapping by Florian Boesch
- Contact-hardening Soft Shadows Made Fast by Wojciech Sterna
- Deferred Rendering Shadow Mapping by codinglabs
- Using texture Atlases by David Rosen
- What is the best way to handle multiple point lights and shadow maps reddit thread
- D3D11 sample app that demonstrates several techniques for rendering real-time shadow maps by MJP
- The Witness Graphics Tech: Shadow Maps by Jonathan Blow
- Improved shadows using dithering and temporal supersampling by Alexandre Pestana
- Frame analysis of the sponza model, helped me see if my normals were generated correctly
- Normal Map online generation
- Normal mapping techniques for hte mathematically uninclined by Robert Basler
- A reference picture of normal mapping for sponza
- Position from depth by MJP
- Useful bug fixing thread in Opengl discussion boards
- Attack of the Depth buffer by MJP
- Thread that fixed the most maddening bug ever.
- Uncharted 2: HDR Lighting by John Hable
- Does HDR rendering have any benefits if bloom won't be applied? answer by Nathan Reed
- OpenGL, srgb and gamma correction by derhass
- Color banding issues- Reddit thread
- SSAO tutorial by John Chapman
- Compact Normal Storage by Aras Pranckevičius
- Applying SSAO to screens
- SSAO by Íñigo Quilez
- Blending vs Texture Sampling by EnoughTea
- How is screen space ambient occlusion implemented by Nathan Reed
- A simple and Practical approach to SSAO by Jose Maria Mendez
- Screen Space Reflections by ?(let me know!)
- Stochastic Screen-space Reflections by Tomasz Stachowiak
- The future of screenspace reflections by Bart Wronski
- Global Illumination and Path Tracing by scratchapixel
- Modern Foundations of Light Transport Simulation by Christian Lessig
- Global illumination using photon ray splatting
- Interactive Indirect Illumination Using Voxel Cone Tracing by Cyril Crassin Et al.
- SG SERIES PART 1: A BRIEF (AND INCOMPLETE) HISTORY OF BAKED LIGHTING REPRESENTATIONS by MJP
- Real-Time Global Illumination using Precomputed Light Field Probes by McGuire Et al.
- Parallel Computer Architecture and Programming by Prof. Kayvon Fatahalian
- Intro to Parallel Programming
- Scientific Computation by Prof. Will French
- Render Hell – Book II by Simon
- Compute Shaders: Optimize your engine using compute / Lou Kramer, AMD
- Optimizing GPU occupancy and resource usage with large thread groups by Sebastian Aaltonen
- Compute shaders by Christian Hafner
- Introduction to Compute Shaders by Anteru
- It's More Fun to Compute An Introduction to Compute Shaders by Anton Gerdelan
- How to teach and use Compute shaders by Mike Bailey
- DirectCompute Optimizations and Best Practices by Eric Young
- GPU Performance Analysis and Optimization by Paulius Micikevicius
- Scalarization and wave intrinsics by Kostas Anagnostou
- Life of a triangle
- Nvidia GPU Maxwell Architecture
- A trip through the Graphics Pipeline 2011 - Fabian Giesen
- OpenGL Rendering Pipeline - Song Ho Ahn
- Renderdoc by Baldur Karlsson If I ever win an Oscar Renderdoc gets thanked first.
- Shader Playground by Tim jones
- Code XL by amd
- OpenGL using SDL2 by Olevegard
- Multiple Keypressese in SDL2
- Key Repeat delay fix
- Creating an OpenGL 4.5 context using SDL2 and Glad by BCMPINC
- CppCon 2014:"Data-Oriented Design and C++" - Mike Acton
- How I doubled the speed of my game by giving up on c++ - Chris Parsons
- code::dive conference 2014 - Scott Meyers: Cpu Caches and Why You Care
- Data-Oriented Design (Or Why You Might Be Shooting Yourself in The Foot With OOP) by Noel llopis
- Starting with OpenGL 4.5 by BCMPINC
- OpenGL Renderer Design by Nicolas Guillemot
- Learn OpenGL by Joey de Vries
- OpenGL tutorials
- Modern OpenGL Tutorials
- OpenGL Shading Language Specification
- Handmade Hero by Casey Muratori