Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
programming-awesome-list
A curated list of useful tools, libraries, resources all around the topic of game development / game programming for the Games course at Breda University of Applied Sciences.
https://github.com/BredaUniversityGames/programming-awesome-list
- Jenkins - Easy to install CI and CD solution.
- GitHub Actions
- Resharper
- Visual Assist
- Visual Assist for UE4
- VS Code
- VS Code C++
- VS Code rust
- Premake
- CMake
- Clang
- Use Clang in Visual Studios
- Clang Tooling
- ClangFormt
- ClangCheck
- AddressSanitizer
- AddressSanitizer (ASan) for Windows with MSVC
- Devkitpro
- VLD
- Tiled Map Editor
- Rust Analyzer - analyzer is an experimental modular compiler frontend for the Rust language.
- RenderDoc
- Where is my Draw
- NVIDIA® Nsight™ Graphics
- Rider for UE4 - in visual assist features and showing where classes are implemented in blueprints.
- MTuner
- optick
- Agones
- Circle Language
- DDS - A Build System and Library Manager
- Mantis Bug Tracker
- evoke
- Dear IMGUI
- sokol - style cross-platform libraries for C and C++, written in C.
- bgfx - platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
- stb_image.h
- stb_image_write.h
- DirectXShaderCompiler
- Assimp - Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.
- DiligentEngine - platform low-level graphics library and rendering framework
- Vulkan Memory Allocator
- Directx12 Memory Allocator
- FidelityFX - based features aimed at improving rendering quality and performance.
- rust-gpu - Making Rust a first-class language and ecosystem for GPU code
- egui - egui: an easy-to-use immediate mode GUI in pure Rust
- gpu-allocator - Memory allocator written in Rust for Vulkan and DX12
- rspirv-reflect - SPIR-V reflection library written in Rust
- hassle-rs - Rust bindings for the DirectXShaderCompiler library
- blue-noise-sampler - Low-Discrepancy Sampler that distributes Monte Carlo errors as a blue noise in screen space.
- ash - Vulkan bindings for rust
- windows-rs - Windows bindings for rust
- EnTT - Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much more
- flecs - A fast entity component system (ECS) for C & C++
- EntityX
- bevy
- legion
- Unity's DOTS
- Svelto.ECS - Svelto ECS C# Lightweight Data Oriented Entity Component System Framework
- Entitas-CSharp - Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity
- wren - minimal scripting language OOP
- lua
- Sol2 Lua binding - a C++ <-> Lua API wrapper with advanced features and top notch performance
- ChaiScript
- rust
- zig - purpose programming language and toolchain for maintaining robust, optimal, and reusable software. Can bind to C / C++
- vlang
- Odin
- How to bind to C
- DirectXMath
- glm
- eigen
- google/mathfu
- PugiXML - weight, simple and fast XML parser for C++ with XPath support
- JsonCpp
- tmxlite
- nlohmann/json
- rapidjson
- Box2D
- PhysX
- projectchrono - physics Simulation Engine
- ReactPhysics3D
- ValveSoftware/GameNetworkingSockets
- ENet - order delivery of packets.
- Message oriented networking library using TCP transport.
- librg - header cross-platform world replication in pure C99.
- libpnet/libpnet - platform, low level networking
- smoltcp-rs/smoltcp - driven TCP/IP stack that is designed for bare-metal, real-time systems
- tokio-rs/tokio
- dylanmckay/protocol
- actix/actix
- Libclang for Python
- Steamworks wrapper for Unity / C#
- fmod
- Portaudio - platform, open-source, audio I/O library.
- OpenAL - platform three-dimensional audio API.
- Asio - platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach.
- stb - file public domain libraries for C/C++
- cereal
- Rttr
- spdlog
- copperspice
- SFML
- Steamworks SDK
- STX - handling and utility extensions
- C++ frame profiler
- Scope Guard & Defer C++
- fmt
- quill
- rocket - Fast single header signal/slots library for C++
- cxxopts
- cgltf - file glTF 2.0 loader and writer written in C99
- tinygltf
- EASTL
- abseil
- folly
- F14 Hash Table
- Guidelines Support Library
- eventpp
- cli
- BabylonJS - About
- ThreeJS - JavaScript 3D library.
- Discord Messenger
- Winding Road Ahead: Designing Utility AI with Curvature
- Introduction to Computer Graphics
- Computer Graphics (CMU 15-462/662)
- Cᐩᐩ Weekly With Jason Turner
- CppCon
- Meeting C++
- Cpp Now
- CopperSpice
- Building a C++ Reflection System in One Weekend Using Clang and LLVM - Arvid Gerstmann
- CppCon 2018: Jonathan Boccara “105 STL Algorithms in Less Than an Hour”
- GDC
- GDC Vault
- Adopting Continuous Delivery (In Sea of Thieves) - GDC talk
- Horizon Zero Dawn: A QA Open World Case Study - GDC talk
- https://www.youtube.com/watch?v=SHinxAhv1ZE
- Math for Game Programmers: Fast and Funky 1D Nonlinear Transformations
- Build Great Tools: Workflow Guidelines from Vicarious Visions - UI / UX For tools programming
- Overwatch Gameplay Architecture and Netcode
- Data-Oriented Design and C++
- CPU caches and why you care
- Culling the Battlefield: Data Oriented Design in Practice
- Game Engine Entity/Object systems
- Understanding Data Oriented Design for Entity Component Systems
- Physics for Game Programmers : Networking for Physics Programmers
- Networking in C++ Part #1: MMO Client/Server, ASIO & Framework Basics
- Overwatch Gameplay Architecture and Netcode
- World of Warcraft's Network Serialization and Routing
- I Shot You First: Networking the Gameplay of Halo: Reach
- Move fast and don't break things: High-performance networking in Rust — Joshua Liebow-Feeser
- Modern Cmake: An introduction
- CppCon 2017: Mathieu Ropert “Using Modern CMake Patterns to Enforce a Good Modular Design”
- C++Now 2017: Daniel Pfeifer “Effective CMake"
- MIT 6.006 Introduction to Algorithms
- So you want to write an interpreter?
- How to Build a Virtual Machine
- Kubernetes Tutorial for Beginners [FULL COURSE in 4 Hours
- Ray tracing in a weekend
- Data-Oriented Design Book
- Open Data Structures
- Mazes for programmers
- Raytracing Gems
- Real-Time Rendering
- Calculus Volume 1
- Mastering C++ Multithreading
- Network Programming with Rust
- Multiplayer Game Programming: Architecting Networked Games
- The Fundamentals of C/C++ Game Programming: Using Target-based Development on SBC's
- Foundations of Game Engine Development
- Volume 1: Mathematics 1st Edition
- Volume 2: Rendering
- Volume 3: Models & Materials
- Volume 4: Physics
- Effective Modern C++ by Scott Meyers
- Moving Frostbite to Physically Based Rendering 3.0
- Advances in Real-Time Rendering in 3D Graphics and Games
- Real-Time Physically Based Rendering and BRDFs
- Linear Interpolation
- Pixels? Triangles? What’s the difference? — How (I think) Nanite renderes a demo with 10¹¹ tris
- Vulkan Shader Resource Binding
- Tutorials and Documents by Anders Lindqvist
- Publications by Peter-Pike Sloan
- Advanced Shader Programming on GCN
- ECS Faq - Frequently asked questions about Entity Component Systems
- Understanding Data Oriented Design
- Entities, Components and Systems
- Why Vanilla ECS is not enough
- Formalisation of Concepts behind ECS and Entitas
- Entity Component System and Rendering
- Specs and Legion, two very different approaches to ECS
- Archetypes and Vectorization
- ECS back & forth
- Sparse Set
- Hibitset
- Perlin Noise
- Perlin Noise
- The Wavefunction Collapse Algorithm explained very clearly
- Open-sourcing F14 for faster, more memory-efficient hash tables
- CPU Caches and Why You Care
- Physics Info
- Visualizing the GJK Collision detection algorithm
- realtimerendering: intersections
- Geometrics
- 1500 Archers on a 28.8: Network Programming in Age of Empires and Beyond
- Lockstep multiplayer first steps
- HOW TO IMPLEMENT A NODE-BASED SCRIPTING LANGUAGE
- Let’s Build A Simple Interpreter. Part 1.
- craftinginterpreters
- Write your Own Virtual Machine
- Getting started Libclang
- retro game dev gba tutorials
- AddressSanitizer for Windows: x64 and Debug Build Support
- Bit-level operations – bit flags and bit masks
- Multithreading - C++17 and C++20
- Multithreading - Memory Model
- Multithreading - Applications
- How to debug in rust with VS Code
- Using Git Sparse Checkout
- How C++ Resolves a Function Call
- shafik/cpp_learning
- Red Blob Games
- Maze Generation Serires
- Fluent C++
- C++ Core Guidelines
- Cpp Cast
- Modern C++
- Over 700 videos of talks, tutorials and explanations related to C++
- rust book
- Rust in a Week
- Rust Times
- Crates
- Ray tracing in a weekend - website
- 3D Game Engine Programming
- Learning DirectX12
- Graphics Programming Weekly
- Graphics Programming Article database
- Vulkan Diagrams
- learnopengl.com
- opengl-tutorial.org
- Scratchapixel 2.0
- vulkan-tutorial.com - A collection of vulkan tutorials
- VulkanGuide - The focus of this guide is to understand Vulkan correctly, and act as a stepping stone for then working in your own projects
- Vulkan for HLSL - V using [DirectXShaderCompiler](https://github.com/microsoft/DirectXShaderCompiler).
- Using the DirectXShaderCompiler API
- tellusim engine blog - cool GPU driven blog posts: Blue noise, benchmarks between GPU's, Raytracing, Animations etc.
- The Danger Zone
- Alain Galvan blogs
- Raw Directx12
- Raw WebGPU
- Raw Vulkan
- Comparison of Modern Graphics API's
- Compiler Explorer - lets you compile many different languages such as C,C++ or rust and inspect the Assembly or test
- CPP Insights - Shows you what the compiler does with your C++ code. How does a for each loop looks to the compiler?
- Quick Benchmarks
- Quick Builld
- Shader Toy
- Shader Playground - lets you compile HLSL with different compilers and inspect the intermediate format
- gafferongames
- Openstax
- Jenkins Essential Training (linkedin)
- Programming Natural-Simulations
- Trigonometry - khanacademy
- Geometry - khanacademy
- Precalculus - khanacademy
- Linear-Algebra - khanacademy
- Calculus AB - khanacademy
- Calculus BC - khanacademy
- Refresher Physics khanacademy
- Physics 1 khanacademy
- Network Programming with Rust: The Course Overview | packtpub.com
- Memory Managment
- Magic Tools - A Game Programming list
- Unity List
- Game Talks
- Awesome Entity Component System
- C++ Links a link collection by MattPD
- Memory Performance Tools
- Atomics, lock free, memory model
- Cache
- Prefetch
- Memory Bus
- gamedev libraries
- Awesome CMake
- The Aggregate
- shafik/cpp_youtube_channels
- shafik/cpp_blogs
Keywords
cpp
11
gamedev
11
game-development
11
rust
10
c-plus-plus
10
game-engine
8
header-only
7
vulkan
6
cpp11
5
ecs
5
cross-platform
4
awesome-list
4
networking
4
cplusplus
4
modern-cpp
4
directx12
4
entity-component-system
4
cpp17
4
library
3
cpp14
3
opengl
3
directx
3
rendering
3
no-dependencies
3
directx-12
3
games
3
data-oriented-design
3
android
3
c
3
unity
3
performance
3
d3d12
3
data-oriented
3
list
2
game-programming
2
logging
2
gui
2
imgui
2
profiler
2
observer-pattern
2
ecs-framework
2
visual-studio
2
asynchronous
2
cpp20
2
windows
2
gamedev-library
2
gltf
2
hlsl
2
c-plus-plus-11
2
d3d11
2