190 Resources
C/C++ graphics Libraries
Tiny C++ Software Renderer/Rasterizer
SoftGLRender Tiny C++ Software Renderer/Rasterizer, it implements the main GPU rendering pipeline, 3D models (GLTF) are loaded by assimp, and using GL
CSC404: Computer Graphics [CG] & CSL402: Computer Graphics Lab [CG Lab] Semester IV
COMPUTER-GRAPHICS-AND-COMPUTER-GRAPHICS-LAB CSC404: CG & CSL402: CG LAB [SEMESTER IV] Syllabus CG - Reference Books THE WALL MEGA SATISH - AUTHOR CG C
OpenGL Template Engine - a C++ OpenGL graphics engine which aimed to be a simple startup template for 3D OpenGL projects.
OpenGL Template Engine is a C++ OpenGL graphics engine which aimed to be a simple startup template for 3D OpenGL projects. This is the template I personally use for my own projects and provides me with the general OpenGL 3D render setup with model import and UI.
Cross-platform sandbox RPG game written in C++ with OpenGL and SDL2.
Forradia test Forradia is a cross-platform sandbox survival/RPG game written in C++ with OpenGL and SDL2. The engine loads 3D models in Wavefront-form
Graphics engine written in C++ using DirectX12/DXR
Adria-DX12 Graphics engine written in C++ using DirectX12/DXR. For successful build you will need textures that you can find here. Features Entity-Com
Library with useful output stream tools like: color and style manipulators, progress bars and terminal graphics.
Library with useful output stream tools like: color and style manipulators, progress bars and terminal graphics Table of contents Introduction Documen
Rewritten version of the MiniLibX graphics API used by 42, using glfw & glad. Running on OpenGL.
Written by W2.Wizard for the 42 Network A recreation of the MiniLibX library used by 42, using GLFW & glad, running on OpenGL. The goal of MLX42 is to
Graphics engine written in C++ using DirectX11
Adria-DX11 Graphics engine written in C++/DirectX11. For successful build you will need textures that you can find here. Features Entity-Component Sys
Building game development ecosystem for @ziglang!
If you are new to low-level graphics programming or you would like to learn about some zig-gamedev libraries I recommend starting with intro applicati
A CUDA-accelerated cloth simulation engine based on Extended Position Based Dynamics (XPBD).
Velvet Velvet is a CUDA-accelerated cloth simulation engine based on Extended Position Based Dynamics (XPBD). Why another cloth simulator? There are a
A scratch built kernel original planed to only render a Utah-teapot
teapot-OS (sine wave animation) (first 3d renderer, with mouse controll) Current progress Bootloader enter 32 bit protected mode and run c code Switch
Simple library for oscilloscope vector graphics on ESP32
VectorGFX Simple library for oscilloscope vector graphics on the ESP32 Background VectorGFX is inspired by (and heavily based on) the V.st project by
Vire is a C++ voxel rendering engine. It is written in C++14 and uses OpenGL for graphics.
Vire Vire is a C++ voxel rendering engine. It is written in C++14 and uses OpenGL for graphics. Downloads If you'd just like to just download and try,
A Vulkan game engine with a focus on data oriented design
The Fling Engine aims to be a cross platform Vulkan game engine that will experiment with the following: Low-level engine systems such as render API a
Simple console tool to get all the information from DXGI and Direct3D 12 on current system
D3d12info Simple console tool to get all the information from DXGI and Direct3D 12 (D3D12) on current system. Built and tested on Windows 10 64-bit us
This repo contains the DirectX Graphics samples that demonstrate how to build graphics intensive applications on Windows.
DirectX-Graphics-Samples This repo contains the DirectX 12 Graphics samples that demonstrate how to build graphics intensive applications for Windows
Playground for DirectX 11 / 12 simple graphics demo examples ...
graphicsdemoskeleton Playground for DirectX 11 / 12 simple graphics demo examples ... If anyone from Microsoft reads this: C99 support is broken in Di
Lightweight, cross-platform & full-featured shader IDE
SHADERed is a lightweight tool for writing and debugging shaders. It is easy to use, open source, cross-platform (runs on Windows, Linux & Web).
🎮 3D Game Shaders For Beginners
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.
ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages
ShaderConductor ShaderConductor is a tool designed for cross-compiling HLSL to other shading languages. Features Converts HLSL to readable, usable and
Simple printf functionality for GLSL.
Simple printf functionality for GLSL. This library is a simple proof of concept of using printf directly from a shader. The main point of being able
nicegraf-shaderc is a command-line tool that transforms HLSL code into shaders for various graphics APIs.
User Manual Table of Contents Introduction Project Status Obtaining the Source Code and Building Running Defining Techniques Generated Header File Pip
GraphicsFuzz provides tools for automatically finding and simplifying bugs in graphics drivers, specifically graphics shader compilers.
GraphicsFuzz GraphicsFuzz is a set of tools for testing shader compilers GraphicsFuzz provides tools for automatically finding and simplifying bugs in
Skia-based C++ UI framework
UI framework that uses Skia as a low-level drawing toolkit. It uses the newest features of the C++ Standard library (currently targetting C++17).
DigitalVox4 - Metal Graphics Engine
DigitalVox is the name of a series. Although each version is based on a component system, the specific implementation is very different. Therefore, different code repositories are used for management.
Im3d is a small, self-contained library for immediate mode rendering of basic primitives
Im3d is a small, self-contained library for immediate mode rendering of basic primitives (points, lines, triangles), plus an immediate mode UI which provides 3d manipulation 'gizmos' and other tools. It is platform and graphics API agnostic and designed to be compatible with VR.
A pytorch implementation of instant-ngp, as described in Instant Neural Graphics Primitives with a Multiresolution Hash Encoding.
torch-ngp A pytorch implementation of instant-ngp, as described in Instant Neural Graphics Primitives with a Multiresolution Hash Encoding. Note: This
An immediate-mode, renderer agnostic, lightweight debug drawing API for C++
Debug Draw An immediate-mode, renderer agnostic, lightweight debug drawing API for C++. License This software is in the public domain. Where that dedi
Single-header single-function C/C++ immediate-mode camera for your graphics demos
Single-header single-function C/C++ immediate-mode camera for your graphics demos
F3D - Fast and minimalist 3D viewer
F3D - Fast and minimalist 3D viewer By Michael Migliore and Mathieu Westphal. F3D (pronounced /fɛd/) is a VTK-based 3D viewer following the KISS princ
Hyperion Engine is a 3D game engine written in C++
Hyperion Engine About Hyperion Engine is a 3D game engine written in C++. We aim to make Hyperion be easy to understand and use, while still enabling
An awesome videogame / graphic motor created in OpenGL
MarioRPG-OpenGL An awesome videogame / graphic motor created in OpenGL ! Table of Contents About The Project Built With Getting Started Prerequisites
A fast, practical GPU rasterizer for fonts and vector graphics
Pathfinder 3 Pathfinder 3 is a fast, practical, GPU-based rasterizer for fonts and vector graphics using OpenGL 3.0+, OpenGL ES 3.0+, WebGL 2, and Met
Converts common image formats (PNG, JPG, etc.) to GPU-native compressed (BCn, ETC, ASTC) in KTX containers.
Converts common image formats (PNG, JPG, etc.) to GPU-native compressed (BCn, ETC, ASTC) in KTX containers.
BRDF LUT generation for PBR Pipelines
BRDF Generator This is a simple program that generates Smith GGX BRDF lookup tables for the split sum approximation of the UE4-based PBR pipeline. The
An implementation of physically based shading & image based lighting in D3D11, D3D12, Vulkan, and OpenGL 4.
Physically Based Rendering (c) 2017 - 2018 Michał Siejak (@Nadrin) An implementation of physically based shading model & image based lighting in vario
Small stack-based DSL for procedurally generated 1-bit graphics
Bitlang Bitlang is a tiny stack-based DSL, designed for the sole purpose of producing procedurally generated 1-bit art. It is implemented in ANSI-C, a
Fluid simulation engine for computer graphics applications
Fluid Engine Dev - Jet Jet framework is a fluid simulation engine SDK for computer graphics applications that was created by Doyub Kim as part of the
A PIC/FLIP fluid simulation based on the methods found in Robert Bridson's "Fluid Simulation for Computer Graphics"
GridFluidSim3d This program is an implementation of a PIC/FLIP liquid fluid simulation written in C++11 based on methods described in Robert Bridson's
The FLIP Fluids addon is a tool that helps you set up, run, and render high quality liquid fluid effects all within Blender, the free and open source 3D creation suite.
FLIP Fluids The FLIP Fluids addon is a tool that helps you set up, run, and render liquid simulation effects. Our custom built fluid engine is based a
A Multi-Scale Model for Simulating Liquid-Fabric Interactions
libWetCloth libWetCloth is an open source project for the physical simulation of liquid and wet cloth or yarns. It has been compiled and tested on Mac
A C++ implementation of Fast Simulation of Mass-Spring Systems
Fast Mass-Spring System Simulator A C++ implementation of Fast Simulation of Mass-Spring Systems [1], rendered with OpenGL. The dynamic inverse proced
kaun is a replacement for löve's built-in love.graphics module intended for 3D graphics
kaun kaun is a replacement for löve's built-in love.graphics module intended for 3D graphics. It is a Lua module you can require from a shared library
Yet another approach to developing a personal 3D graphics engine. Windows + Direct3D 12.
RegEngine Yet another approach to developing a personal 3D graphics engine. Windows + Direct3D 12. Work in progress... Nothing to see here. I just ren
Terrain generator with 5 visually distinct biomes, spread them in regions and smooth their borders
termProject This is the repository of my term project: a terrain generator. Abstract The larger the scenario of a game, more time a player will spend
Animated sprite editor & pixel art tool -- Fork of the last GPLv2 commit of Aseprite
LibreSprite Introduction LibreSprite is a free and open source program for creating and animating your sprites. Real-time animation previews. Onion sk
High dynamic range (HDR) image comparison tool for graphics people. With an emphasis on OpenEXR images.
tev — The EXR Viewer A high dynamic range (HDR) image comparison tool for graphics people. tev allows viewing images through various tonemapping opera
A simple program that converts images into normal maps
Advertisement If you are a Blender user, this addon I created might be interesting for you: NormalmapGenerator This is a program to generate normal-,
A collection of tools, libraries, and tests for Vulkan shader compilation.
Shaderc A collection of tools, libraries and tests for shader compilation. At the moment it includes: glslc, a command line compiler for GLSL/HLSL to
Examples, tutorials and applications for the LVGL embedded GUI library
Examples, tutorials and applications for the LVGL embedded GUI library
Blender is the free and open source 3D creation suite
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
IconVG is a compact, binary format for simple vector graphics: icons, logos, glyphs and emoji.
IconVG IconVG is a compact, binary format for simple vector graphics: icons, logos, glyphs and emoji. WARNING: THIS FORMAT IS EXPERIMENTAL AND SUBJECT
One framework for creating powerful cross-platform games.
MonoGame One framework for creating powerful cross-platform games. The spiritual successor to XNA with thousands of titles shipped across desktop, mob
VTK is an open-source software system for image processing, 3D graphics, volume rendering and visualization
Introduction VTK is an open-source software system for image processing, 3D graphics, volume rendering and visualization. VTK includes many advanced a
Window.js is an open-source Javascript runtime for desktop graphics programming.
Window.js Window.js is an open-source Javascript runtime for desktop graphics programming. It is documented at windowjs.org. Introduction Window.js pr
The DirectX Tool Kit (aka DirectXTK) is a collection of helper classes for writing DirectX 11.x code in C++
DirectX Tool Kit for DirectX 11 http://go.microsoft.com/fwlink/?LinkId=248929 Copyright (c) Microsoft Corporation. November 8, 2021 This package conta
FDF is a 42 Project to learn about 3d programming. The program takes a map as parameter and creates its 3d representation.
FDF Project Overview FDF is a 42 Project to learn about 3d programming. The program takes a map as parameter and creates its 3d representation. Render
Visualization Library is a C++ middleware for high-performance 2D and 3D graphics applications based on OpenGL 1.x-4.x supporting Windows, Linux and Mac OS X.
Visualization Library 2.2 Gallery About Visualization Library is a C++ middleware for high-performance 2D and 3D graphics applications based on the in
CMake modules for common applications related to computer graphics
cgcmake CMake modules for common applications related to computer graphics Sample Usage Maya Project |-- CMakeLists.txt |-- cgcmake |-- modules
CML - The Configurable Math Library
Configurable Math Library For CML version 1, please see https://github.com/demianmnave/CML1. License The Configurable Math Library (CML) is released u
Deno gl - WIP Low-level OpenGL (GLFW) bindings and WebGL API implementation for Deno.
deno_gl WIP Low-level OpenGL (GLFW) bindings and WebGL API implementation for Deno. Building Make dist directory if it doesn't exist. Build gl helper
Gfx - A minimalist and easy to use graphics API.
gfx gfx is a minimalist and easy to use graphics API built on top of Direct3D12/HLSL intended for rapid prototyping. It supports: Full shader reflecti
An implementation of OpenGL 3.x-ish in clean C
PortableGL "Because of the nature of Moore's law, anything that an extremely clever graphics programmer can do at one point can be replicated by a mer
A minecraft clone built in c++ opengl for the purpose of prefecting graphics programming skills.
LearnOpenGL - CLion This is a project template for OpenGL development with JetBrains CLion IDE. It was created mainly for LearnOpenGL tutorials. Inclu
Volumetric progressive photon mapping written in C++.
volppm Volumetric progressive photon mapping written in C++. WIP. Features Homogeneous medium Hero wavelength sampling for chromatic absorption/scatte
Open-source node system framework, to change your algorithmic code into useful tools to create much more complicated simulations!
Open-source node system framework, to change your algorithmic code into useful tools to create much more complicated simulations!
NVRHI (NVIDIA Rendering Hardware Interface) is a library that implements a common abstraction layer over multiple graphics APIs
NVRHI Introduction NVRHI (NVIDIA Rendering Hardware Interface) is a library that implements a common abstraction layer over multiple graphics APIs (GA
Animated sprite editor & pixel art tool (Windows, macOS, Linux)
Aseprite Introduction Aseprite is a program to create animated sprites. Its main features are: Sprites are composed of layers & frames as separated co
Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2
Filament Filament is a real-time physically based rendering engine for Android, iOS, Linux, macOS, Windows, and WebGL. It is designed to be as small a
Implementation of light baking system for ray tracing based on Activision's UberBake
Vulkan Light Bakery MSU Graphics Group Student's Diploma Project Treefonov Andrey [GitHub] [LinkedIn] EARLY STAGES OF DEVELOPMENT Project Goal The goa
Care race game built in c++ with sfml. this project is done in 3rd semester of csit for demonstration of computer graphics.
Car Race Car race is simple game which has been built by using SFML in c++ implementing concepts of Computer Graphics for project Work of 3rd semester
2021 Fall Comp2012h Final Project. A Plant-Vs-Zombie style desktop game with beautiful graphics and sound effects. Developer: thomas914, mitester and tiliuau.
Underperforming Students vs Teachers Table of Contents Underperforming Students vs Teachers Table of Contents Authors Code Conventions Workflow Class
Brute force volumetric path tracer written in C++
volpt Brute force volumetric path tracer written in C++. WIP. Features Homogeneous medium Hero wavelength sampling for chromatic absorption/scattering
Reference Implementations of P0267, the proposed 2D graphics API for ISO C++
P0267 Reference Implementation Please read the LICENSE before cloning or forking the code as there is important information there! Please see the wiki
TX Library is a tiny 2D graphics library for Win32 written in C++. This is a small sandbox for the very beginners to help them to learn basic programming principles. The documentation is currently in Russian.
TX Library (TXLib, The Dumb Artist Library) is a tiny 2D graphics library for Win32 written in C++.
Anti-Grain Evolution. 2D graphics engine for Speed and Quality in C++.
Anti-Grain Evolution This project is based on ideas found in Maxim (mcseem) Shemanarev's Anti-Grain Geometry library, but oriented towards maximizing
Matplot++: A C++ Graphics Library for Data Visualization 📊🗾
Matplot++ A C++ Graphics Library for Data Visualization Data visualization can help programmers and scientists identify trends in their data and effic
The tiny C library of 2D computer graphics.
libcg The tiny C library of 2D computer graphics. Getting Started The library's .c and .h files can be dropped into a project and compiled along with
Header only implementation of Progressive Photon Mapping: A Probabilistic Approach(PPMAPA) in C++.
ppmapa Header only implementation of Progressive Photon Mapping: A Probabilistic Approach(PPMAPA) in C++. In this reformulation of (stochastic) progre
a Vulkan real-time rendering engine (Windows and Linux).
Luz Engine A Vulkan engine that I'm developing to study and implement modern rendering techniques used by AAA games. Videos on Youtube Features How to
Efficient Differentiable Simulation of Articulated Bodies (ICML2021)
Efficient Differentiable Simulation of Articulated Bodies Yi-Ling Qiao, Junbang Liang, Vladlen Koltun, Ming C. Lin [Paper] [Video] [Slides] [Code] Set
Metal-cpp is a low-overhead C++ interface for Metal that helps developers add Metal functionality to graphics apps, games, and game engines that are written in C++.
About metal-cpp is a low overhead and header only C++ interface for Metal that helps developers add Metal functionality to graphics applications that
minimal but extensible header only implementation of photon mapping in C++
photon_mapping minimal but extensible header only implementation of photon mapping in C++. Features Direct illumination with explicit light sampling I
A low-level, cross-platform GPU library
vgpu is cross-platform low-level GPU library. Features Support for Windows, Linux, macOS. Modern rendering using Vulkan and Direct3D12. Dependencies U
hb-libgd is a graphics library for the dynamic manipulation of images.
hb-libgd Harbour bindings for libGD 2.3.3, GD is an open source code library for the dynamic creation of images by programmers. GD has builtin support
A play around of mathematical functions to draw interesting objects to the screen.
LibDragonN64 Color Graphics Test A play around of mathematical functions to draw interesting objects to the screen. Compile Script (Windows only) In V
Mandelbrot set visualization in OpenGL
Mandelbort-Set done in OpenGL Steps to build and run ( program tested only on Linux-Ubuntu 18.04,20.04 ) install the necessary packages- glut,glfw,glm
Learning CG and Vulkan
VulkanProject This project is for learning Vulkan, the current goal is from rendering a simple triangle, making movement by passing MVP matrix in unif
High Performance 3D Game Engine, with a high emphasis on Rendering
Electro High Performance 3D Game Engine, with a high emphasis on Rendering MainFeatures Rendering PBR Renderer (Cook–Torrance GGX) IBL (Image Based Li
Legion Low Level Rendering Interface provides a graphics API agnostic rendering interface with minimal CPU overhead and low level access to verbose GPU operations.
Legion-LLRI Legion-LLRI, or “Legion Low Level Rendering Interface” is a rendering API that aims to provide a graphics API agnostic approach to graphic
Software RayTracing engine written in C++ without the usage of any libraries.
Software Raytracing Engine This is a software unidirectional raytracing engine, fully written in C++17, with no dependencies or external libraries use
Pathway is an Android library that provides new functionalities around the graphics Path API.
Pathway is an Android library that provides new functionalities around the graphics Path API.
A graphics library using SDL programmed in C++
2DGraphicsLib A graphics library using SDL programmed in C++ This project will serve multiple purposes: I aim to learn how to program with C++ To crea
Source Codes for Injective Deformation Processing (IDP) with Incremental Potential Contact (IPC)
Source Codes for Injective Deformation Processing Reference This repository provides source code for: Yu Fang*, Minchen Li* (equal contribution), Chen
Source Codes for Codimensional Incremental Potential Contact (C-IPC)
Source Codes for Codimensional Incremental Potential Contact (C-IPC) Reference This repository provides source code for: Minchen Li, Danny M. Kaufman,
TotoroEngine is a toy 3D game engine using DirectX 12.
TotoroEngine TotoroEngine is a toy 3D game engine using DirectX 12. Prerequisites Only support Windows(Only test on Windows 10). If you have not insta
My attempt at OpenGL graphics
Graphics My attempt at OpenGL graphics. I have no idea what this will end up as, but it's a bit of fun and something to do. Formerly subject to a C-on
Android studio native project template using cross platform raylib graphics library.
rayturbo Android studio native project template using cross platform raylib graphics library. https://www.raylib.com/ This project use Android Studio
4 keys rhythm game on Casio Power Graphics calculators.
fx4K 简体中文 - English 简介 运行在卡西欧 fx-9750 与 fx-9860 系列图形计算器上的4K(四按键)下落式音游。 项目开始前可行性的考虑与实现的难度 屏幕刷新率 这个计算器的屏幕刷新率可以非常的高,但由于液晶显示屏在显示上会有延迟而造成残影,有可能会让读谱产生困难。另外,
F Graphics Library (FGL) is a small graphics C++ portable library for LCD displays on embedded systems
F Graphics Library (FGL) Full documentation: fgl.docsforge.com (By Filipe Chagas) F Graphics Library is a C++ library that I created for use in embedd