SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 C++ Game development Projects
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
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.
-
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.
-
Bullet
Bullet Physics SDK: real-time collision detection and multi-physics simulation for VR, games, visual effects, robotics, machine learning etc.
-
assimp
The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
GameNetworkingSockets
Reliable & unreliable messages over UDP. Robust message fragmentation & reassembly. P2P networking / NAT traversal. Encryption.
-
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.
-
JoltPhysics
A multi core friendly rigid body physics and collision detection library, written in C++, suitable for games and VR applications.
-
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.
-
Panda3D
Powerful, mature open-source cross-platform game engine for Python and C++, developed by Disney and CMU
-
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.
-
ActionRoguelike
Third-person Action Roguelike made in Unreal Engine C++. Project for Unreal Engine C++ Course & Stanford University
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
include(cmake/CPM.cmake) function(raylib_imgui_setup_dependencies) message(STATUS "Include Dear ImGui") FetchContent_Declare( ImGui GIT_REPOSITORY https://github.com/ocornut/imgui GIT_TAG 277ae93c41314ba5f4c7444f37c4319cdf07e8cf) # v1.90.4 FetchContent_MakeAvailable(ImGui) FetchContent_GetProperties(ImGui SOURCE_DIR IMGUI_DIR) add_library( imgui STATIC ${imgui_SOURCE_DIR}/imgui.cpp ${imgui_SOURCE_DIR}/imgui_draw.cpp ${imgui_SOURCE_DIR}/imgui_widgets.cpp ${imgui_SOURCE_DIR}/imgui_tables.cpp) target_include_directories(imgui INTERFACE ${imgui_SOURCE_DIR}) include(cmake/CPM.cmake) message(STATUS "Include dbg-macro") cpmaddpackage( "gh:sharkdp/dbg-macro#fb9976f410f8b29105818b20278cd0be0e853fe8" )# v0.5.1 message(STATUS "Include fmtlib") cpmaddpackage("gh:fmtlib/fmt#e69e5f977d458f2650bb346dadf2ad30c5320281" )# 10.x message(STATUS "Include raylib") cpmaddpackage("gh:raysan5/raylib#ae50bfa2cc569c0f8d5bc4315d39db64005b1b0" )# v5.0 message(STATUS "Include spdlog") cpmaddpackage("gh:gabime/spdlog#7c02e204c92545f869e2f04edaab1f19fe8b19fd" )# v1.13.0 message(STATUS "Include rlImGui") FetchContent_Declare( rlImGui GIT_REPOSITORY https://github.com/raylib-extras/rlImGui GIT_TAG d765c1ef3d37cf939f88aaa272a59a2713d654c9) FetchContent_MakeAvailable(rlImGui) FetchContent_GetProperties(rlImGui SOURCE_DIR RLIMGUI_DIR) add_library(rlimgui STATIC ${rlimgui_SOURCE_DIR}/rlImgui.cpp) target_link_libraries(rlimgui PRIVATE imgui raylib) target_include_directories(rlimgui INTERFACE ${rlimgui_SOURCE_DIR}) endfunction()
This is a great series if you’re looking for a tutorial. https://lettier.github.io/3d-game-shaders-for-beginners/inde...
For typical game physics engines... not that much. Math libraries like Eigen or Blaze use lots of template metaprogramming techniques under the hood that can help when you're doing large batched matrix multiplications (since it can remove temporary allocations at compile-time and can also fuse operations efficiently, as well as applying various SIMD optimizations), but it doesn't really help when you need lots of small operations (with mat3 / mat4 / vec3 / quat / etc.). Typical game physics engines tend to use iterative algorithms for their solvers (Gauss-Seidel, PBD, etc...) instead of batched "matrix"-oriented ones, so you'll get less benefits out of Eigen / Blaze compared to what you typically see in deep learning / scientific computing workloads.
The codebases I've seen in many game physics engines seem to all roll their own math libraries for these stuff, or even just use SIMD (SSE / AVX) intrinsics directly. Examples: PhysX (https://github.com/NVIDIA-Omniverse/PhysX), Box2D (https://github.com/erincatto/box2d), Bullet (https://github.com/bulletphysics/bullet3)...
Project mention: How to build your interactive resume in 4 simple and 2 easy steps | dev.to | 2024-04-02When you decide on the high-level design of the resume, start building your map in Tiled. You can customise the map from the basic game you already have or build your one from scratch - just try and see what works best for you.
Project mention: The Asset-Importer-Lib Minor Release Version 5.3.0 is out | /r/GraphicsProgramming | 2023-09-26
Project mention: Using Jolt with flecs & Dear ImGui: Game Physics Introspection | dev.to | 2024-04-17EnTT is a popular alternative to flecs for C++, which has different performance/memory characteristics.
Steam does have a NAT traversal/punchthrough service too. It's apparently usable without Steam according to their README on https://github.com/ValveSoftware/GameNetworkingSockets but honestly the only easy to use implementation I know is in Facepunch.Steamworks which requires a SteamID to initialize
Project mention: Amazon Lays Off 180 Employees in Its Games Division | news.ycombinator.com | 2023-11-13
Project mention: Risking my life for an entire solar system of lentils | /r/Frugal_Jerk | 2023-12-11
Project mention: Ask HN: Yo wants to build a game, I'm lost. What can I do? | news.ycombinator.com | 2024-01-17I've built a few games with my son over the years. The fun part for us was all about fast iteration, and then laughing at the bugs together.
There are some other recommendations here for how to approach 3d, and he is specifically asking for 3d -- but I want to put in one more pitch for 2d: the fun-to-tedium ratio can be much higher.
I wonder if you could spend some time prototyping some of his ideas in LÖVE https://love2d.org/ -- if you show him the smallest sketch of something working, he might have an idea about what to add next.
Many years ago, on a flight, we went from 0 to game before we landed (with no experience).
Panda3D (MIT/C++) https://github.com/panda3d/panda3d
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-20If you specifically want to learn shader programming then https://shadered.org/ is a lot more practical than Shadertoy.
Looks more like https://github.com/thedmd/imgui-node-editor/ to me - both are great libraries though.
Project mention: So You've Decided to Move from Unity to Unreal Engine | news.ycombinator.com | 2023-09-14A course that finally made Unreal "click" for me, after years of toying with it, was Tom Looman's 'Professional Game Development in C++ and Unreal Engine' course. The source for what you build (with the chapters available in the git history) is here. [1] It was based on a class he taught and so also includes homework, which I found infinitely more valuable than just following along in a 'Here's how to [x].' type lesson.
[1] - https://github.com/tomlooman/ActionRoguelike
C++ Game development related posts
-
Lessons from Open-Source Game Projects
-
Open-Source OpenGL/SDL2 Reimplementation of Sid Meier's Alpha Centauri
-
Show HN: Detonator2D a 2D game engine and editor
-
Show HN: Header only C++23 library for gamedev (back end agnostic)
-
Show HN: A variant of Conway's Game of Life in color you can run on your phone
-
The Book of Shaders
-
Can we make games using react native? Im new to this and I just made some to do, and video player apps. So I'm just curious so I can make iOS and playstore apps.
-
A note from our sponsor - SaaSHub
www.saashub.com | 3 May 2024
Index
What are some of the best open-source Game development projects in C++? This list will help you:
Project | Stars | |
---|---|---|
1 | Godot | 83,900 |
2 | imgui | 55,870 |
3 | Cocos2d | 17,900 |
4 | 3d-game-shaders-for-beginners | 17,063 |
5 | Bullet | 11,907 |
6 | tiled | 10,631 |
7 | assimp | 10,283 |
8 | entt | 9,469 |
9 | GameNetworkingSockets | 7,830 |
10 | o3de | 7,367 |
11 | Recast/Detour | 6,222 |
12 | JoltPhysics | 5,595 |
13 | Piccolo | 5,530 |
14 | endless-sky | 5,374 |
15 | cocos-engine | 5,306 |
16 | love | 4,378 |
17 | Panda3D | 4,270 |
18 | SHADERed | 4,188 |
19 | NoahGameFrame | 3,879 |
20 | defold | 3,710 |
21 | imgui-node-editor | 3,356 |
22 | lumixengine | 3,343 |
23 | ActionRoguelike | 3,207 |
Sponsored