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
Last synced: 5 days ago
JSON representation
-
Libraries & Frameworks:
-
Graphics
- stb_image_write.h
- stb_image.h
- 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.
- 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.
- windows-rs - Windows bindings for rust
-
C#
- 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
-
Scripting Languages
- wren - minimal scripting language OOP
- Sol2 Lua binding - a C++ <-> Lua API wrapper with advanced features and top notch performance
- ChaiScript
-
C Interface languages
- 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
-
JSON, XML
- rapidjson
- PugiXML - weight, simple and fast XML parser for C++ with XPath support
- JsonCpp
- tmxlite
- nlohmann/json
-
Physic
- Box2D
- projectchrono - physics Simulation Engine
- ReactPhysics3D
- PhysX
-
C/C++
- ENet - order delivery of packets.
- ValveSoftware/GameNetworkingSockets
- Message oriented networking library using TCP transport.
- librg - header cross-platform world replication in pure C99.
-
Other
- Libclang for Python
- fmod
- OpenAL - platform three-dimensional audio API.
- Rttr
- copperspice
- SFML
- Steamworks SDK
- F14 Hash Table
- BabylonJS - About
- ThreeJS - JavaScript 3D library.
- Steamworks wrapper for Unity / C#
-
ECS
-
Math
-
rust
- 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
-
-
Tools
- VS Code rust
- VS Code rust
- VS Code rust
- 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
- Tiled Map Editor
- RenderDoc
- Where is my Draw
- Rider for UE4 - in visual assist features and showing where classes are implemented in blueprints.
- VS Code rust
- VS Code rust
- VS Code rust
- VLD
- optick
- Agones
- Circle Language
- Mantis Bug Tracker
- evoke
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- NVIDIA® Nsight™ Graphics
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- Rust Analyzer - analyzer is an experimental modular compiler frontend for the Rust language.
- MTuner
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
- VS Code rust
-
Resources
-
Videos
- Adopting Continuous Delivery (In Sea of Thieves) - GDC talk
- Horizon Zero Dawn: A QA Open World Case Study - GDC talk
- 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”
- Winding Road Ahead: Designing Utility AI with Curvature
- Introduction to Computer Graphics
- GDC Vault
- Cᐩᐩ Weekly With Jason Turner
- Meeting C++
- Cpp Now
- CopperSpice
- https://www.youtube.com/watch?v=SHinxAhv1ZE
- MIT 6.006 Introduction to Algorithms
- 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
- So you want to write an interpreter?
- How to Build a Virtual Machine
- Kubernetes Tutorial for Beginners [FULL COURSE in 4 Hours
- 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
- 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"
- GDC Vault
-
Books
- Mazes for programmers
- Raytracing Gems
- Real-Time Rendering
- Mastering C++ Multithreading
- Ray tracing in a weekend
- Data-Oriented Design Book
- Open Data Structures
- Network Programming with Rust
- Calculus Volume 1
- Multiplayer Game Programming: Architecting Networked Games
- The Fundamentals of C/C++ Game Programming: Using Target-based Development on SBC's
- Effective Modern C++ by Scott Meyers
- Volume 4: Physics
-
Articles / Papers
- 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
- 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
- Open-sourcing F14 for faster, more memory-efficient hash tables
- CPU Caches and Why You Care
- Physics Info
- Visualizing the GJK Collision detection algorithm
- Geometrics
- Lockstep multiplayer first steps
- Let’s Build A Simple Interpreter. Part 1.
- craftinginterpreters
- 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
- HOW TO IMPLEMENT A NODE-BASED SCRIPTING LANGUAGE
- HOW TO IMPLEMENT A NODE-BASED SCRIPTING LANGUAGE
-
Websites, Blogs, Webtools
- 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 in a Week
- Rust Times
- Crates
- Ray tracing in a weekend - website
- 3D Game Engine Programming
- Graphics Programming Weekly
- Graphics Programming Article database
- 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
- gafferongames
-
Courses
- 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
-
-
Engines Plugins
-
Unreal Engine Plugins
-
-
Other (Awesome) lists
Categories
Sub Categories
Keywords
rust
11
game-development
11
gamedev
10
vulkan
6
game-engine
6
directx
4
header-only
4
cpp
4
ecs
4
c-plus-plus
4
networking
4
unity
3
modern-cpp
3
d3d12
3
opengl
3
cpp17
3
awesome-list
3
directx12
3
entity-component-system
3
android
3
imgui
2
game
2
d3d11
2
gui
2
hlsl
2
c-sharp
2
multiplayer
2
library
2
rendering
2
cpp-library
2
memory-management
2
clang
2
cross-platform
2
directx-12
2
performance
2
metal
2
visual-studio
2
simd
2
production-ready
2
no-dependencies
2
windows
2
list
2
games
2
game-programming
2
awesome
2
data-oriented-design
2
data-oriented
2
graphics-engine
1
graphics-programming
1
graphics-library
1