C++ Game development

Open-source C++ projects categorized as Game development

Top 23 C++ Game development Projects

  • Godot

    Godot Engine – Multi-platform 2D and 3D game engine

    Project mention: Error: Timer was not added to the SceneTree. Either add it or set autostart to true. I have no timer in any scene. | /r/godot | 2023-11-29

    Editing project: /home/noone/ABitTest2 Godot Engine v4.2.rc2.official.1ba920fad - https://godotengine.org /lib/x86_64-linux-gnu/libxkbcommon.so.0: undefined symbol: xkb_utf32_to_keysym /lib/x86_64-linux-gnu/libxkbcommon.so.0: undefined symbol: xkb_keymap_key_get_mods_for_level Vulkan API 1.1.182 - Forward+ - Using Vulkan Device #0: Unknown - llvmpipe (LLVM 12.0.0, 256 bits) WARNING: lavapipe is not a conformant vulkan implementation, testing use only. noone@noone-System-Product-Name:~/Godot4_0$ ERROR: Timer was not added to the SceneTree. Either add it or set autostart to true. at: start (scene/main/timer.cpp:109)

  • Cocos2d

    Cocos2d-x is a suite of open-source, cross-platform, game-development tools utilized by millions of developers across the globe. Its core has evolved to serve as the foundation for Cocos Creator 1.x & 2.x.

    Project mention: Not only Unity... | /r/opensourcegames | 2023-11-11
  • Onboard AI

    Learn any GitHub repo in 59 seconds. Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at www.getonboard.dev.

  • 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.

    Project mention: Random Code Inspiration Volume 2 | dev.to | 2023-10-01
  • Bullet

    Bullet Physics SDK: real-time collision detection and multi-physics simulation for VR, games, visual effects, robotics, machine learning etc.

    Project mention: Does anyone know any good open source project to optimize? | /r/cpp | 2023-06-07

    I suspect most C++ physics libraries like Box2D (https://github.com/erincatto/box2d) or Bullet3 (https://github.com/bulletphysics/bullet3) could really benefit a lot from SIMD.

  • tiled

    Flexible level editor

    Project mention: How to build maps efficiently | /r/gamedev | 2023-11-27

    A more sophisticated approach may be to use something like Tiled (https://www.mapeditor.org), but it typically takes a lot of code to to parse a Tiled map, so I wouldn’t start there. The exact needs of your game will dictate the approaches you use. Starting simple means you can make good, visible progress getting your game to work. And I’m sure that plenty of real games have shipped where the levels are just text files.

  • assimp

    The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.

    Project mention: The Asset-Importer-Lib Minor Release Version 5.3.0 is out | /r/GraphicsProgramming | 2023-09-26
  • entt

    Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much more

    Project mention: Focus: A simple and fast text editor written in Jai | news.ycombinator.com | 2023-09-02

    https://pastebin.com/VPypiitk This is a very small experiment i did to learn the metaprogramming features. its an ECS library using the same model as entt (https://github.com/skypjack/entt). In 200 lines or so it does the equivalent of a few thousand lines of template heavy Cpp while compiling instantly and generating good debug code.

    Some walkthrough:

    Line 8 declares a SparseSet type as a fairly typical template. its just a struct with arrays of type T inside. Next lines implement getters/setters for this data structure

    Line 46 Base_Registry things get interesting. This is a struct that holds a bunch of SparseSet of different types, and providers getters/setters for them by type. It uses code generation to do this. The initial #insert at the start of the class injects codegen that creates structure members from the type list the struct gets on its declaration. Note also how type-lists are a native structure in the lang, no need for variadics.

    Line 99 i decide to do variadic style tail templates anyway for fun. I implement a function that takes a typelist and returns the tail, and the struct is created through recursion as one would do in cpp. Getters and setters for the View struct are also implemented through recursion

    Line 143 has the for expansion. This is how you overload the for loop functionality to create custom iterators.

    The rest of the code is just some basic test code that runs the thing.

  • InfluxDB

    Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.

  • GameNetworkingSockets

    Reliable & unreliable messages over UDP. Robust message fragmentation & reassembly. P2P networking / NAT traversal. Encryption.

    Project mention: Microsoft wins FTC fight to buy Activision Blizzard | /r/gaming | 2023-07-11

    Halo was mostly all about single player and early multiplayer/local multiplayer but their online netcode has sucked since Blood Gulch. Lots of games do networking horribly, I have been in gamedev making networking and I hate most of what people do. The ones that have a clean natting, based on enet style reliable UDP channels, RakNet style punch are better (RakNet was good until Facebook bought it). It has come a long way but also fallen back. Valve source netcode (on github) is probably the best and you can check it out here. They started with the best in Quake networking, then to Source.

  • o3de

    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.

    Project mention: Amazon Lays Off 180 Employees in Its Games Division | news.ycombinator.com | 2023-11-13
  • Recast/Detour

    Navigation-mesh Toolset for Games

    Project mention: RE: If you had to pick a library from another language (Rust, JS, etc.) that isn’t currently available in Python and have it instantly converted into Python for you to use, what would it be? | /r/Python | 2023-04-20

    RecastNavigation

  • Piccolo

    Piccolo (formerly Pilot) – mini game engine for games104

  • cocos-engine

    Cocos simplifies game creation and distribution with Cocos Creator, a free, open-source, cross-platform game engine. Empowering millions of developers to create high-performance, engaging 2D/3D games and instant web entertainment.

    Project mention: Not only Unity... | /r/opensourcegames | 2023-11-11
  • JoltPhysics

    A multi core friendly rigid body physics and collision detection library, written in C++, suitable for games and VR applications.

    Project mention: Simulation Islands | news.ycombinator.com | 2023-10-10
  • endless-sky

    Space exploration, trading, and combat game.

    Project mention: Naev – open-source game about space exploration, trade and combat | news.ycombinator.com | 2023-11-25

    Sounds very similar to Endless Sky[1] - another open source game drawing on the old Escape Velocity games. I really enjoyed both Endless Sky and the Escape Velocity games, so I'll have to check out Naev at some point!

    [1] https://endless-sky.github.io/

  • Panda3D

    Powerful, mature open-source cross-platform game engine for Python and C++, developed by Disney and CMU

    Project mention: Not only Unity... | /r/opensourcegames | 2023-11-11

    Panda3D (MIT/C++) https://github.com/panda3d/panda3d

  • SHADERed

    Lightweight, cross-platform & full-featured shader IDE

    Project mention: Confused in terms of where to start with framework/technology etc. Need help picking between learning ShaderToy v/s OpenGL v/s WebGL | /r/GraphicsProgramming | 2023-06-20

    If you specifically want to learn shader programming then https://shadered.org/ is a lot more practical than Shadertoy.

  • love

    LÖVE is an awesome 2D game framework for Lua.

    Project mention: Not only Unity... | /r/opensourcegames | 2023-11-11

    Love2d (MIT/C++/Lua) https://github.com/love2d/love

  • NoahGameFrame

    A fast, scalable, distributed game server engine/framework for C++, include the actor library, network library, can be used as a real time multiplayer game engine ( MMO RPG/MOBA ), which support C#/Lua script/ Unity3d, Cocos2dx and plan to support Unreal.

  • defold

    Defold is a completely free to use game engine for development of desktop, mobile and web games.

    Project mention: Not only Unity... | /r/opensourcegames | 2023-11-11
  • lumixengine

    3D C++ Game Engine - yet another open source game engine

    Project mention: Ask HN: What Are You Working on This Year? | news.ycombinator.com | 2023-01-02

    I recently fell in love with node-based editors so I'm working on several plugins for my game engine https://github.com/nem0/LumixEngine, e.g. node-based procedural geometry plugin, node-based image editor, visual scripting or node-based level generator. I am also thinking about using WASM as runtime for the visual script, which also means easier support for scripting in other languages which can compile to WASM.

  • imgui-node-editor

    Node Editor built using Dear ImGui

    Project mention: Visual Node Graph with ImGui | news.ycombinator.com | 2023-09-29

    Looks more like https://github.com/thedmd/imgui-node-editor/ to me - both are great libraries though.

  • EpicSurvivalGame

    Third-person Survival Game for Unreal Engine (Sample Project)

  • Atomic Game Engine

    The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-11-29.

C++ Game development related posts

Index

What are some of the best open-source Game development projects in C++? This list will help you:

Project Stars
1 Godot 78,113
2 Cocos2d 17,608
3 3d-game-shaders-for-beginners 16,351
4 Bullet 11,341
5 tiled 10,228
6 assimp 9,749
7 entt 8,950
8 GameNetworkingSockets 7,544
9 o3de 7,015
10 Recast/Detour 5,905
11 Piccolo 5,200
12 cocos-engine 4,840
13 JoltPhysics 4,651
14 endless-sky 4,637
15 Panda3D 4,103
16 SHADERed 3,986
17 love 3,858
18 NoahGameFrame 3,838
19 defold 3,333
20 lumixengine 3,244
21 imgui-node-editor 3,080
22 EpicSurvivalGame 3,047
23 Atomic Game Engine 3,027
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com