C++ Simulation

Open-source C++ projects categorized as Simulation

Top 23 C++ Simulation Projects

  • OpenRCT2

    An open source re-implementation of RollerCoaster Tycoon 2 🎒

  • Project mention: Lessons from Open-Source Game Projects | dev.to | 2024-04-10

    OpenRCT2 - Roller Coster Tycoon 2 clone. C++, SDL2, OpenGL

  • Bullet

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

  • Project mention: Blaze: A High Performance C++ Math library | news.ycombinator.com | 2024-04-17

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

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

    InfluxDB logo
  • engine-sim

    Combustion engine simulator that generates realistic audio.

  • Project mention: How to Ride like a Cop [video] | news.ycombinator.com | 2023-09-30

    Well, it's a good video but... Hacker News?

    On the related topic, you know how in Ford Mustang the engine noise is simulated so the engine would sound like a pre-emission-standards V8 even if it runs on just four? How about a similar thing for a motorcycle? You put on your noise-canceling head phones, and the phones emit a "noise-canceled" rev of an engine you choose. You can enjoy the sound of a Harley on a moped. And! Since it's your headphones only, you wouldn't even bother the public.

    I think there is a startup potential on it somewhere. And the technology is here too: https://github.com/ange-yaghi/engine-sim

  • OpenTTD

    OpenTTD is an open source simulation game based upon Transport Tycoon Deluxe

  • Project mention: Lessons from Open-Source Game Projects | dev.to | 2024-04-10

    OpenTTD - Open source simulation game based upon Transport Tycoon Deluxe. C++, SDL2

  • 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
  • The-Powder-Toy

    Written in C++ and using SDL, The Powder Toy is a desktop version of the classic 'falling sand' physics sandbox, it simulates air pressure and velocity as well as heat.

  • Project mention: Lessons from Open-Source Game Projects | dev.to | 2024-04-10

    The Power Toy - Physics Sandbox. C++, SDL2

  • FluidX3D

    The fastest and most memory efficient lattice Boltzmann CFD software, running on all GPUs via OpenCL.

  • Project mention: FluidX3D | news.ycombinator.com | 2024-03-24
  • SaaSHub

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

    SaaSHub logo
  • OpenCat

    An open source quadruped robot pet framework for developing Boston Dynamics-style four-legged robots that are perfect for STEM, coding & robotics education, IoT robotics applications, AI-enhanced robotics application services, research, and DIY robotics kit development.

  • Project mention: Petoi Bittle – a programmable robot dog | news.ycombinator.com | 2024-04-24

    We have the APIs through OpenCat(https://github.com/PetoiCamp/OpenCat). You can control every servo movement via coding.

  • webots

    Webots Robot Simulator

  • Project mention: Robotics Simulation - Bridging the Gap Between Virtual and Real Worlds | dev.to | 2023-09-28

    Open Robotics Resources - Provides guides and documentation for robotics simulation.

  • sumo

    Eclipse SUMO is an open source, highly portable, microscopic and continuous traffic simulation package designed to handle large networks. It allows for intermodal simulation including pedestrians and comes with a large set of tools for scenario creation.

  • AntSimulator

    Simple Ants simulator

  • lammps

    Public development project of the LAMMPS MD software package

  • CHRONO

    High-performance C++ library for multiphysics and multibody dynamics simulations (by projectchrono)

  • Project mention: Any Good Alternatives for Matlab? | /r/AskEngineers | 2023-06-16

    Hopsan https://liu.se/en/research/hopsan and Project Chrono https://projectchrono.org/ may be good Simulink alternatives.

  • unrealcv

    UnrealCV: Connecting Computer Vision to Unreal Engine

  • Blender-FLIP-Fluids

    The FLIP Fluids addon is a tool that helps you set up, run, and render high quality liquid fluid effects all within Blender, the free and open source 3D creation suite.

  • Project mention: How to stop fluid simulation from exploding? | /r/blenderhelp | 2023-07-09

    If all else fails, you may want to consider a premium addon like FLIP Fluids, which in my experience feels more stable than the default fluid sim, though it may be a bit costly. Consider trying the demo.

  • moose

    Multiphysics Object Oriented Simulation Environment

  • pioneer

    A game of lonely space adventure

  • SPlisHSPlasH

    SPlisHSPlasH is an open-source library for the physically-based simulation of fluids.

  • reactphysics3d

    Open source C++ physics engine library in 3D

  • gem5

    The official repository for the gem5 computer-system architecture simulator.

  • Project mention: Hot Chips 2023: Arm’s Neoverse V2 | news.ycombinator.com | 2023-09-12

    The idea is to write a C++ model that that produces cycle accurate outputs of the branch predictor, core pipeline, queues, memory latency, cache hierarchy, prefetch behaviour, etc. Transistor level accuracy isn't needed as long as the resulting cycle timings are identical or near identical. The improvement in workload runtime compared to a Verilog simulation is precisely because they aren't trying to model every transistor, but just the important parameters which effect performance.

    Let's take a simple example: Instead of modeling a 64-bit adder in all its gory transistor level detail, you can just have the model return the correct data after 1 "cycle" or whatever your ALU latency is. As long as that cycle latency is the same as the real hardware, you'll get an accurate performance number.

    What's particularly useful about these models is they enable much easier and faster state space exploration to see how a circuit would perform, well before going ahead with the Verilog implementation, which relatively speaking can take circuit designers ages. "How much faster would my CPU be if it had a 20% larger register file" can be answered in a day or two before getting a circuit designer to go try and implement such a thing.

    If you want an open source example, take a look at the gem5 project (https://www.gem5.org). It's not quite as sophisticated as the proprietary models used in industry, but it's a used widely in academia and open source hardware design and is a great place to start.

  • openmm

    OpenMM is a toolkit for molecular simulation using high performance GPU code.

  • jsbsim

    An open source flight dynamics & control software library

  • OpenLoco

    An open source re-implementation of Chris Sawyer's Locomotion

  • Project mention: OpenLoco | news.ycombinator.com | 2023-11-22
  • SaaSHub

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

    SaaSHub logo
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).

C++ Simulation related posts

  • Torax is a differentiable tokamak core transport simulator

    2 projects | news.ycombinator.com | 1 May 2024
  • Stunt Rally – a free rally racing game with editor

    1 project | news.ycombinator.com | 28 Apr 2024
  • The-Powder-Toy VS Sandboxels - a user suggested alternative

    2 projects | 1 Feb 2024
  • Noise limit: yes

    1 project | /r/openttd | 9 Dec 2023
  • Looking for specific pre-Microsoft Havok Physics SDK version (2013, 2014)

    1 project | /r/DHExchange | 7 Dec 2023
  • Software for Mechanism Analysis

    1 project | /r/MechanicalEngineering | 6 Dec 2023
  • How to Ride like a Cop [video]

    1 project | news.ycombinator.com | 30 Sep 2023
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 11 May 2024
    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. Learn more β†’

Index

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

Project Stars
1 OpenRCT2 12,962
2 Bullet 11,978
3 engine-sim 8,499
4 OpenTTD 5,958
5 JoltPhysics 5,627
6 The-Powder-Toy 4,351
7 FluidX3D 3,210
8 OpenCat 3,129
9 webots 3,029
10 sumo 2,282
11 AntSimulator 2,204
12 lammps 2,052
13 CHRONO 2,055
14 unrealcv 1,835
15 Blender-FLIP-Fluids 1,606
16 moose 1,579
17 pioneer 1,568
18 SPlisHSPlasH 1,497
19 reactphysics3d 1,435
20 gem5 1,424
21 openmm 1,389
22 jsbsim 1,221
23 OpenLoco 1,150

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com