keywords: Graphics, Shading, Shader, Rendering, Tools and Frameworks, Tutorials and Documents

Blogs

Patricio Gonzalez Vivo
http://patriciogonzalezvivo.com/

Mitsuba is a research-oriented rendering system in the style of PBRT, from which it derives much inspiration.
http://www.mitsuba-renderer.org/

Tuxedolabs Blog
http://blog.tuxedolabs.com/

Self Shadow
https://blog.selfshadow.com/

Wojciech Jarosz
https://cs.dartmouth.edu/~wjarosz/
https://github.com/wkjarosz/rendering-bib

http://taichi.graphics/
https://github.com/yuanming-hu/taichi

Matt Pharr
https://pharr.org/matt/

Institute of Computer Graphics and Algorithms, Vienna University of Technology, Austria.
https://users.cg.tuwien.ac.at

Realistic Graphics Lab(Switzerland)
https://rgl.epfl.ch/publications

Real-time Graphics R&D
http://www.iryoku.com/

Graphics Programmer at Rockstar North
http://www.aortiz.me/

Inigo Quilez
http://iquilezles.org/index.html

Nick Darnell’s Blog, Tools, UI & Game Programmer, occasional blogger.
https://www.nickdarnell.com/

He is a long-time computer graphics and GPU enthusiast, former graphics driver developer, API architect, telecommunication system designer, and award winning contributor to the Vulkan® and OpenGL® graphics API standards.
https://rastergrid.com/blog/

INTERPLAY OF LIGHT
https://interplayoflight.wordpress.com

Paweł Dziepak
https://pdziepak.github.io/

Scratchapixel 2.0
https://www.scratchapixel.com

GurBu Technologies was co-founded by two experienced software developers.
https://gurbu.com/

Alex Tardif
http://alextardif.com/
https://twitter.com/longbool

Adam Marrs
http://visualextract.com/
https://twitter.com/acmarrs

Computer graphics projects by Morgan McGuire and friends.
https://casual-effects.com/
https://twitter.com/CasualEffects

Krzysztof Narkowicz
https://knarkowicz.wordpress.com/
https://twitter.com/knarkowicz

Balázs Török
http://morad.in/
https://twitter.com/m0radin

The Graphics codex
https://graphicscodex.com/

Wicked Engine Net
https://wickedengine.net/
https://twitter.com/turanszkij

Erik S. V. Jansson
https://eriksvjansson.net/
https://twitter.com/caffeineviking

Alan Zucconi
https://www.alanzucconi.com/

I3D is the leading conference for real time 3D computer graphics and human interaction.
http://i3dsymposium.github.io/2019/index.html

Arseny Kapoulkine
https://zeux.io/

Brian Karis (Technical Director - Graphics at Epic Games.)
http://graphicrants.blogspot.com/

Daniel Wright (Graphics Programming | Daniel Wright)
http://www.epicshaders.com/

Bartosz Ciechanowski
https://ciechanow.ski/
https://ciechanow.ski/lights-and-shadows/

Programming, Graphics, Gamedev, Exotic Computation, Audio Synthesis
https://blog.demofox.org/
https://github.com/Atrix256

High-Performance Graphics
https://www.highperformancegraphics.org/

3D Game Engine Programming
https://www.3dgep.com/

Bart Wronski, Graphics, machine learning, image and signal processing
https://bartwronski.com/

Ke-Sen Huang’s Home Page (SIGGRAPH)
https://kesen.realtimerendering.com/

This is the blog of Fabian “ryg” Giesen. I work at RAD Game Tools in Kirkland/WA as a programmer.
https://fgiesen.wordpress.com/

A collection of blogs, personas and publications that act as reference points for the latest developments in Computer Graphics.
https://github.com/GeorgeAdamon/ModernComputerGraphicsResources

The Danger Zone
https://therealmjp.github.io/posts/

Simon Coenen game programmer
https://simoncoenen.com/blog

Adrian Courrèges @NVIDIA
https://www.adriancourreges.com/blog/

Nick McDonald
https://nickmcd.me/
https://twitter.com/weigert__

real world technologies
https://www.realworldtech.com/category/graphics/

Thomas’ blog
https://blog.thomaspoulet.fr/

Daniel Holden
https://theorangeduck.com/

Daniel Meister, Sr. Software Engineer at AMD Japan Co. Ltd.
https://meistdan.github.io/

Christopher Kulla’s Homepage. Principal Rendering Programmer @EpicGames
https://fpsunflower.github.io/ckulla/

ROBERTO ZICHE. Graphic Domain Expert at Autodesk.
https://robertoziche.com/

humus (Recommended)
https://www.humus.name/index.php?page=Articles

Léna Piquet. Senior Product Manager and Technical Artist at Adobe.
https://www.froyok.fr/articles.html

Leif Erkenbrach’s programming blog
https://leifnode.com/

Max Slater. Computer Graphics, Programming, and Math
https://thenumb.at/

Adam Sawicki. Developer Technology Engineer at AMD.
https://asawicki.info/

Moments in Graphics. A blog by Christoph Peters
https://momentsingraphics.de/index.html

Learning Modern 3D Graphics Programming - NicolBolas (Recommended)
https://nicolbolas.github.io/oldtut/index.html

Choi Jae Ho
https://scahp.tistory.com/

Hi, I am Chetan Jaggi and I am working in the field of Game & Graphics. I also take on projects as a freelancer.
https://chetanjags.wordpress.com/

Glossary of computer graphics

Glossary of computer graphics
https://en.wikipedia.org/wiki/Glossary_of_computer_graphics

Assets

McGuire Computer Graphics Archive
https://casual-effects.com/data/

Tutorials

Tutorials - Comprehensive

flipcode
https://www.flipcode.com/archives/articles.shtml

In this section, we cover every area of programming, including areas both directly and indirectly related to game development.
http://archive.gamedev.net/archive/reference/listdb90.html

A trip through the Graphics Pipeline 2011: Index
https://fgiesen.wordpress.com/2011/07/09/a-trip-through-the-graphics-pipeline-2011-index/

raviramamoorthi
https://www.youtube.com/user/raviramamoorthi/about
CS184 Computer Graphics, Fall 2012
https://inst.eecs.berkeley.edu//~cs184/fa12/onlinelectures.html

Computer Graphics at TU Wien (Recommended)
https://www.youtube.com/channel/UCS9CFdjdEcq_NhaSFb_P-yA/playlists

Computer Graphics from Scratch demystifies the algorithms used in modern graphics software with basic programming and high school math.
https://gabrielgambetta.com/computer-graphics-from-scratch/

Cem Yuksel (Recommended)
https://www.youtube.com/c/cmyuksel/videos

How do Video Game Graphics Work? (Recommended)
https://www.youtube.com/watch?v=C8YtdC8mxTU

Tutorials - GPU Architecture

GPU architecture types explained
https://rastergrid.com/blog/gpu-tech/2021/07/gpu-architecture-types-explained/

Tutorials - Game Engine

Code-It-Yourself! 3D Graphics Engine Part #1 - Triangles & Projection
https://www.youtube.com/watch?v=ih20l3pJoeU
The official distribution of olcConsoleGameEngine, a tool used in javidx9’s YouTube videos and projects
https://github.com/OneLoneCoder/videos

How to Code Minecraft
https://www.youtube.com/watch?v=HhH_9DnMBgw&list=PLtrSb4XxIVbodGYZZVzC1PAZfwckrXp_X

Tutorials - Shader Development

The complete shader development course(Unity)
https://shaderdev.com/

Making it easier to work with shaders
https://github.com/shader-slang/slang

The Book of Shaders by Patricio Gonzalez Vivo & Jen Lowe
https://thebookofshaders.com/00/

Shader Basics Tutorial (no code)
https://www.youtube.com/watch?v=UVNnkDqcTGE

Tutorials - OpenGL Learning

Learn OpenGL
https://learnopengl.com/

Deferred Shading
https://learnopengl.com/Advanced-Lighting/Deferred-Shading

3D Game Shaders For Beginners (Recommended)
https://github.com/lettier/3d-game-shaders-for-beginners

How to Start Learning Computer Graphics Programming
https://erkaman.github.io/posts/beginner_computer_graphics.html

opengl-tutorial
http://www.opengl-tutorial.org/beginners-tutorials/tutorial-1-opening-a-window/

A guide to using modern OpenGL functions.
https://github.com/fendevel/Guide-to-Modern-OpenGL-Functions

Source code of OpenGL tutorials on ogldev.org
https://github.com/emeiri/ogldev

Tutorials - DirectX

This repository is intended to be used as a code repository for learning DirectX 12.
https://github.com/jpvanoosten/LearningDirectX12

Tutorials - Metal

Swift 3D Game Tutorial
https://www.youtube.com/playlist?list=PLEXt1-oJUa4BVgjZt9tK2MhV_DW7PVDsg
The resources and source code for my Youtube series on creating a game engine using Apple’s Metal Api
https://github.com/twohyjr/Metal-Game-Engine-Tutorial

Tutorials - WebGL

WebGL lessons that start with the basics
https://github.com/gfxfundamentals/webgl-fundamentals

Tutorials - WebGPU

Curated list of awesome things around WebGPU ecosystem.
https://github.com/mikbry/awesome-webgpu

Linux: Compile C++ to WebAssembly and JavaScript using Emscripten and CMake (Recommended)
https://gist.github.com/WesThorburn/00c47b267a0e8c8431e06b14997778e4

I want to talk about WebGPU
https://cohost.org/mcc/post/1406157-i-want-to-talk-about-webgpu

Tutorials - Path Tracing

A beginner-friendly Vulkan path tracing tutorial in under 300 lines of C++.
https://github.com/nvpro-samples/vk_mini_path_tracer
https://nvpro-samples.github.io/vk_mini_path_tracer/index.html

Tutorials - Ray Tracing

NVIDIA Vulkan Ray Tracing Tutorials: Ray tracing examples and tutorials using VK_KHR_ray_tracing.
https://github.com/nvpro-samples/vk_raytracing_tutorial_KHR

Source Code for “Ray Tracing Gems II: Next Generation Real-Time Rendering with DXR, Vulkan, an OptiX” by Adam Marrs, Peter Shirley, and Ingo Wald
https://github.com/Apress/Ray-Tracing-Gems-II

Getting Started With DirectX Raytracing
https://renderingpixels.com/2022/07/getting-started-with-directx-raytracing/

Path tracing workshop
https://momentsingraphics.de/PathTracingWorkshop.html

Tutorials - GPU Hacking

Hacking GCN via OpenGL (Recommended)
http://h3.gd/hacking-gcn-via-opengl/

Documents

Documents - Comprehensive

Intel Resources for Game Developers
https://software.intel.com/gamedev

Shading techniques and GLSL snippets
https://github.com/Rabbid76/graphics-snippets/

Valve’s documents of game development
https://www.valvesoftware.com/en/publications

Documents - Vulkan

Awesome Vulkan ecosystem
https://github.com/vinjn/awesome-vulkan
http://www.vinjn.com/awesome-vulkan/

Why do we need SPIR-V?
https://stackoverflow.com/a/49619262/1645289

Documents - Rendering

Forward Rendering vs. Deferred Rendering
https://gamedevelopment.tutsplus.com/articles/forward-rendering-vs-deferred-rendering--gamedev-12342

The Computer Graphics Group of Charles University
https://cgg.mff.cuni.cz/

Advances in Real-Time Rendering in 3D Graphics and Games
http://advances.realtimerendering.com/

Practical Clustered Shading
http://www.humus.name/Articles/PracticalClusteredShading.pdf

A Primer On Efficient Rendering Algorithms & Clustered Shading.
http://www.aortiz.me/2018/12/21/CG.html

Clustered Forward vs Deferred Shading 7
http://www.yosoygames.com.ar/wp/2016/11/clustered-forward-vs-deferred-shading/

Documents - Compute Shader

Rendering Particles with Compute Shaders
https://miketuritzin.com/post/rendering-particles-with-compute-shaders/

Documents - AMD

AMD’s Performance Guide is a nice collection of tips on how to program the GCN and RDNA architectures efficiently.
https://gpuopen.com/performance/

Papers

Papers - Collections

papers
https://drive.google.com/drive/folders/16A6Yj2esRTk0FP-ALr6XfxkGQvTb_1dD

Hugues Hoppe
http://hhoppe.com/

Papers - Comprehensive

Real-Time Large Crowd Rendering with Efficient Character and Instance Management on GPU.
https://www.hindawi.com/journals/ijcgt/

Papers - Rendering

Clustered Deferred and Forward Shading
http://www.cse.chalmers.se/~uffe/clustered_shading_preprint.pdf Clustered Deferred and Forward Shading
http://advancedgraphics.marries.nl/presentationslides/09_clustered_deferred_and_forward_shading.pdf

Adaptively Sampled Distance Fields - Stanford Graphics
https://graphics.stanford.edu/courses/cs468-03-fall/Papers/frisken00adaptively.pdf

Real Shading in Unreal Engine 4 by Brian Karis, Epic Games
https://de45xmedrsdbp.cloudfront.net/Resources/files/2013SiggraphPresentationsNotes-26915738.pdf

A High-Performance Software Graphics Pipeline Architecture for the GPU
https://markussteinberger.net/papers/cuRE.pdf

SIGGRAPH 2021 Rendering Engine Architecture course
https://www.youtube.com/playlist?list=PLAOytOz0HZbLaWhVrGEge5_6dNCAzGFYH
http://enginearchitecture.realtimerendering.com/2021_course/

Papers - Ray Tracing

Efficient GPU Screen-Space Ray Tracing (Recommended)

Neural Partitioning Pyramids for Denoising Monte Carlo Renderings
https://balint.io/nppd/
https://balint.io/nppd/nppd_paper.pdf

Papers - Indirect Illumination

Virtual Blue Noise Lighting
https://graphics.cs.utah.edu/research/projects/virtual-blue-noise-lighting/

Source Code for HPG 2022 Paper “Virtual Blue Noise Lighting”
https://github.com/WeakKnight/VirtualBlueNoiseLighting

Papers - NeRF (Neural Radiance Fields)

NeRF, Representing Scenes as Neural Radiance Fields for View Synthesis
https://www.matthewtancik.com/nerf

PlenOctrees, For Real-time Rendering of Neural Radiance Fields
https://alexyu.net/plenoctrees/

Mip-NeRF: A Multiscale Representation for Anti-Aliasing Neural Radiance Fields
https://jonbarron.info/mipnerf/

PlenOctree Volume Rendering (supports CUDA & fragment shader backends), NeRF(Neural Radiance Fields)
https://github.com/sxyu/volrend

Plenoxels: Radiance Fields without Neural Networks
https://github.com/sxyu/svox2

Code release for NeRF (Neural Radiance Fields)
https://github.com/bmild/nerf

Papers - Geometry - Nanite

Brief Analysis of Nanite
https://www.notion.so/Brief-Analysis-of-Nanite-94be60f292434ba3ae62fa4bcf7d9379

Papers - Enhancing Photorealism Enhancement

A 3D generative design space where form follows information.
https://www.blank.ai/
Enhancing Photorealism Enhancement
https://www.youtube.com/watch?v=P1IcaBn3ej0
Enhancing Photorealism Enhancement
https://arxiv.org/abs/2105.04619
Code & Data for Enhancing Photorealism Enhancement
https://github.com/intel-isl/PhotorealismEnhancement
Enhancing Photorealism Enhancement
https://intel-isl.github.io/PhotorealismEnhancement/

Papers - Wave Optics

A Generalized Ray Formulation For Wave-Optics Rendering
https://ssteinberg.xyz/2023/03/27/rtplt/
https://arxiv.org/pdf/2303.15762.pdf

Game Engine

HTML5 Gameplay Framework

Phaser - HTML5 Game Framework
https://github.com/photonstorm/phaser

Phaser CE (Community Edition)
https://github.com/photonstorm/phaser-ce

GDevelop is an open-source, cross-platform game engine designed to be used by everyone.
https://github.com/4ian/GDevelop

Ultralight— lightweight, pure-GPU, HTML UI engine for desktop apps and games.
https://github.com/ultralight-ux/Ultralight

Construct 3. Modern. Highly capable. Versatile. This is the all-in-one tool to build and ship your games globally.
https://www.construct.net/en/make-games/games-editor

LLVM-to-Web (WASM)

Esenthel Engine can run directly in a browser, no plugin required.
Following browsers are supported: Chrome, FireFox, Edge, Opera.
https://github.com/Esenthel/EsenthelEngine/

Provided as platform as a service Xe-Engine™ is a desktop grade game engine enabling the development of high quality gaming experiences from within the browser.
http://xe-development.com/

3D Game Engine

Open 3D Engine (O3DE) is an Apache 2.0-licensed multi-platform 3D engine that enables developers and content creators to build AAA games, cinema-quality 3D worlds, and high-fidelity simulations without any fees or commercial obligations.
https://github.com/o3de/o3de/

GZDoom adds an OpenGL renderer to the ZDoom source port.
https://github.com/coelckers/gzdoom

GDevelop is an open-source, cross-platform game engine designed to be used by everyone.
https://github.com/4ian/GDevelop

The Derydoca Engine is a game engine and personal project of mine I am making available to anyone interested in it.
https://github.com/Derydoca/derydocaengine

Spartan Engine, Game engine with an emphasis on architectual quality, targeting high end machines.
https://github.com/PanosK92/SpartanEngine

Nazara Engine is a fast, complete, cross-platform, object-oriented API which can help you in your daily developper life.
https://github.com/DigitalPulseSoftware/NazaraEngine

Lightweight, multi-platform, data-oriented game engine.
https://github.com/polymonster/pmtech

OGSR Project - Evolution of X-Ray Engine for STALKER: Shadow of Chernobyl
https://github.com/OGSR/OGSR-Engine

3D C++ Game Engine - yet another open source game engine
https://github.com/nem0/LumixEngine

Nebula is an open-source and free-to-use modern C++ game engine.
https://github.com/gscept/nebula

The Microsoft Game Development Kit (GDK) contains the common tools, libraries, and documentation needed to build games for the Xbox App on Windows 10, Xbox Game Pass for PC, Xbox consoles (Xbox Series X|S, Xbox One), and Xbox Game Pass cloud gaming.
https://github.com/microsoft/gdk

An open source game engine in active development (Recommended)
https://github.com/ezEngine/ezEngine

Graphics engine written in C++/DirectX12 (Recommended)
https://github.com/mateeeeeee/Adria-DX12

the thin c++ game engine
https://github.com/hugoam/toy

Kruger Prototype Game Engine. Kruger is a game engine framework, basically an engine without a renderer. It contains a lot of the boilerplate machinery required for resource management, serialization, gameplay, etc.
https://github.com/BobbyAnguelov/KRG

Skylicht Engine is C++ Game Engine based on Irrlicht 3D. We have upgraded to more features. Cross-Platform Framework (Android, IOS, UWP, HTML5)
https://github.com/skylicht-lab/skylicht-engine

Castor3D is a 3D engine written in C++ 17. It works on Windows and GNU/Linux. It relies on Ashes as a rendering API, allowing Vulkan, Direct3D 11, and OpenGL. The project itself is compilable on supported platforms using CMake (\ref build).
https://github.com/DragonJoker/Castor3D

Legion-Engine is a data oriented C++17 game engine built to make optimal use of modern hardware.
https://github.com/Rythe-Interactive/Rythe-Engine.rythe-legacy

Hork Engine. Developed for Quake-style 3D games, but it is possible to create games of other genres.
https://github.com/Hork-Engine/Hork-Source

CX3D is an easy to use Game Framework for the development of 3D Games in C++.
https://github.com/PardCode/CX3D

Razix is a High Performance Research Engine for production pipeline with emphasis on experimenting with different rendering techniques. Razix supports Windows, Mac, Linux, PSVita and PS3 systems.
https://github.com/Pikachuxxxx/Razix

A 3D game engine written in C++ with features like PBR, global illumination, procedural terrain generation, deferred rendering pipeline, and more!
https://github.com/krait-games/hyperion-engine

Cross-platform 2D and 3D Game Engine written in C++ that supports both OpenGL and Vulkan.
https://github.com/jmorton06/Lumos

Lina Engine is an open-source , modular, tiny and fast C++ game engine, aimed to develop 3D desktop games.
https://github.com/inanevin/LinaEngine

A 3D game engine written in C++ with features like PBR, global illumination, procedural terrain generation, deferred rendering pipeline, and more!
https://github.com/krait-games/hyperion-engine

Lina Engine is an open-source , modular, tiny and fast C++ game engine, aimed to develop 3D desktop games.
https://github.com/inanevin/LinaEngine

High Performance Research Engine for Production Pipeline
https://github.com/Pikachuxxxx/Razix

C++ open source 3D game engine
https://github.com/asc-community/MxEngine

Cross-platform game engine with Vulkan backend
https://github.com/ajweeks/FlexEngine

Rythe is a data-oriented C++17 game engine built to make optimal use of modern hardware.
https://github.com/Rythe-Interactive/Rythe-Engine

Modern & multiplatform game engine in C++17
https://github.com/Razakhel/RaZ

The AMD Render Pipeline Shaders (RPS) SDK is a comprehensive and extensible Render Graph framework. (Recommended)
https://github.com/GPUOpen-LibrariesAndSDKs/RenderPipelineShaders

Overload, 3D Game engine with editor
https://github.com/adriengivry/Overload

halley, a lightweight game engine written in modern C++
https://github.com/amzeratul/halley

C++ Game Engine and Editor
https://github.com/volcoma/EtherealEngine

GlistEngine is a cross platform OpenGL game engine written in C++
https://github.com/GlistEngine/GlistEngine

2D Game Engine

A multi-platform 2D game engine
https://github.com/nCine/nCine

2D physics engine for games
https://github.com/google/liquidfun

Repository for the Defold engine, editor and command line tools.
https://github.com/defold/defold

Flexible level editor
https://github.com/mapeditor/tiled

The official distribution of olcPixelGameEngine, a tool used in javidx9’s YouTube videos and projects
https://github.com/OneLoneCoder/olcPixelGameEngine

LÖVE is an awesome framework you can use to make 2D games in Lua. It’s free, open-source, and works on Windows, Mac OS X, Linux, Android and iOS. (Recommended)
http://love2d.org/
https://github.com/love2d-community/awesome-love2d

Easy to use cross-platform 2D game library for C++
https://github.com/jhasse/jngl

Game Source Porting

The Eternity Engine.
https://github.com/team-eternity/eternity

Simulator Engine

Collections

UNIGINE 2, Real-time 3D visualization SDK (C++/C#) for simulation & training.
https://unigine.com/products/sim/advantages/

Tools and Frameworks

T&F - GLFW & GLM

A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input
https://github.com/glfw/glfw

Demo showing how to use the-forge with a with your own windowing, input and application loop.
https://github.com/rextimmy/the-forge-glfw

OpenGL Mathematics (GLM)
https://github.com/g-truc/glm

Highly Optimized Graphics Math (glm) for C
https://github.com/recp/cglm

GLEW(source updated nightly) with Cmake and pre-generated sources (Recommended)
https://github.com/Perlmint/glew-cmake
The OpenGL Extension Wrangler Library
https://github.com/nigels-com/glew

T&F - Translation Layer

A Vulkan-based translation layer for Direct3D 10/11 which allows running 3D applications on Linux using Wine.
https://github.com/Joshua-Ashton/d9vk

A Vulkan-based translation layer for Direct3D 10/11 which allows running 3D applications on Linux using Wine.
https://github.com/doitsujin/dxvk

A library containing utilities for mapping higher-level graphics work to D3D12
https://github.com/microsoft/D3D12TranslationLayer

The implementation of OpenCL and OpenGL to DirectX 12 translation layers
https://gitlab.freedesktop.org/kusma/mesa
Deep dive into OpenGL over DirectX layering
https://www.collabora.com/news-and-blog/blog/2020/07/09/deep-dive-into-opengl-over-directx-layering/

ANGLE(Almost Native Graphics Layer Engine), A conformant OpenGL ES implementation for Windows, Mac and Linux.
https://github.com/google/angle

Layer providing Vulkan features when native support is unavailable
https://github.com/KhronosGroup/Vulkan-ExtensionLayer

Modern 3D graphics made simple with cross-platform C++17 meta-API on top of DirectX 12 & Metal & Vulkan
https://github.com/egorodet/MethaneKit

The Direct3D11-On-12 mapping layer
https://github.com/microsoft/D3D11On12

sokol, minimal cross-platform standalone C headers.
https://github.com/floooh/sokol

Glide/DirectX implementation on D3D11/12
https://github.com/dege-diosg/dgVoodoo2

T&F - API Binding

Modern OpenGL binding for python
https://github.com/moderngl/moderngl

T&F - Hardware Real-Time Rendering

High performance physically based renderer in C++11
https://github.com/tunabrain/tungsten

Intel Resources for Game Developers
https://github.com/GameTechDev

DirectX 11 Renderer written in C++11
https://github.com/vilbeyli/VQEngine

mbree: High Performance Ray Tracing Kernels
https://github.com/embree/embree

A simple realtime graphics playground for experimentations.
https://github.com/kosua20/Rendu

A Non-Euclidean Rendering Engine for 3D scenes.
https://github.com/HackerPoet/NonEuclidean

Checkerboard Rendering and Dynamic Resolution Rendering in the DX12 MiniEngine
https://github.com/GameTechDev/DynamicCheckerboardRendering

The Forge Cross-Platform Rendering Framework PC, Linux, Ray Tracing, macOS / iOS, Android, XBOX, PS4
https://github.com/ConfettiFX/The-Forge

A Simple Spectral Renderer
https://github.com/imallett/simple-spectral

Lighthouse 2 framework for real-time ray tracing
https://github.com/jbikker/lighthouse2

A modern cross-platform low-level graphics library and rendering framework.
https://github.com/DiligentGraphics/DiligentEngine
DiligentFX is the Diligent Engine’s high-level rendering framework.
https://github.com/DiligentGraphics/DiligentFX
Sample projects demonstrating the usage of Diligent Engine
https://github.com/DiligentGraphics/DiligentSamples

The Forge Cross-Platform Rendering Framework PC, Linux, Ray Tracing, macOS / iOS, Android, XBOX, PS4
https://github.com/ConfettiFX/The-Forge

A physically based renderer which implements many state of the art techniques in light transport simulation, material modeling, sampling and reconstruction.
https://github.com/behindthepixels/EDXRay

Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS and WASM/WebGL
https://github.com/google/filament

Mitsuba 2: A Retargetable Forward and Inverse Renderer
https://github.com/mitsuba-renderer/mitsuba2

Flux is a real-time PBR asset renderer, written with Vulkan.
https://github.com/DrNoodles/Flux

Rendering Engine using C++ and OpenGL
https://github.com/JoshuaSenouf/gl-engine

D3D12 Rendering Engine
https://github.com/KaiH0717/Kaguya

Tiny OpenGL Wrapper / 3D Engine in C++
https://github.com/weigert/TinyEngine

Multi-threaded DirectX12 renderer w/ HDR, PBR & Multi-monitor support
https://github.com/vilbeyli/VQE

Mesa 3D graphics library, is an open-source software implementation of OpenGL, Vulkan, and other graphics API specifications.
https://gitlab.freedesktop.org/mesa/mesa

Tempest is an open-source, simple, cross-platform graphics engine written in modern C++14. Main idea behind this engine is to provide a low-level GPU-programming concepts, like Ubo, Vbo, Ssbo, in convenient C++ packaging, with RAII, types and templates.
https://github.com/Try/Tempest

Castor3D is a 3D engine written in C++ 17. It works on Windows and GNU/Linux. It relies on Ashes as a rendering API, allowing Vulkan, Direct3D 11, and OpenGL. The project itself is compilable on supported platforms using CMake (\ref build).
https://github.com/DragonJoker/Castor3D

Graphics API wrapper is written in C++ on top of Directx 12 and Vulkan. Provides main features including ray tracing.
https://github.com/andrejnau/FlyCube

OpenGL C++ Graphics Engine. The project is 3D graphics engine, focused on high-performance, low-overhead rendering with modern OpenGL & C++17.
https://github.com/hotstreams/limitless-engine

Horde3D is a small 3D rendering and animation engine. It is written in an effort to create an engine being as lightweight and conceptually clean as possible.
https://github.com/horde3d/Horde3D

High-Performance Rendering Framework on Stream Architectures (Recommended)
https://github.com/LuisaGroup/LuisaCompute
High-Performance Cross-Platform Monte Carlo Renderer Based on LuisaCompute
https://github.com/LuisaGroup/LuisaRender

OpenGL/OpenGL ES/Vulkan/CUDA/OptiX Modular Rendering Framework for PC/Linux/Android (Recommended)
https://github.com/Devsh-Graphics-Programming/Nabla
Nabla’s Tests and Examples source code
https://github.com/Devsh-Graphics-Programming/Nabla-Examples-and-Tests

Cross platform toy render engine supporting physically based rendering and software ray tracing.
https://github.com/tippesi/Atlas-Engine

AnKi 3D Engine - Vulkan backend, modern renderer, scripting, physics and more
https://github.com/godlikepanos/anki-3d-engine

DiligentFX is the Diligent Engine’s high-level rendering framework.
https://github.com/DiligentGraphics/DiligentFX
A modern cross-platform low-level graphics API
https://github.com/DiligentGraphics/DiligentCore

This program definitely works on a Nvidia RTX 2080 Super GPU, and a Mali G710 GPU. Other Vulkan implementations may or may not support all the required features.
https://github.com/DethRaid/AndroidRenderer

T&F - Software Real-Time Rendering

SwiftShader is a high-performance CPU-based implementation of the OpenGL ES and Direct3D 9 graphics APIs. Its goal is to provide hardware independence for advanced 3D graphics.
https://github.com/google/swiftshader

A highly optimized CPU software rasterizer, which implements most of the common D3D pipeline stages.
https://github.com/behindthepixels/EDXRaster

Cross platform toy render engine supporting physically based rendering and software ray tracing
https://github.com/tippesi/Atlas-Engine

Tiny C++ Software Renderer / Rasterizer
https://github.com/keith2018/SoftGLRender

T&F - Offline Rendering

Global Illumination - Enlighten
https://www.siliconstudio.co.jp/middleware/enlighten/en/

Bella is a next-generation physically-based render engine. Designed from a clean sheet, it aims to allow creation of the most beautiful rendered images yet seen.
https://bellarender.com

Fluid simulation engine for computer graphics applications
https://github.com/doyubkim/fluid-engine-dev

A research-oriented renderer
https://github.com/lightmetrica/lightmetrica-v3

LuxCoreRender is a physically correct, unbiased rendering engine. It is built on physically based equations that model the transportation of light.
https://github.com/LuxCoreRender/LuxCore

T&F - Ray Tracing Render

The GPU Ray Tracing (GPURT) library is a static library (source deliverable) that provides ray tracing related functionalities for AMD drivers supporting DXR (DirectX 12®) and the Vulkan® RT API
https://github.com/GPUOpen-Drivers/gpurt

Intel(R) Open Image Denoise library: High-Performance Denoising Library for Ray Tracing
https://github.com/OpenImageDenoise/oidn

NanoRT, single header only modern ray tracing kernel.
https://github.com/lighttransport/nanort

An example path tracer that runs on multiple ray tracing backends (Embree/DXR/OptiX/Vulkan/Metal/OSPRay)
https://github.com/Twinklebear/ChameleonRT

Ray tracing engine, from scratch, in C++. (Recommended)
https://github.com/mustafaquraish/rt

Physically-based CPU and GPU ray-tracer.
https://github.com/sergeyreznik/etx-tracer

Gears-Vk, powerful low-level C++20 rendering framework for Vulkan 1.2, including Real-Time Ray Tracing (RTX) support, built atop Auto-Vk.
https://github.com/cg-tuwien/Gears-Vk

Experiments with software ray tracing. (Recommended)
https://github.com/codeonwort/Software-Raytracing

An Open, Scalable, Portable, Ray Tracing Based Rendering Engine for High-Fidelity Visualization (Recommended)
https://github.com/ospray/ospray

T&F - Path Tracing Render

A GLSL Path Tracer: A physically based path tracer that runs in a GLSL fragment shader. (Recommended)
https://github.com/knightcrawler25/GLSL-PathTracer

MagicaVoxel. A free lightweight 8-bit voxel art editor and GPU based interactive path tracing renderer.
https://ephtracy.github.io/
Shaders for MagicaVoxel to simplify common and repetitive tasks.
https://github.com/lachlanmcdonald/magicavoxel-shaders
Generates isometric pixel art from MagicaVoxel .vox files
https://github.com/tommyettinger/IsoVoxel

C-Ray is a small, simple path tracer written in C.
https://github.com/VKoskiv/c-ray

Real-time unidirectional GPU path tracer using the cross-vendor Vulkan ray-tracing extensions.
https://github.com/diharaw/Helios

A GLSL Path Tracer
https://github.com/knightcrawler25/GLSL-PathTracer

AMD Radeon™ ProRender is a powerful physically-based path traced rendering engine that enables creative professionals to produce stunningly photorealistic images.
https://github.com/GPUOpen-LibrariesAndSDKs/RadeonProRenderSDK

Hydra-enabled GPU path tracer that supports MaterialX and MDL
https://github.com/pablode/gatling

T&F - OpenGL

OpenGL Image (GLI)
https://github.com/g-truc/gli

Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on the official specs.
https://github.com/Dav1dde/glad

Modern OpenGL renderer written in C++17
https://github.com/htmlboss/OpenGL-Renderer

Low-level OpenGL 4.6 abstraction written in C++20. Fwog mitigates many of the weak points of OpenGL while providing a modern interface
https://github.com/JuanDiegoMontoya/Fwog
Best Practices for Modern OpenGL
https://juandiegomontoya.github.io/modern_opengl.html

Framework for rapid OpenGL demos prototyping (Recommended)
https://github.com/Shot511/RapidGL

T&F - DirectX

Personal hobby project to experiment with various rendering techniques.
https://github.com/simco50/D3D12_Research

XUSG, XU’s supreme graphics lib, is a handy wrapper currently for DirectX 12. It can be a good reference for designing your own DX12 wrapper APIs.
https://github.com/StarsX/XUSG

D3D12Renderer. Custom renderer and physics engine written from scratch in C++/Direct3D 12.
https://github.com/pkurth/D3D12Renderer

T&F - Vulkan

a vulkan post processing layer
https://github.com/DadSchoorse/vkBasalt

A modern and easy-to-use library for the Vulkan API
https://github.com/liblava/liblava

Project Island is an experimental, hot-reloading Vulkan renderer/proto-engine for Linux, written in C/C++.
https://github.com/tgfrerer/island

A Vulkan renderer written from scratch on stream
https://github.com/zeux/niagara

T&F - Metal

Getting started with Metal-cpp
https://developer.apple.com/metal/cpp/

C++ Metal wrapper
https://github.com/naleksiev/mtlpp

A 3D Graphics Framework built on Apple’s Metal
https://github.com/Hi-Rez/Satin

T&F - Editor & GUI

An immediate mode 3D gimzo (translation, rotation, scale for scene editing) in ~1200 LoC
https://github.com/ddiakopoulos/tinygizmo

Dear ImGui: Bloat-free Immediate Mode Graphical User interface for C++ with minimal dependencies
https://github.com/ocornut/imgui

GUI module for raylib. A simple and easy-to-use immediate-mode-gui library (Recommended)
https://github.com/raysan5/raygui

Dear PyGui: A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies
https://github.com/hoffstadt/DearPyGui

Node Editor using ImGui
https://github.com/thedmd/imgui-node-editor

A small, dependency-free node editor for dear imgui
https://github.com/Nelarius/imnodes

Node graph implementation for Dear ImGui.
https://github.com/rokups/ImNodes

ImGui Example CMake Project
https://github.com/aid95/MinimalImGui

Dear ImGui over WebSockets
https://github.com/ggerganov/imgui-ws

Minimalistic GUI library for OpenGL
https://github.com/wjakob/nanogui

Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.
https://github.com/memononen/nanovg

Graphics library to create embedded GUI with easy-to-use graphical elements, beautiful visual effects and low memory footprint. It offers anti-aliasing, opacity, and animations using only one frame buffer.
https://github.com/littlevgl/lvgl

A single-header ANSI C gui library
https://github.com/vurtun/nuklear

Cross-Platform GUI Library
https://github.com/wxWidgets/wxWidgets

Advanced 2D Plotting for Dear ImGui.
https://github.com/epezent/implot

Cross platform C++ libraries
https://github.com/copperspice/copperspice

You can use goxel to create voxel graphics (3D images formed of cubes).
https://github.com/guillaumechereau/goxel

A single-header ANSI C immediate mode cross-platform GUI library
https://github.com/Immediate-Mode-UI/Nuklear

The smallest header-only GUI library(4 KLOC) for all platforms
https://github.com/idea4good/GuiLite

Simple and Fast Graphical User Interface
https://github.com/TankOs/SFGUI

File Dialog for Dear ImGui
https://github.com/aiekick/ImGuiFileDialog

FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL® and its built-in GLUT emulation.
https://github.com/fltk/fltk

Cross Platform File Dialog for Dear-ImGui
https://github.com/gallickgunner/ImGui-Addons

ImTui: Immediate Mode Text-based User Interface C++ Library
https://github.com/ggerganov/imtui

T&F - Rendering Library with GUI

A simple and easy-to-use library to enjoy videogames programming (Recommended)
https://github.com/raysan5/raylib

A fast and minimalist 3D viewer. (Recommended)
https://github.com/f3d-app/f3d

Possumwood is a graph-based procedural authoring tool, in concept not dissimilar to popular CG packages like Houdini, Blender or Maya. It is intended to serve as a sandbox for computer graphics algorithms and libraries, providing a user-friendly and coding-free UI for libraries that would otherwise be inaccessible for an average user.
https://github.com/martin-pr/possumwood

A small, portable and extensible C++ 3D coding framework
https://github.com/floooh/oryol

T&F - RHI(Rendering Hardware Interface) Framework

SDL is Simple DirectMedia Layer.It is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D.It can be used to make animations and video games.
https://github.com/SDL-mirror/SDL

NVRHI (NVIDIA Rendering Hardware Interface) is a library that implements a common abstraction layer over multiple graphics APIs (GAPIs): Direct3D 11, Direct3D 12, and Vulkan 1.2.(Recommended)
https://github.com/NVIDIAGameWorks/nvrhi

Low Level Graphics Library (LLGL) is a thin abstraction layer for the modern graphics APIs OpenGL, Direct3D, Vulkan, and Metal
https://github.com/LukasBanana/LLGL

Lightweight and modular C++11/C++14 graphics middleware for games and data visualization.
https://github.com/mosra/magnum

The official Allegro 5 git repository. Pull requests welcome!
https://github.com/liballeg/allegro5

NRI is a low-level abstract render interface which currently supports three backends: D3D11, D3D12 and Vulkan.
https://github.com/NVIDIAGameWorks/NRI

Keyword: multi-media
SFML is a simple, fast, cross-platform and object-oriented multimedia API. It provides access to windowing, graphics, audio and network. It is written in C++, and has bindings for various languages such as C, .Net, Ruby, Python.
https://github.com/SFML/SFML

T&F - Rapid Prototyping

Cross-platform, graphics API agnostic, “Bring Your Own Engine/Framework” style rendering library.
https://github.com/bkaradzic/bgfx
A starter project for graphics applications using SDL, bgfx and Dear ImGui. The idea behind this repo is for it to be used as a minimal starting point for development of a game, demo or prototype.
https://github.com/pr0g/sdl-bgfx-imgui-starter

A simple framework for rapid prototyping on Vulkan or Direct3D 12
https://github.com/GPUOpen-LibrariesAndSDKs/Cauldron

NeverEngine, Rendering Engine to do quick graphics prototyping.
https://gitlab.com/Makogan/neverengine

Graphics prototyping framework
https://github.com/kayru/librush

two is an all-purpose c++ app prototyping library, focused towards live graphical apps and games.
https://github.com/hugoam/two

Robust real-time rendering engine on DirectX 11 with many advanced graphics features for quick prototyping
https://github.com/steaklive/EveryRay-Rendering-Engine

dw-sample-framework. A simple C++ framework for implementing graphics technique samples using OpenGL or Vulkan.
https://github.com/diharaw/dw-sample-framework

bigg (bgfx + imgui + glfw + glm) + utils, is a prototype-oriented middleware library for 3D interactive applications.
https://github.com/yuki-koyama/bigger

T&F - SPIR-V

The SPIR-V Tools project provides an API and commands for processing SPIR-V modules.
https://github.com/KhronosGroup/SPIRV-Tools

T&F - Shader Compiler (Cross-Compiling)

A collection of tools, libraries, and tests for Vulkan shader compilation.
https://github.com/google/shaderc

This repo hosts the source for the DirectX Shader Compiler which is based on LLVM/Clang.(Recommended)
https://github.com/microsoft/DirectXShaderCompiler

SPIRV-Cross is a practical tool and library for performing reflection on SPIR-V and disassembling SPIR-V back to high level languages.(Recommended)
https://github.com/KhronosGroup/SPIRV-Cross

ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages.
https://github.com/microsoft/ShaderConductor

GLSL cross-compiler tool (GLSL->HLSL, MSL, GLES2, GLES3, GLSLv3), using SPIRV-cross and glslang
https://github.com/septag/glslcc

HLSL Decompiler forked from 3Dmigoto
https://github.com/etnlGD/HLSLDecompiler

Making Rust a first-class language and ecosystem for GPU code
https://github.com/EmbarkStudios/rust-gpu/

Modern C++ swizzling header-only library
https://github.com/gwiazdorrr/CxxSwizzle

Library used to write shaders from C++, and export them in either GLSL, HLSL or SPIR-V.
https://github.com/DragonJoker/ShaderWriter

T&F - Visual Effects

Libraries for visual effects software development
https://github.com/ImageEngine/cortex

T&F - Pipeline

Gaffer is a node-based application for lookdev, lighting and automation
https://github.com/GafferHQ/gaffer

T&F - HTML5 & WebGL

Babylon.js is a powerful, beautiful, simple, and open game and rendering engine packed into a friendly JavaScript framework.
https://github.com/BabylonJS/Babylon.js
Explore and Troubleshoot your WebGL scenes (All engines and Vanilla script support) with ease.
https://github.com/BabylonJS/Spector.js

A library to capture canvas-based animations at a fixed framerate
https://github.com/spite/ccapture.js

Looperepool, a tool to create looperinos
https://github.com/spite/looper

Google Chrome DevTools extension to live edit WebGL GLSL shaders
https://github.com/spite/ShaderEditorExtension

An image effects library for JavaScript using WebGL
https://github.com/evanw/glfx.js

基于HTML5原生WebGL实现的轻量级Google Earth三维地图引擎
https://github.com/iSpring/WebGlobe

Real-time path tracing with three.js
https://github.com/hoverinc/ray-tracing-renderer

Real-time PathTracing with global illumination and progressive rendering, all on top of the Three.js WebGL framework.
https://github.com/erichlof/THREE.js-PathTracing-Renderer

🇨🇭 A React renderer for Three.js
https://github.com/pmndrs/react-three-fiber
useful helpers for react-three-fiber
https://github.com/pmndrs/drei

Minimal WebGL Library
https://github.com/oframe/ogl

BeautifulMakie, Makie is a high-performance, extendable, and multi-platform plotting ecosystem for the Julia programming language. For more examples go to the different menu sections. And the official documentation.
https://github.com/lazarusA/BeautifulMakie

A post processing library that provides the means to implement image filter effects for three.js.
https://github.com/pmndrs/postprocessing

SSGI, Motion Blur, TRAA - Effects to enhance your three.js scene’s realism (Recommended)
https://github.com/0beqz/realism-effects

VTK is an open-source software system for image processing, 3D graphics, volume rendering and visualization.
https://github.com/Kitware/vtk-js

T&F - WebGPU (WebAssembly)

Where the GPU for the Web work happens!
https://github.com/gpuweb/gpuweb

T&F - Animation

Animation Compression Library
https://github.com/nfrechette/acl

Animation engine for explanatory math videos
https://github.com/3b1b/manim

A single-file, immediate-mode sequencer widget for C++17, Dear ImGui and EnTT
https://github.com/alanjfs/sequentity

T&F - Textures & Maps

Fast ISPC Texture Compressor
https://github.com/GameTechDev/ISPCTextureCompressor

A D3D11 application for experimenting with Spherical Gaussian lightmaps
https://github.com/TheRealMJP/BakingLab

A Fast Texture Compressor for a variety of formats.
https://github.com/GammaUNC/FasTC

DirectXTex texture processing library
https://github.com/microsoft/DirectXTex

Create, manipulate, and optimize GIF images and animations
https://github.com/kohler/gifsicle

A C/C++ single-file library that minimizes the hard transition errors of disjoint edges in lightmaps.
https://github.com/ands/seamoptimizer

A C/C++ single-file library for drop-in lightmap baking. Just use your existing OpenGL renderer to bounce light!
https://github.com/ands/lightmapper

Betsy aims to be a GPU compressor for various modern GPU compression formats such as BC6H, purposedly written in GLSL so that it can be easily incorporated into OpenGL and Vulkan projects.
https://github.com/darksylinc/betsy

T&F - Volume Computation

Intel(R) Open Volume Kernel Library
https://github.com/openvkl/openvkl

T&F - Tracing & Profiling & Monitoring & Sighting

Android GPU Inspector (AGI) (Recommended)
https://developer.android.com/agi
Graphics API Debugger(Deprecated)
https://github.com/google/gapid

RenderDoc is a free MIT licensed stand-alone graphics debugger that allows quick and easy single-frame capture and detailed introspection of any application using Vulkan, D3D11, OpenGL & OpenGL ES or D3D12 across Windows 7 - 10, Linux, Android, Stadia, or Nintendo Switch™.
https://renderdoc.org/
[UE4] Let’s debug the shader with RenderDoc
https://qiita.com/EGJ-Osamu_Saito/items/17c367cee4dbc3824987

NVIDIA Nsight Graphics is a standalone developer tool with ray-tracing support that enables you to debug, profile, and export frames built with Direct3D, Vulkan, OpenGL, OpenVR, and the Oculus SDK.
https://developer.nvidia.com/nsight-graphics
https://docs.nvidia.com/nsight-graphics/index.html
Documents for Nsight Systems, also available for Nsight Graphis (Recommended)
https://docs.nvidia.com/nsight-systems/UserGuide/index.html
The Peak-Performance-Percentage Analysis Method for Optimizing Any GPU Workload
https://developer.nvidia.com/blog/the-peak-performance-analysis-method-for-optimizing-any-gpu-workload/
NVIDIA Nsight Feature Spotlight: GPU Trace
https://www.youtube.com/watch?v=g-VarJU6yJ8
Profiling GPU codes with Nsight
https://www.youtube.com/watch?v=51K5EqGqzCM

The NVIDIA® Nsight™ Perf SDK is a graphics profiling toolbox for DirectX, Vulkan, and OpenGL enabling you to collect GPU performance metrics directly from your application.
https://developer.nvidia.com/nsight-perf-sdk

NVIDIA Nsight Aftermath. D3D12 or Vulkan game’s crash reporter to generate GPU “mini-dumps” when a TDR or exception occurs
https://developer.nvidia.com/nsight-aftermath
Samples for the Nsight Aftermath SDK.
https://github.com/NVIDIA/nsight-aftermath-samples

Nsight Compute Documentation
https://docs.nvidia.com/nsight-compute/NsightCompute/index.html
Training material for Nsight developer tools
https://github.com/NVIDIA/nsight-training

Radeon™ GPU Analyzer, an offline compiler and performance analysis tool for DirectX®, Vulkan®, SPIR-V™, OpenGL®, and OpenCL™.
https://gpuopen.com/rga/
https://gpuopen.com/rgp/
AMD RDNA™ 2 – Radeon™ GPU Profiler 1.10
https://www.youtube.com/watch?v=EIlJxFBbA2k
How-To Use Radeon™ GPU Profiler
https://www.youtube.com/watch?v=eE9Oomlm8V0

Intel® GPA (Graphics Performance Analyzers)
https://software.intel.com/content/www/us/en/develop/tools/graphics-performance-analyzers.html

Intel® VTune™ Profiler. Find and Fix Performance Bottlenecks Quickly and Realize All the Value of Your Hardware
https://www.intel.com/content/www/us/en/developer/tools/oneapi/vtune-profiler.html

GPU Trace Visualizer
https://github.com/mikesart/gpuvis

Tools for tracing OpenGL, Direct3D, and other graphics APIs.
https://github.com/apitrace/apitrace

PIX on Windows, Performance tuning and debugging for DirectX 12 games on Windows
https://devblogs.microsoft.com/pix/winpixeventruntime/
Tutorial: Using PIX to diagnose spikes in CPU frame time
https://developer.microsoft.com/en-us/games/articles/2024/02/tutorial-using-pix-to-diagnose-spikes-in-cpu-frame-time/

A simple GPU shader memory operation performance test tool. Current implementation is DirectX 11.0 based.
https://github.com/sebbbi/perftest

Enoki: structured vectorization and differentiation on modern processor architectures.
https://github.com/mitsuba-renderer/enoki

PresentMon is a tool to capture and analyze ETW events related to swap chain presentation on Windows. It can be used to trace key performance metrics for graphics applications (e.g., CPU and Display frame durations and latencies) and works across different graphics APIs, different hardware configurations, and for both desktop and UWP applications.
https://github.com/GameTechDev/PresentMon

C++ frame profiler, a real time, nanosecond resolution, remote telemetry, hybrid frame and sampling profiler for games and other applications.
https://github.com/wolfpld/tracy

microprofile is an embeddable profiler
https://github.com/jonasmr/microprofile

C++ Profiler For Games
https://github.com/bombomby/optick

CPU scope based profiling library and browser based profile inspector with ImGui visualization
https://github.com/milostosic/rprof

Orbit & Dive: C/C++ Performance Profiler (both for CPU and GPU) (Recommended)
https://github.com/google/orbit

T&F - Optimization Tools

MetricsGui
https://github.com/GameTechDev/MetricsGui

The Disney BRDF Explorer is an application that allows the development and analysis of bidirectional reflectance distribution functions (BRDFs)
https://github.com/wdas/brdf

Pixyz provides the best-in-class Tessellator, creating prefect mesh from any CAD/3D data fast and efficiently.
https://www.pixyz-software.com/

T&F - Debugging

C++ library for debugging HLSL & GLSL shaders
https://github.com/dfranx/ShaderDebugger

The RAD Debugger is a native, user-mode, multi-process, graphical debugger. (Recommended)
https://github.com/EpicGames/raddebugger

T&F - Memory Tracing

Memory Tracing Software
https://github.com/deplinenoise/ig-memtrace
https://wessamfathi.com/2017/11/04/integrating-insomniac-games-memtrace-tool-into-unreal-engine-4-part-1/
Integrating Insomniac Games MemTrace Tool into Unreal Engine 4 – Part 2
https://wessamfathi.com/2017/11/23/integrating-insomniac-games-memtrace-tool-into-unreal-engine-4-part-2/

T&F - Input

Cross-platform C++ input library supporting gamepads, keyboard, mouse, touch
https://github.com/jkuhlmann/gainput

T&F - Assets Manager

glTF – Runtime 3D Asset Delivery
https://github.com/KhronosGroup/glTF

Header only C++11 tiny glTF 2.0 library
https://github.com/syoyo/tinygltf

Single-file glTF 2.0 parser written in C99
https://github.com/jkuhlmann/cgltf

Tiny but powerful single file wavefront obj loader
https://github.com/syoyo/tinyobjloader

stb single-file public domain libraries for C/C++
https://github.com/nothings/stb

A C++14/C++17 header-only library for simple, efficient, and robust serialization/deserialization of glTF 2.0
https://github.com/jessey-git/fx-gltf

A simple demo to show off the capabilities of the Cauldron framework (Recommended)
https://github.com/GPUOpen-LibrariesAndSDKs/glTFSample

Microsoft glTF SDK - A C++ Deserializer/Serializer for glTF
https://github.com/microsoft/glTF-SDK

Rendering glTF scenes with ray tracer and raster (Vulkan)
https://github.com/nvpro-samples/vk_shaded_gltfscene

A C++ OBJ Model Loader that will parse .obj & .mtl Files into Indices, Vertices, Materials, and Mesh Structures.
https://github.com/Bly7/OBJ-Loader

T&F - Computer Vision

opencv4nodejs allows you to use the native OpenCV library in nodejs.
https://github.com/justadudewhohacks/opencv4nodejs

FaceMeshFaceGeometry for FaceMesh
https://github.com/spite/FaceMeshFaceGeometry

Research code for CVPR 2021 paper “End-to-End Human Pose and Mesh Reconstruction with Transformers”. MEsh TRansfOrmer is a simple yet effective transformer-based method for human pose and mesh reconsruction from an input image.
https://github.com/microsoft/MeshTransformer

“Marker-less Augmented Reality” with OpenCV and OpenGL. (Recommended)
https://github.com/ahmetozlu/augmented_reality

T&F - Painting

Semantic Image Synthesis with SPADE (GauGAN)
https://github.com/NVlabs/SPADE

T&F - Video & Image Processing

Anime4K is a state-of-the-art*, open-source, high-quality real-time anime upscaling algorithm that can be implemented in any programming language, anywhere.
https://github.com/bloc97/Anime4K

An open source iOS framework for GPU-based image and video processing
https://github.com/BradLarson/GPUImage

Vulkan video samples
https://github.com/nvpro-samples/vk_video_samples

Video, Image and GIF upscale/enlarge(Super-Resolution) and Video frame interpolation. Achieved with Waifu2x, Real-ESRGAN, Real-CUGAN, SRMD, RealSR, Anime4K, RIFE, CAIN, DAIN, and ACNet.
https://github.com/AaronFeng753/Waifu2x-Extension-GUI

T&F - Noise Algorithms

FastNoise is an open source noise generation library with a large collection of different noise algorithms.
https://github.com/Auburns/FastNoise

FastNoise2. Modular node graph based noise generation library using SIMD, C++17 and templates
https://github.com/Auburn/FastNoise2

A Perlin’s Simplex Noise C++ Implementation (1D, 2D, 3D)
https://github.com/SRombauts/SimplexNoise

T&F - GameDev

A collection of open source c/c++ libraries for gamedev
https://github.com/raizam/gamedev_libraries

The Best in Game Development Technology! Here at RAD, we make video game development tools.
http://www.radgametools.com/

PixelOver is a software to transform your arts to pixel arts as best as possible, animate in realtime with pixel perfect transformations, bones and key animation system.
https://store.steampowered.com/app/1762550/PixelOver/

Animated sprite editor & pixel art tool (Windows, macOS, Linux)
https://github.com/aseprite/aseprite

SHMUP Creator allows you to make the Shoot ’em up of your dreams! As fun as a game, it is very simple but powerful enough to make professional Shmups.
https://store.steampowered.com/app/1289520/SHMUP_Creator/

Bitty Engine is an itty bitty game engine, with built-in editors, programmable in Lua.
https://store.steampowered.com/app/1386180/Bitty_Engine/

GameGuru MAX is a 3D game-maker that makes the creation of your game simple, quick and easy – no coding required! With all the tools and assets you need in one place you can start making your dream game in minutes!
https://store.steampowered.com/app/1247290/GameGuru_MAX/

ModLab. ModLab is a free tool that can generate and fine tune normal maps in a realtime rendering environment.
https://store.steampowered.com/app/768970/ModLab/

T&F - Subset (font, glyph)

ImGuiFontStudio is a tool for Subset font and extract glyph names for use embbeded or not in a software, especially for use with ImGui for embedded way.
https://github.com/aiekick/ImGuiFontStudio

MSDF font atlas generator
https://github.com/Chlumsky/msdf-atlas-gen

T&F - GPU Font

Single-header minimalistic pragmatic GPU font rendering library.
https://github.com/hypernewbie/VEFontCache

T&F - Text Shaping

HarfBuzz text shaping engine
https://github.com/harfbuzz/harfbuzz

T&F - Super Resolution

AMD FidelityFX Super Resolution (FSR) is an open source, high-quality solution for producing high resolution frames from lower resolution inputs.
https://github.com/GPUOpen-Effects/FidelityFX-FSR

T&F - Space Partitioning Algorithm

A C implementation for creating 2D voronoi diagrams
https://github.com/JCash/voronoi

OpenFrameworks wrapper of Voro++ that do 3D Voronoi Tessellation
https://github.com/patriciogonzalezvivo/ofxVoro

T&F - Vector Graphics (2D Graphics, Motion Graphics)

An efficient vector-graphics renderer
https://github.com/google/forma

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.
https://github.com/google/skia

Tooll 3 is an open source software to create realtime motion graphics.
https://github.com/still-scene/t3

Demo & Examples

Examples - Comprehensive Repository

UPenn CIS 565 Fall 2019 - GPU Programming
https://github.com/CIS565-Fall-2019

GPUOpen Effects
https://github.com/GPUOpen-Effects

Computer Graphics at the Philadelphia University.
https://github.com/penn-graphics-research

Examples - Software Rendering

3D Software Render Engine in 700 Lines !!
https://github.com/skywind3000/mini3d

A brief computer graphics / rendering course
https://github.com/ssloy/tinyrenderer
Tiny renderer or how OpenGL works: software rendering in 500 lines of code
https://github.com/ssloy/tinyrenderer/wiki

Simple Software Render
https://github.com/zxx43/Software-Render

Examples - Direct3D

Experimental demoscene project. C99 and Direct3D 12. Fully standalone, zero dependencies (no Visual Studio, no Windows SDK, no CRT, no #include usage). C and HLSL compilers included.
https://github.com/michal-z/eneida

This repo contains the DirectX Graphics samples that demonstrate how to build graphics intensive applications on Windows.
https://github.com/microsoft/DirectX-Graphics-Samples

Personal hobby project to experiment with various rendering techniques.
https://github.com/simco50/D3D12_Research

Examples - OpenGL

OpenGL 3 and 4 with GLSL
https://github.com/McNopper/OpenGL

A Small OpenGL Based Renderer(Recommended)
https://github.com/zxx43/Tiny3D

Decent looking grass in opengl that still maintaines decent performance.
https://github.com/SomePineaple/GLGrass

可编程渲染管线实现,帮助初学者学习渲染 (Recommended)
https://github.com/skywind3000/RenderHelp

OpenGL support library so you can just dive in and write OpenGL code
https://github.com/TheCherno/OpenGL

Collection of examples for OpenGL: Perlin noise, ambient occlusion, shadow mapping, water reflection and others (Recommended)
https://github.com/damdoy/opengl_examples

A ready to use cmake skeleton using GLFW, Glew and glm. include WebAssembly example
https://github.com/ArthurSonzogni/OpenGL_CMake_Skeleton

OpenGL Demo: Simulating Ocean Waves with FFT
https://github.com/achalpandeyy/OceanFFT

Examples - Vulkan

Examples and demos for the new Vulkan API.(Recommended)
https://github.com/SaschaWillems/Vulkan

Deferred Vulkan rendering playground using Crytek’s Sponza scene.(Recommended)
https://github.com/SaschaWillems/VulkanSponza

A Vulkan sample that demonstrates an integration of Ray Traced Shadows, Ambient Occlusion, Reflections and Global Illumination into a Deferred Rendering Pipeline.(Recommended)
https://github.com/diharaw/HybridRendering

Makma is a deferred Vulkan renderer written in C++.(Recommended)
https://github.com/janhsimon/makma

Chewman is a 3D pacman-style game written in C++ using Vulkan SDK and SDL.(Recommended)
https://github.com/RMDarth/Chewman-Vulkan

Yet Another Vulkan Engine
https://github.com/gan74/Yave

One stop solution for all Vulkan samples
https://github.com/KhronosGroup/Vulkan-Samples

Vulkan Samples Tutorials
https://github.com/BobLChen/VulkanDemos

Minimal Example of Using Vulkan for Compute Operations. Only ~400LOC.
https://github.com/Erkaman/vulkan_minimal_compute

Real-Time Hybrid Hair Rendering using Vulkan
https://github.com/CaffeineViking/vkhr

A Scene Viewer Rendered By Vulkan
https://github.com/enjiushi/VulkanLearn

The Stardust sample application uses the Vulkan graphics API to efficiently render a cloud of animated particles.
https://github.com/GameTechDev/stardust_vulkan

Vulkan app demonstrating glTF 2.0 Morph Targets (Blend shapes)
https://github.com/sjfricke/Vulkan-glTF-Morph-Target

Examples - Metal

A simple 3D engine written in Swift + Metal, for educational purposes.
https://github.com/markdaws/Toy3D

Examples - WebGL, WebGPU, WebAssembly

The WebGPU Samples are a set of samples and demos demonstrating the use of the WebGPU API.
https://github.com/webgpu/webgpu-samples

WebGL-GPU-Particles. 1 million+ particles being moved around on the GPU via WebGL.
https://github.com/soulwire/WebGL-GPU-Particles

Simulating depth of field with particles on a shader
https://github.com/Domenicobrz/Blurry

Play with fluids in your browser (works even on mobile)
https://github.com/PavelDoGreat/WebGL-Fluid-Simulation

Fluid Particles
https://github.com/dli/fluid

Template to get started with WebGPU C++ -> Wasm projects (Recommended)
https://github.com/Twinklebear/webgpu-cpp-wasm

A ready to use cmake skeleton using GLFW, Glew and glm. include WebAssembly example
https://github.com/ArthurSonzogni/OpenGL_CMake_Skeleton

Examples - Ray Tracing

Simple Vulkan raytracing tutorials (Recommended)
https://github.com/iOrange/rtxON

Simple raytracer using DirectX Raytracing (DXR).
https://github.com/michal-z/SimpleRaytracer

A (very) simple path tracer implemented using DirectX Ray Tracing (DXR)
https://github.com/TheRealMJP/DXRPathTracer

A simple monte carlo path tracer implemented in C++
https://github.com/amanshenoy/ray-tracer

Realtime GPU Path Tracing engine based on OpenCL and OpenGL. Pure GPU software implementation without hardware acceleration (no RTX etc.) (Recommended)
https://github.com/AlexanderVeselov/RayTracing

Examples - Path Tracing

This project is to create a CUDA accelerated Deep learning approach to denoise renders from a path tracer
https://github.com/Black-Phoenix/Ai-Path-Tracer-Denoiser

GPU Pathtracer from scratch in C++/CUDA (Recommended)
https://github.com/jan-van-bergen/GPU-Pathtracer

Examples - Point Clouds

Rendering Point Clouds with Compute Shaders
https://github.com/m-schuetz/compute_rasterizer

Examples - PBR

Image Based Lighting using DirectX 12.
https://github.com/michal-z/ImageBasedPBR

Examples - Lighting

Real-Time Rendering with Lighting Grid Hierarchy I3D 2019 Demo
https://github.com/DQLin/LGHDemo

Examples - Shadow

Adaptive Screen Space Ambient Occlusion
https://github.com/GameTechDev/ASSAO

Examples - Universe

Real-time 3D visualization of space.
https://github.com/CelestiaProject/Celestia

An n-body type simulation using GPU acceleration to simulate galaxies, galaxy collisions and expanding universes.
https://github.com/angeluriot/Galaxy_simulation

Examples - Camera

Bokeh Depth Of Field: A Physical Camera Effect created due to Focal Length, Aperture size, shape
https://github.com/Erfan-Ahmadi/BokehDepthOfField

Examples - Procedural Scene

An OpenGL 4 and C++ program which renders a procedural scene.
https://github.com/fede-vaccaro/TerrainEngine-OpenGL

Open source “Minecraft-like” game with multiplayer support.
https://github.com/Hopson97/open-builder
Lets Code A Voxel Game in C++ and OpenGL - World Generation I
https://www.youtube.com/watch?v=HPao-rNrH5Q

Examples - Gameplay Development

Battle City (NES) — 2-player (over TCP/IP) remake in C. Co-op version of the classic NES game, written in C using SDL.
https://github.com/taravkov/tank

A cross-platform, top-down 2D space shooter written in C using only system libraries.
https://github.com/tsherif/space-shooter.c

Simple Pacman clone written in C99.
https://github.com/floooh/pacman.c

Examples - Fur & Hair

DirectX 12 and Vulkan libraries that provide convenient access to realistically rendered and simulated hair and fur.
https://github.com/GPUOpen-Effects

Examples - OpenCV

OpenCV integration with UE 4.19. In progress
https://github.com/Batname/UE4OpenCV
https://forums.unrealengine.com/community/work-in-progress/1467754-plugin-opencv-plugin-for-ue-4-19

Examples - Abient Occlusion

Compute AO per vertex using Embree.
https://github.com/nezix/AOEmbree

Examples - Tone Mapping & Gamut Mapping

FidelityFX LPM
https://github.com/GPUOpen-Effects/FidelityFX-LPM

Examples - Maze

Generate mazes of different shapes and arbitrary sizes using graph theory
https://github.com/razimantv/mazegenerator

Examples - Helper

shared source code and resources needed for the samples to run
https://github.com/nvpro-samples/shared_sources

Books

Books - Bundle

PAY $8 OR MORE
https://www.humblebundle.com/books/programming-packt-books

Books - Game Engine

Foundations of Game Engine Development
https://foundationsofgameenginedev.com/

Metal by Tutorials
https://store.raywenderlich.com/products/metal-by-tutorials

Books - Rendering

pbrt, Version 3
https://github.com/mmp/pbrt-v3

A simple parser for the PBRT file format
https://github.com/ingowald/pbrt-parser

minipbrt, A simple and fast parser for PBRT v3 files.
https://github.com/vilya/minipbrt

GPU Zen 2: Advanced Rendering Techniques
https://www.amazon.com/GPU-Zen-Advanced-Rendering-Techniques/dp/179758314X
Example programs and source code for GPU Zen 2
https://github.com/wolfgangfengel/GPUZen2

Foundations of Game Engine Development, Volume 2: Rendering (July 26, 2019)
https://www.amazon.com/Foundations-Game-Engine-Development-Rendering/dp/0985811757

Structuring 3D Geometry based on Symmetry and Instancing Information
https://tel.archives-ouvertes.fr/tel-00379200/file/Martinet_07_PhD.pdf

The Ray Tracer Challenge: A Test-Driven Guide to Your First 3D Renderer (Pragmatic Bookshelf) 1st Edition
https://www.amazon.com/Ray-Tracer-Challenge-Test-Driven-Renderer/dp/1680502719/

Books - Shadow

Real-Time Shadows
https://www.amazon.com/Real-Time-Shadows-Elmar-Eisemann/dp/1568814380

Books - WebAssembly

Hands-On Game Development with WebAssembly
https://www.packtpub.com/game-development/hands-game-development-webassembly

Books - Image Processing

Digital Image Processing (4Th Edition)
https://www.amazon.com/Digital-Image-Processing-Rafael-Gonzalez/dp/9353062985

Books - Computer Vision

Computer Vision: A Modern Approach (2nd Edition)
https://www.amazon.com/Computer-Vision-Modern-Approach-2nd/dp/013608592X

Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library (1st Edition)
https://www.amazon.com/Learning-OpenCV-Computer-Vision-Library/dp/1491937998

Shader (HLSL / GLSL) Editor

Visual Studio Plugin

A Visual Studio extension that provides enhanced support for editing High Level Shading Language (HLSL) files.
https://github.com/tgjones/HlslTools

Shader Designer
https://docs.microsoft.com/en-us/visualstudio/designers/shader-designer

Desktop IDE for HLSL and GLSL

Lightweight, cross-platform & full-featured desktop IDE for HLSL and GLSL shaders
https://github.com/dfranx/SHADERed

Game Source

RTS Game Source

command and conquer remastered Collection
https://github.com/electronicarts/CnC_Remastered_Collection


人世漫长得转瞬即逝,有人见尘埃,有人见星辰。---《月亮与六便士》