Skip to content

Latest commit

 

History

History
113 lines (86 loc) · 13.3 KB

index.md

File metadata and controls

113 lines (86 loc) · 13.3 KB

Introduction

Explanation and examples of modern rendering techniques commonly used for game engines.

If you are on your phone consider browsing through this <a href="https://rendering-techniques.learn-computer-graphics.com/" target="_blank">link</a> for better performance.

About

This website will show and explain multiple usages of the low-level rendering library The Forge. It works in conjunction with the repository the-forge-samples which implements said tutorials.

📖 Sources

Websites

Name Founder(s) Description
WebGL Fundamentals - Various tutorial on rendering techniques for WebGL 1 & 2
Learn OpenGL Joey de Vries Various tutorial on rendering techniques for OpenGL
Vulkan Tutorial Alexander Overvoorde A step-by-step tutorial to use Vulkan
Advances in Real Time rendering - Slides and Videos from SigGraph conferences
Scratch A Pixel - Tutorial on Computer Graphics theory

Blogs

Name Founder(s) Description
Wicked Engine Dev Blog János Turánszki Dev blog of his game engine
Our Machinery Dev Blog - Dev blog of their game engine
3D Game engine programming Robert Grigg Various articles related to DirectX
The Ryg blog Fabian Giesen In depth articles about GPU structures. Known for his Trip trough the graphic pipeline series
Adrian Courrèges blog Adrian Courrèges Well known for his Graphics Study series of AAA games.
Alain Gavan blog Alain Gavan Different articles on graphic programming
Humus Name Emil Persson Blog of a Senior Graphics Engineer at Epic Games
Repi blog Johan Andersson Graphics programmer at Dice
Mirror2Mask Natalya Tatarchuk Lead and engineering architect at Bungie
ID software tiago Tiago Sousa Lead rendering programmer at ID Software
PataBlog - Rendering artisan on Dishonored 2
Create the matrix Anoop Ravi Thomas Senior Graphics Programmer at Rockstar San Diego
Game Art Tricks Simon Schreibt VFX artist at Wild Sheep Studio in Montpellier France

Articles

Name Author Description
How Unreal renders a frame Kostas Anagnostou
Data driven rendering pipeline Gabriel Sassone

Videos

Youtube channels

Name Author Description
SketchPunkLabs - Learn WebGL - Various tutorials on rendering techniques with WebGL
GDC Vault - Many conferences from professionals in the game industry
The Cherno - Various videos on programming and graphics programming with content on OpenGL
ChiliTomatoNoodle - Various videos on programming and graphics programming with content on DirectX

On architecture

Name Description Analysis
GDC - Multithreading Destiny GDC 2015 talk by Barry Genova from Bungie Destiny datum array accessed with handles, so there is no copy (maybe only on the rendering side, because it is not in sync with the simulation). Check at 29 min

Read and writes are declared with a policy, and a check is done between the jobs to check if the policies are compatible before the task starts.

If it is not, there is an assert and you need to review the way it is structured :
- Start after the end of the overlap (dependency)
- Copy data / cache data
- Queue messages so that the overlapping action is taken latter
- Change algorithm

Those checks are built-out in release. They call it the "Execution Environment"

API Code samples

Name Description
Sacha Willem's Vulkan Various rendering techniques with the Vulkan API
DirectX graphics samples Microsoft official repository for code samples in DirectX 12
Vulkan Samples Khronos official repository for code samples in Vulkan

Renderers

This Gist offers multiple links related to renderers

Logo Name Description
Diligent Engine
Panda3D
Google Filament
The Forge
Unity graphics package

Open-source Game engines

Logo Name Description
Unreal Engine 4
Cry Engine
Godot
Stride
NeoAxis Engine
Heaps Haxe engine
Flax Engine
Wicked Engine

Books

Name Description Illustration
Game Engine Architecture A famous book by Jason Gregory, a Naughty Dog engineer
Real Time Rendering Famous book on rendering techniques
Game Programming Gems Series Mark DeLoura compilation of articles by other developers
GPU Gems Series Compilation of various articles by developers
GPU Pro Series Wolfgang Engel compilation of articles by other developers
Game Engine Gems Series Compilation of articles by developers
Fundamentals of Computer Graphics A broad book explaining computer graphics from scratch
Physically Based Rendering Matt Pharr, Wenzel Jakob, and Greg Humphreys revolutionary book on materials