Skip to content

JohnClarking/CoolEngines

Repository files navigation

CoolEngines

Graphic Engine & Game Engine open source list!

Contents

Official

Official

Engine

Engine    EnginePlugin    OfflineEngine    SoftRenderer    RenderingDesign

Rendering

GI    VolumeRendering    PostProcessing    Stylize    Transparency    VFX    Standard Format

Emulation

Material    Environment       Camera

Optimization

Acceleration    SpatialDataStructures    RenderPath

Util

Util    SDF    Math    Image&Color    Noise    Mesh    Platform    UI

Tools

Tools

Tutorial

SDK&Tutorial

Other

Physics    Animation    Particle   


Official

Engine

Engine Plugin

  • Graphics Unity Graphics - Including Scriptable Render Pipeline
  • armory -3D Game Engine for Blender
  • RenderPipeline -PBR and Deferred Rendering for the Panda3D game engine
  • ray-mmd physically-based rendering at mikumikudance

Offline Engine

Soft Renderer

  • OpenSWR A High Performance, Highly Scalable Software Rasterizer for OpenGL
  • miaow An open source GPU based off of the AMD Southern Islands ISA.
  • tinyrenderer A brief computer graphics / rendering course
  • coco3d Coco3D is a real-time 3D software renderer for Windows PCs and mobile devices
  • muli3d implements features of current graphics hardware in software. The focus is on ease of use and clear code
  • swiftshader high-performance CPU-based implementation of the OpenGL ES and Direct3D 9 graphics APIs
  • Mesa3D https://www.mesa3d.org
  • renderer A shader-based software renderer written from scratch in C89 https://zauonlok.github.io/renderer/
  • SoftwareRenderer Software rendering engine with PBR. Built from scratch on C++.
  • Tyler Tile-based SW rasterizer
  • RetroWarp The GPU is implemented with "pure" software rendering
  • SoftRas Project page of paper "Soft Rasterizer: A Differentiable Renderer for Image-based 3D Reasoning"
  • [grr] (https://github.com/kecho/grr) Gpu Renderer and Rasterizer - for python

Rendering Design

  • DataDrivenRendering Data Driven Rendering repository
  • fg Rendering abstraction which describes a frame as a directed acyclic graph of render tasks and resources.
  • FrameGraph vulkan abstraction layer that represent frame as a task graph
  • graphene Vulkan render graph shenanigans

GI

Collection

  • IlluminationComparison A comparison of typical illumination methods. (SSAO, HBO, VXGI, and Ray Traced Global Illumination)
  • dirtchamber A mixed reality testing environment for real-time global illumination algorithms

PRT

Irradiance Probes/Voxels

VPL

VSGL

  • VSGL Fast Indirect Illumination Using Two Virtual Spherical Gaussian Lights

RSM

Imperfect Shadow Maps

Instant Radiosity

LPV

VCT

  • Nigiri An almost-dynamic voxel-based global illumination system for Unity.
  • SEGI NKLIA fully-dynamic voxel-based global illumination system for Unity
  • Unity-SRP-VXGI Voxel-based Global Illumination using Unity Scriptable Render Pipeline
  • VCTRenderer Deferred Voxel Shading for Real Time Global Illumination
  • voxel-cone-tracing A real-time global illumination implementation using voxel cone tracing.
  • VoxelConeTracingGI Global illumination with Voxel Cone Tracing in fully dynamic scenes using a 3D clipmap to support huge areas around the camera while maintaining a low memory footprint.
  • VoxelConeTracing An implementation of the "Voxel Cone Tracing" global illumination technique proposed by Cyril Crassin
  • VCTGI GPU-based real-time global illumination renderer based on voxel cone tracing
  • Vulkan-VXGI-VR-FrameWork University of Pennsylvania, CIS 565: GPU Programming and Architecture, Final Project
  • MAGE Game and rendering engine featuring both forward and deferred PBR (physically-based rendering) pipelines with optional indirect illumination using Voxel Cone Tracing.
  • Voxel_Cone_Tracing Voxel-Cone-Tracing easy to understand

SSGI

  • SSGI-URP Screen Space Global Illumination for Unity Universal Render Pipeline
  • FSSGI Fast Screen Space Global Illumination

DFGI

Lighting Grid

  • LGHDemo Real-Time Rendering with Lighting Grid Hierarchy I3D 2019 Demo

Point Based GI

  • PBGI Point Based Global Illumination

Radiosity

Ray tracing

Path tracing

RTX

  • Quartz Physically based Vulkan RTX path tracer with a declarative ES7-like scene description language.
  • DXRPathTracer A (very) simple path tracer implemented using DirectX Ray Tracing (DXR)
  • WispRenderer RTX Ray Tracing Renderer, made by Y3 students at Breda University of Applied Science https://teamwisp.github.io
  • rtx-explore DirectX Raytracing Path Tracer
  • PBRVulkan Vulkan Real-time Path Tracer Engine
  • Helios Real-time unidirectional GPU path tracer using the cross-vendor Vulkan ray-tracing extensions.
  • vk_mini_path_tracer A beginner-friendly Vulkan path tracing tutorial in under 300 lines of C++.

Metropolis Light Transport

PhotonMapping

  • CPMFIGIOTVVD Correlated Photon Mapping for Interactive Global Illumination of Time-Varying Volumetric Data by Daniel Jönsson and Anders Ynnerman
  • SOPGI A VEX raytracer for SideFX Houdini with photon mapping global illumination and full recursive reflections and refractions
  • DXR-PhotonMapper An implementation of Photon Mapping using DXR

Ambient occlusion

Bent Normal

  • ssbn Screen Space Bent Normals

Radiosity Normal Mapping

  • GzRNM brings Radiosity Normal Mapping/Directional Light Mapping to Unity 3D!
  • SSbumpGenerator A GUI interface to a tool for generating SSBumps (Self Shadowed Bump Maps).

LightMap

  • lightmapper A C/C++ single-file library for drop-in lightmap baking. Just use your existing OpenGL renderer to bounce light!
  • seamoptimizer A C/C++ single-file library that minimizes the hard transition errors of disjoint edges in lightmaps.
  • BakingLab A D3D11 application for experimenting with Spherical Gaussian lightmaps
  • GPULightmass Luoshuang's GPULightmass for UE4
  • trianglepacker Triangle packer for light map
  • HDR_Lightmapper Implements a cycles based lightmapper with denoiser
  • The_Lightmapper Fast and easy baked GI Lightmaps for Blender and Cycles
  • LightmapperToy This project is a hobby lightmapper completely based on Houdini geometry nodes. Basically it grew out of a re-implementation of Matt's The Baking Lab with some modification.

MLGI

  • DeepIllumination Code and examples from our paper "Deep Illumination: Approximating Dynamic Global Illumination with Generative Adversarial Networks," by Manu Mathew Thomas and Angus Forbes

GI Simulation

Diffuse inter-reflection

Caustic

  • SC_Tracer photon mapping for global illumination and caustic
  • Crystal-Caustics Approximated crystal caustics effect in Unity.

Reflection

Refraction

Shadow

PostProcessing

Collection

AA

  • CMAA2 Conservative Morphological Anti-Aliasing 2.0
  • MSAAFilter MSAA and Temporal AA Sample
  • temporal Temporal Reprojection Anti-Aliasing for Unity 5.0+
  • TAA_Unity_URP Temporal Anti-Aliasing(TAA) for Unity’s Universal Render Pipeline
  • smaa SMAA: Subpixel Morphological Antialiasing, is a very efficient GPU-based MLAA implementation
  • smaaDemo Subpixel Morphological AntiAliasing OpenGL/Vulkan demo
  • SMAA SMAA in unity3D
  • SpecularAA A demo of various normal map filtering techniques for reducing specular aliasing
  • glsl-fxaa FXAA implementation for glslify in WebGL
  • Phone-wire AA
  • DLAA (DLAA) Directionally Localized antiAliasing
  • TAA-STAR C++/Vulkan Implementations of State of the Art Temporal Anti-Aliasing Techniques
  • UE4 DLSS DLSS Plugin for Unreal Engine

Denoising

Bloom

Tone Mapping

ImageProcess

Compression

Material

Shade Model

BSDF
SVBRDF
  • svbrdf-oculus materials from Two-Shot SVBRDF Capture for Stationary Materials by Aittala et al (2015).
  • Matmorpher Code repository for the EGSR 2021 paper MatMorpher: A Morphing Operator for SVBRDFs

BSSRDF

IBL

  • IBLBaker Light probe generation and BRDF authoring for physically based shading.
  • cmftStudio cross-platform open-source cubemap filtering tool.
  • Probulator Experimentation framework for probe-based lighting
  • PBR An implementation of physically based shading model & image based lighting in various graphics APIs.
  • IBLGGX Sample implementation of UE4/Frostbite image based lighting method based on GGX convolution of HDR environment maps.
  • IntegrateDFG DFG LUT generator
  • hyper3d-envmapgen Pre-filtered mipmapped radiance environment map generator that runs on WebAssembly.

AreaLight

  • LTC_BRDF_Fit BRDF fitting code for LTC Area Lights by Heitz et al.
  • ltc_code Code for "Real-Time Polygonal-Light Shading with Linearly Transformed Cosines"
  • rtswplusd Real-Time Shading with Polyhedral Lights using Silhouette Detection

Character

SSS

Skin

Eye

Hair

  • TressFX DirectX 11 library that provides convenient access to realistically rendered and simulated hair and fur
  • vkhr Real-Time Hybrid Hair Rendering using Vulkan™
  • WetaHair Implementation of "Importance Sampling for Physically-Based Hair Fiber Models"
  • libWetHair A Multi-Scale Model for Simulating Liquid-Hair Interactions http://libwethair.info

Colth

Silk

Fur

Glint

Nature

Water

Snow

Sand

  • JourneySand An Unity project to reproduce the sand rendering in Journey's style

Grass

Tree

Terrain

  • Terrain-Topology-Algorithms Terrain topology algorithms in Unity
  • tin-terrain A command-line tool for converting heightmaps in GeoTIFF format into tiled optimized meshes.
  • TerrainPrettifier A small GPU-based component designed to aid in cleaning and refining satellite/DEM based terrains directly inside Unity.
  • PVTUT Procedural Virtual Texture with Unity Terrain
  • terrain-erosion-3-ways Three Ways of Generating Terrain with Erosion Features
  • Webgl-Erosion Erosion simulation in Web Browser

Cloud

Sky

Rain

  • Unity-Raindrops raindrops shader
  • RainDropEffect Rain Drop Effect2: Effective, Fast and Flexible Rain Distortion Effect for Unity
  • LensRain A screen-space lens rain effect using Unity's V2 Post-processing framework.
  • RainFX Natural Rain

Fire

  • fire A fire effect for Unity.
  • volumetric-fire Project for Computer Graphics course by Jaagup Kuhi, Siim Raudsepp and Andri Poolakese

Ice

Iridescent

Glass

Gem

Environment

VolumetricLight

FakeVolumetricLight

  • VolumetricTracer A simple way to render soft, volumetric bullet tracers in Unity. Only needs a unit cube and a material to render and supports instancing.

Atmospheric

Fog

Render Path

Camera

Physically Based Camera

DOF

  • HexBokehBlur Hexagonal Bokeh Blur
  • BokehDepthOfField Implementing Different Algorithms to mimic Bokeh Depth Of Field: A Physical Camera Effect created due to Focal Length, Aperture size, shape
  • VVDoFDemo

Lens

Standard Format

  • OpenShadingLanguage Advanced shading language for production GI renderers
  • glTF-SDK glTF-SDK is a Software Development Kit for glTF
  • cgltf Single-file glTF 2.0 loader and writer written in C99
  • fx-gltf A C++14/C++17 header-only library for simple, efficient, and robust serialization/deserialization of glTF 2.0
  • gltf-pipeline Content pipeline tools for optimizing glTF assets
  • USD Universal Scene Description http://www.openusd.org
  • MaterialX MaterialX is an open standard for transfer of rich material and look-development content between applications and renderers.
  • MDL NVIDIA Material Definition Language SDK
  • OpenMeshEffect OpenFX Mesh Effect API - A plug-in API for cross-software procedural mesh effects

Stylize

NPR

Low Poly

Voxel

Volume Rendering

RayMarch

Point Clouds

  • PCL A standalone, large scale, open project for 2D/3D image and point cloud processing.
  • Pcx Point cloud importer & renderer for Unity
  • compute_rasterizer Rendering Point Clouds with Compute Shaders
  • potree WebGL point cloud viewer for large datasets
  • point2mesh Reconstruct Watertight Meshes from Point Clouds [SIGGRAPH 2020]

Shear-warp

Other

  • OpenVDB Sparse volume data structure and tools. OpenVDBForUnity
  • unreal-vdb This repo is a non-official Unreal plugin that can read OpenVDB and NanoVDB files in Unreal.
  • openvkl Intel® Open Volume Kernel Library (Intel® Open VKL) is a collection of high-performance volume computation kernels

Acceleration

Frustum Culling

PVS

  • kPortals A pre-calculated Portal visibility system for Unity.
  • CornerCulling Fast and Maximally Accurate Occlusion Culling

..

Bounding

  • bounding-mesh Implementation of the bounding mesh and bounding convex decomposition algorithms for single-sided mesh approximation

Soft Occlusion Culling

Hardware Occlusion Queries

Hierarchical-Z Buffer

Hierarchical Occlusion Map

GPU-Driven

Imposter

  • IMP billboard imposter baking for Unity
  • ImpostorBaker UE4 Plugin for generating Impostors for static meshes

LOD

  • Planet-LOD Planet Rendering: Adaptive Spherical Level of Detail based on Triangle Subdivision

HLOD

Meshlets

  • meshlete Chop 3D objects to meshlets
  • gl_vk_meshlet_cadscene This OpenGL/Vulkan sample illustrates the use of "mesh shaders" for rendering CAD models.

Spatial Data Structures

  • UnityOctree A dynamic, loose octree implementation for Unity written in C#
  • NativeQuadtree A Quadtree Native Collection for Unity DOTS
  • ECS-Octree Unity ECS based octree.
  • KDTree Fast KDTree for Unity, with thread-safe querying.
  • KdTree A fast, generic, multi-dimensional Binary Search Tree written in C#
  • aabo Axis Aligned Bounding Octahedron
  • three-mesh-bvh A BVH implementation to speed up raycasting and enable spatial queries against three.js meshes.
  • bhh Bounding Halfspace Hierarchy
  • Fast-BVH A Simple, Optimized Bounding Volume Hierarchy for Ray/Object Intersection Testing
  • bvh A modern C++ BVH construction and traversal library
  • bvh BVH STAR in Japanese
  • ooc_svo_builder Out-Of-Core Construction of Sparse Voxel Octrees - reference implementation
  • SparseVoxelOctree A GPU SVO Builder using rasterization pipeline, a efficient SVO ray marcher and a simple SVO path tracer.
  • Transvoxel-XNA Transvoxel implementation in C# for XNA
  • HashDAG Interactively Modifying Compressed Sparse Voxel Representations
  • Unity_GPUNearestNeighbor Spatial Hashing Algorithm with GPU Acceleration

SDF

  • Discregrid A static C++ library for the generation of discrete functions on a box-shaped domain. This is especially suited for the generation of signed distance fields.
  • IsoMesh A group of related tools for Unity for converting meshes into signed distance field data, raymarching signed distance fields, and extracting signed distance field data back to meshes via surface nets or dual contouring.
  • SDFr Unity. ECS. Many rays intersect in triangles
  • MeshToSDF Unity. Computer Shader. JFD Generate SDF in realtime
  • Signed-Distance-Field-Generator Unity. Computer Shader. Find the nearest distance of the triangle
  • msdfgen Multi-channel signed distance field generator
  • Typogenic Signed-distance field text rendering for Unity
  • SDF Signed Distance Field Builder for Contour Texturing
  • SDFGen A simple commandline utility to generate grid-based signed distance field (level set) generator from triangle meshes
  • DeepSDF Learning Continuous Signed Distance Functions for Shape Representation
  • sdfu Signed Distance Field Utilities https://crates.io/crates/sdfu
  • mTec Rendering the World Using a Single Triangle:Efficient Distance Field Rendering
  • distance-occlusion A library of distance and occlusion generation routines
  • pb_CSG Constructive Solid Geometry (CSG) csg.js
  • rust_test 👍
  • snelly A system for physically-based SDF (signed distance field) pathtracing in WebGL
  • Signed Signed will be an GPL licensed editor and renderer for procedural Signed Distance Functions (SDFs).

Transparency

OIT

Optimization

Differentiable

  • redner Differentiable rendering without approximation.
  • nvdiffrast Nvdiffrast - Modular Primitives for High-Performance Differentiable Rendering.
  • jrender Jrender 2.0

Math

  • Eigen ⭐ linear algebra: matrices, vectors, numerical solvers, and related algorithms. Eigen
  • MathGeoLib 👍 A C++ library for linear algebra and geometry manipulation for computer graphics
  • GeometricTools 👍 A collection of source code for computing in the fields of mathematics, geometry, graphics, image analysis and physics.
  • glm OpenGL Mathematics (GLM) https://glm.g-truc.net
  • CGAL geometric algorithms in the form of a C++ library.
  • cglm Highly Optimized Graphics Math (glm) for C
  • GEOS Geometry Engine
  • klein 👍 P(R*_{3, 0, 1}) specialized SIMD Geometric Algebra Library https://jeremyong.com/klein
  • MTL Matrix Template Library, a linear algebra library for C++ programs.
  • DirectXMath DirectXMath is an all inline SIMD C++ linear algebra library for use in games and graphics apps
  • polyscope A prototyping-oriented UI for geometric algorithms https://polyscope.run
  • geomc A c++ linear algebra template library
  • geometry3Sharp C# library for 2D/3D geometric computation, mesh algorithms, and so on
  • fastapprox Approximate and vectorized versions of common mathematical functions
  • hlslpp Math library using hlsl syntax with SSE/NEON support
  • vml C++17 GLSL-like vector and matrix math lib
  • mathfu C++ math library developed primarily for games focused on simplicity and efficiency. http://google.github.io/mathfu

MathInShader

SH

Curve

  • nurbs Non-Uniform Rational B-Splines (NURBS) of any dimensionality

FFT

  • benchmarking-fft choosing FFT library
  • VkFFT Vulkan Fast Fourier Transform library
  • GLFFT A C++11/OpenGL library for the Fast Fourier Transform
  • dj_fft Header only FFT library

Sampling

  • SampleZoo Simple implementations of sampling patterns, with objective tests to compare them

Random

  • pcg-cpp PCG Random Number Generation

Image&Color

Noise

  • procedural-tileable-shaders Collection of tileable procedural textures such as: cellular noise, fbm, voronoi, perlin and other.
  • FastNoise Fast C++ Noise Library. Others Version: C++/C#/SIMD/Unity/Unreal
  • LibNoise.Unity libnoise Coherent noise library for Unity, a port of LibNoise
  • webgl-noise ⭐ Procedural Noise Shader Routines compatible with WebGL
  • GPU-Noise-Lib Optimized GPU noise functions and utilities http://briansharpe.wordpress.com/
  • Wombat An efficient texture-free GLSL procedural noise library
  • NoiseShader Noise shader library for Unity
  • OpenSimplex2 Successors to OpenSimplex Noise, plus updated OpenSimplex.
  • Accidental Noise Library generating Perlin noise and other forms of noise in a modular fashion.
  • VisualNoiseDesigner Visual Noise Designer for Unity
  • TileableVolumeNoise Collection of functions that can be used to generate tileable volume/3d noise. An exemple of volume noise functions that can be specifically used for clouds is also presented.
  • CloudNoiseGen A static utility class for Unity which handles generating and loading periodic, cloud-like (perlin-worley) 3D noise textures on the GPU.
  • BlueNoiseGenerator an implementation of a Siggraph 2016 paper "Blue-noise Dithered Sampling" by Iliyan Georgiev and Marcos Fajardo from Solid Angle
  • LowDiscBlueNoise generate 2D point sets which have both low discrepancy and Blue-Noise properties.
  • glsl-curl-noise CurlNoise
  • Noice Noise generator utility.

Computer Vision

  • OpenCV Open Source Computer Vision Library. C# Wrapper opencvsharp
  • unrealcv UnrealCV: Connecting Computer Vision to Unreal Engine

Image

  • bimg 👍 Image library.
  • OpenImageIO OpenImageIO http://www.openimageio.org
  • ImageSharp A cross-platform library for the processing of image files; written in C#
  • ImageMagick create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200)
  • ImageViewer HDR, PFM, DDS, KTX, EXR, PNG, JPG, BMP image viewer and manipulator
  • Dithering-Unity3d Dithering algorithms for Unity3d
  • psd_sdk A C++ library that directly reads Photoshop PSD files.
  • hdrview High-dynamic range image viewer with an emphasis on examining and comparing images, and including minimalistic tonemapping capabilities.

VectorGraphics

  • vg-renderer A vector graphics renderer for bgfx, based on ideas from NanoVG and ImDrawList (Dear ImGUI)

TextureCompressed

  • nv_dds DDS image loader for OpenGL/ OpenGL ES2 http://paroj.github.io/nv_dds/
  • nvidia-texture-tools Texture processing tools with support for Direct3D 10 and 11 formats.
  • crunch Advanced DXTc texture compression and transcoding library http://binomial.info
  • unity-ycca-subsampling ChromaPack YCCA chroma subsampling technique
  • basis_universal ⭐ Basis Universal GPU Texture and Texture Video Compression Codec
  • bc7enc Single source file BC1-5 and BC7 encoders and BC1-5/7 decoders with MIT or Public Domain licenses
  • astc-encoder This is the official repository for the Arm ASTC Encoder, a texture compressor for the Adaptive Scalable Texture Compression data format.
  • betsy 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.
  • Goofy Goofy - Realtime DXT1/ETC1 encoder
  • GPURealTimeBC6H Real-time BC6H compression on GPU
  • tev High dynamic range (HDR) image comparison tool for graphics people with an emphasis on OpenEXR images.
  • KtxUnity 👍 Load KTX and Basis Universal textures at runtime
  • qoi The “Quite OK Image” format for fast, lossless image compression
  • libspng Simple, modern libpng alternative https://libspng.org/
  • fpng Super fast C++ .PNG writer/reader

Color

Mesh

IO

  • assimp A library to import and export various 3d-model-formats
  • open3mod Open 3D Model Viewer - A quick and powerful 3D model viewer
  • DirectXMesh
  • OpenFBX Lightweight open source FBX importer
  • fast_obj Fast C OBJ parser

Subdivision

Simplification

Deform

  • Deform A framework for deforming meshes in the editor and at runtime in Unity.

DelaunayTriangulation

Delaunay&Destruction

Slicer

  • ezy-slice An open source mesh slicer framework for Unity3D Game Engine. Written in C#.
  • mesh-cutter Simple mesh cutting algorithm that works on simple 3d manifold objects with genus 0

Modeling

  • Dust3D 👍 a cross-platform 3D modeling software. Auto UV unwrapping, auto rigging with PBR Material support, pose and motion authoring all in one. https://dust3d.org/
  • meshlab MeshLab is mostly based on the mesh processing library VCGlib
  • Mesh-processing-library mesh processing techniques in computer graphics published at ACM SIGGRAPH in 1992–1998
  • pmp-library The Polygon Mesh Processing Library
  • PyMesh a rapid prototyping platform focused on geometry processing https://pymesh.readthedocs.io
  • trimesh Python library for loading and using triangular meshes.
  • libigl Simple C++ geometry processing library.
  • instant-meshes Interactive field-aligned mesh generator
  • openmesh A generic and efficient polygon mesh data structure
  • openflipper programming framework designed for processing, modeling and rendering of geometric data.
  • cinolib A generic programming header only C++ library for processing polygonal and polyhedral meshes
  • mmg open source software for bidimensional and tridimensional remeshing http://www.mmgtools.org
  • Directional Directional is a C++ library for creating, manipulating and visualizing directional fields on 3D meshes
  • Easy3D A lightweight, easy-to-use, and efficient C++ library for processing and rendering 3D data

Sketch

  • monster-mash A new sketch-based modeling and animation tool that allows you to quickly sketch a character, inflate it into 3D, and promptly animate it.

Optimization

  • meshoptimizer Mesh optimization library that makes indexed meshes more GPU-friendly

Compress

  • Compressonator Tool suite for Texture and 3D Model Compression, Optimization and Analysis using CPUs, GPUs and APUs
  • draco compressing and decompressing 3D geometric meshes and point clouds.

Reconstruction

Direction fields

  • fieldgen Generates high-quality, optimally smooth tangent direction fields on triangle meshes.

Platform

  • herebedragons A basic 3D scene implemented with various engines, frameworks or APIs.
  • glfw A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input
  • MoltenVK Vulkan graphics and compute API, that runs on Apple's Metal graphics framework
  • dxvk Vulkan-based D3D11 implementation for Linux / Wine

UI

  • imgui ⭐ Dear ImGui: Bloat-free Immediate Mode Graphical User interface for C++ with minimal dependencies
  • ImGuizmo Immediate mode 3D gizmo for scene editing and other controls based on Dear Imgui
  • nanovg Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.
  • nanogui Minimalistic GUI library for OpenGL
  • nuklear A single-header ANSI C gui library
  • AnttWeakbar a light and intuitive GUI into OpenGL or DirectX based programs to interactively tweak parameters on-screen.

Util

GPGPU

  • arrayfire ArrayFire: a general purpose GPU library.
  • hipSYCL Implementation of SYCL for CPUs, AMD GPUs, NVIDIA GPUs
  • Amplifier.NET Amplifier allows .NET developers to easily run complex applications with intensive mathematical computation on Intel CPU/GPU, NVIDIA, AMD without writing any additional C kernel code.
  • moderngpu Patterns and behaviors for GPU computing

VFX

Minecraft

MetaBlobs

Transitions

Mesh Cut

PageCurl

Projector

Decal

  • driven-decals A mesh-based PBR decal system for Unity's universal render pipeline.
  • ProjectionSpray Draw spray to 3D model with Unity.
  • Splatoonity Splatoon like painting in Unity 3D
  • unity_coneofsightfx This project shows how to implement Commandos cone of sight fx in Unity3D.
  • DMDecalBuffer Rendering decals to an offscreen buffer in URP for shader effects
  • SkinnedMeshDecals An example of rendering decals on SkinnedMesh Renderers in Unity.

OutLine

Motion

  • AmplifyMotion Amplify Motion was the first Full-scene Motion Blur extension for Unity
  • ProceduralMotion A collection of procedural motion scripts for Unity

Portal

  • unity-portal-rendering Super small example of using offscreen render targets to achieve a portal effect in Unity
  • shaders-portal A showcase of shader effects to replicate portals in videogames.

Fractal

InteriorMapping

Dissolve

  • VerticalDissolve Procedural vertical dissolve shader. Highly customizable. Tweak edge color, noisiness & waviness, rim light, emission scrolling and more.

HoloShield

  • HoloShield Highly customizable sci-fi shield / force field shader for Unity3D.

Glitch

SmearFrame

Matcap

EchoFX

Cubism

  • Cubism-Shader A shader that creates a cubism effect based on voronoi segmentation in Unity 3d

Wireframe

  • unity-solidwire-shader A simple shader which renders stylized wireframes while staying true (within reason) to the visual style of the Vectrex

Growth

  • hedera paint 3D ivy in the Unity Editor, watch procedurally generated meshes simulate growth and clinging in real-time

VFXGraph

  • HDRP-Fluvio Some early tests of FluvioFX with VFX Graph and HDRP

Compute Shader Effect

  • FinalAudition A complete remake of 2005 demo "Final Audition" by Plastic

Others

Tools

UE4

Unity

DataExchange

Shader

ShaderToy

Visual Effects

  • gaffer A open source application framework designed specifically for creating tools for use in visual effects production.
  • cortex Libraries for visual effects software development

Texture

  • armorpaint 👍 3D PBR Texture Painting Software https://armorpaint.org
  • material-maker A procedural textures authoring and 3D model painting tool based on the Godot game engine
  • Materialize Materialize is a program for converting images to materials for use in video games and similars.
  • xNormal A free tool to bake texture maps ( like normal maps and ambient occlusion )
  • FlowmapPainter
  • Fornos GPU Texture Baking Tool
  • AwesomeBump generate normal, height, specular or ambient occlusion textures from a single image
  • NormalmapGenerator A simple program that converts images into normal maps
  • Imogen GPU Texture Generator
  • aobaker ambient occlusion baking tool
  • Luminance HDR A complete workflow for HDR imaging.
  • TextureGenerator 3D and 2D Noise/Texture generation using the compute shaders within the Unity engine.

Atlas

  • boundary-first-flattening Boundary First Flattening (BFF) is a free and open source application for surface parameterization.
  • OptCuts a new parameterization algorithm, jointly optimizes arbitrary embeddings for seam quality and distortion
  • simpleuv Automatic UV Unwrapping Library for Dust3D
  • xatlas👍 Mesh parameterization / UV unwrapping library. A cleaned up version of thekla_atlas
  • thekla_atlas Atlas Generation Tool
  • UVAtlas UVAtlas isochart texture atlas
  • Cheetah-Texture-Packer High efficient and fast 2D bin packing tool
  • Unity3D-TextureAtlasSlicer
  • VaTexAtlas plugin for Unreal Engine 4 that makes texture atlases simpler to use with UMG system.
  • RectangleBinPack Source code for performing 2d rectangular bin packing.
  • pack-spheres Brute force circle/sphere packing in 2D or 3D

GPU Debug

  • renderdoc A stand-alone graphics debugging tool. https://renderdoc.org
  • CodeXL a comprehensive tool suite that enables developers to harness the benefits of CPUs, GPUs and APUs.
  • LPGPU2-CodeXL LPGPU2 CodeXL power performance analysis and feedback tool for GPUs
  • perfdoc A cross-platform Vulkan layer which checks Vulkan applications for best practices on Arm Mali devices.
  • agi Android GPU Inspector
  • gapid Graphics API Debugger by google
  • microprofile embeddable CPU/GPU profiler
  • vogl OpenGL capture / playback debugger by valve
  • apitrace Tools for tracing OpenGL, Direct3D, and other graphics APIs
  • GPUVis GPU Trace Visualizer
  • Remotery Single C file, Realtime CPU/GPU Profiler with Remote Web Viewer
  • BuGLe BuGLe combines a graphical OpenGL debugger with a selection of filters on the OpenGL command stream.
  • Other: gDEBugger, NVIDIA Nsight, Microsoft PIX

SDK&Tutorial

API Samples

Book Code

Graphic SDK

Graphics Awesome

Book&Tutorial

Animation

ML

  • AI4Animation Character Animation in Unity3D using Deep Learning and Artificial Intelligence

Bone

  • uSpringBone High performance SpringBone using ECS and JobSystem in Unity.
  • UnityChanSpringBone UnityChan Sping Bone System for lightweight secondary animations
  • SPCRJointDynamics 布風骨物理エンジン
  • EZSoftBone A simple kinetic simulator for Unity, you can use it to simulate hair/tail/breast/skirt and other soft objects
  • dem-bones An automated algorithm to extract the linear blend skinning (LBS) from a set of example poses

IK

  • SimpleIK Unity Inverse Kinematics made easy

Skin

Particle

Visualization

  • VTK The Visualization Toolkit

About

Awesome list for open source graphic & game engine.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published