Open-source simulation software
1601 open-source libraries, tools and applications tagged simulation, ranked by how closely simulation is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
1601 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| greerviau/SnakeAI A Processing application that trains neural networks to play the game Snake using a genetic algorithm with crossover and mutation across ge… | 32 | 2390 | maintenance |
| alecthomas/entityx EntityX is a fast, type-safe Entity Component System (ECS) library for C++11 that decouples entity logic and data from entity objects. It p… | 36 | 2346 | maintenance |
| koide3/hdl_graph_slam hdl_graph_slam is an open-source ROS package for real-time 6DOF SLAM using 3D LIDAR, based on graph SLAM with NDT scan matching odometry an… | 32 | 2337 | maintenance |
| OOMWOO OOMWOO is an open-source DIY robot vacuum cleaner built with a Raspberry Pi, ESP32, Arduino, 3D-printed chassis, and 2D LiDAR for SLAM-base… | 59 | 12221 | experimental |
| facebookresearch/pyrobot PyRobot is a lightweight, high-level Python library providing hardware-independent APIs for robotic manipulation and navigation, built on t… | 10 | 2305 | maintenance |
| MineDojo MineDojo is an AI research framework built on Minecraft for training open-ended, generally capable embodied agents. It provides a simulatio… | 23 | 2277 | maintenance |
| Godot Heightmap Terrain A heightmap-based terrain plugin for the Godot game engine, implemented entirely in GDScript. It provides terrain sculpting, texture painti… | 71 | 2276 | maintenance |
| EzySlice EzySlice is an open-source mesh slicing framework for the Unity3D game engine, written entirely in C#. It slices convex meshes using a plan… | 23 | 2276 | maintenance |
| MikeFricker/StreetMap An Unreal Engine plugin that imports OpenStreetMap XML (.osm) data as a StreetMap asset type and renders streets and buildings in 3D. It in… | 32 | 2272 | maintenance |
| wdas/brdf Disney BRDF Explorer is a desktop application for developing, loading, and analyzing bidirectional reflectance distribution functions (BRDF… | 32 | 2268 | maintenance |
| toolbox4minecraft/amidst Amidst is a Java desktop application that renders an overview map of a Minecraft world from just a seed and version, without generating the… | 44 | 2267 | maintenance |
| onlytailei/CppRobotics A C++ implementation of robotics algorithms from PythonRobotics, covering localization, mapping, SLAM, path planning, and path tracking con… | 32 | 2235 | maintenance |
| QuipNetwork/quip-miner A Python mining stack for the Quip Network Substrate chain that coordinates CPU (simulated annealing), GPU (CUDA/Metal/Modal), and QPU (D-W… | 61 | 11592 | experimental |
| thu-ml/zhusuan ZhuSuan is a Python probabilistic programming library for Bayesian deep learning built on TensorFlow. It provides primitives for building p… | 32 | 2216 | maintenance |
| br3ttb/Arduino-PID-Library A PID (Proportional-Integral-Derivative) feedback control library for Arduino, written in C++. It provides basic closed-loop control functi… | 23 | 2205 | maintenance |
| mkeeter/antimony Antimony is a computer-aided design (CAD) application with a node-based, scriptable workflow, described as CAD from a parallel universe whe… | 40 | 2190 | maintenance |
| Matthew-J-Spencer/Ultimate-2D-Controller A Unity C# 2D character controller template implementing polished platformer movement tricks like coyote time, action buffering, and apex m… | 32 | 2171 | maintenance |
| nvdla/hw The hardware release of NVIDIA's open-source Deep Learning Accelerator (NVDLA), containing Verilog RTL, a C-model, testbenches, and synthes… | 32 | 2166 | maintenance |
| mike4192/spotMicro Open-source software for controlling a 3D-printed Spot Micro quadruped robot, implementing sit, stand, angle, and walking motion via ROS no… | 32 | 2158 | maintenance |
| TorqueGameEngines/Torque3D Torque3D is an open-source (MIT licensed) 3D game engine originally developed by GarageGames, written in C++. It supports building games fo… | 66 | 2132 | maintenance |
| Kimera Kimera is a modular C++ library for real-time metric-semantic SLAM that builds semantically annotated 3D meshes from camera and inertial da… | 32 | 2130 | maintenance |
| DrFlower/TowerDefense-GameFramework-Demo A tower defense game demo built on Unity's open-source GameFramework, re-implementing Unity's official Tower Defense Template. It serves as… | 32 | 2123 | maintenance |
| SlightlyMad/VolumetricLights An open-source Unity extension that adds volumetric fog and light shafts to built-in Unity lights using ray marching in the light's volume.… | 32 | 2116 | maintenance |
| FIRMADYNE FIRMADYNE is an automated, scalable platform for emulating and dynamically analyzing Linux-based embedded firmware using QEMU with instrume… | 32 | 2114 | maintenance |
| fogleman/pt A CPU-only unidirectional path tracing engine written in pure Go with a simple API. It supports OBJ/STL meshes, textures, SDF raymarching, … | 32 | 2108 | maintenance |
| Openarl/PathOfBuilding An offline build planner for the game Path of Exile, written in Lua. It calculates character offense/defense stats, plans passive skill tre… | 23 | 2107 | maintenance |
| doyubkim/fluid-engine-dev Jet is a C++11 fluid simulation engine SDK for computer graphics, created alongside the book 'Fluid Engine Development'. It provides SPH, P… | 23 | 2102 | maintenance |
| SebLague/Path-Creator A Unity asset for creating and editing Bézier paths in the Unity editor, useful for defining roads, tracks, and object movement paths. It i… | 32 | 2095 | maintenance |
| generalized-intelligence/GAAS GAAS (Generalized Autonomy Aviation System) is an open-source C++ framework for fully autonomous VTOL aircraft and drones, built around lid… | 23 | 2094 | maintenance |
| KRALYN/PositronV3 PositronV3 is an open-source hardware design for an upside-down, compact, portable, fast 3D printer that folds up and fits in a filament sp… | 23 | 2092 | maintenance |
| facebookresearch/ELF ELF is an end-to-end, lightweight and flexible C++/Python platform for game research, focused on real-time strategy games. It hosts multipl… | 10 | 2092 | maintenance |
| flowdriveai/flowpilot Flowpilot is an open source driver assistance system built on top of openpilot that provides adaptive cruise control, automated lane center… | 23 | 2071 | maintenance |
| knightcrawler25/GLSL-PathTracer A toy physically based GPU path tracer written in C++ that runs its rendering loop in GLSL fragment shaders via OpenGL. It supports feature… | 23 | 2064 | maintenance |
| EKA2L1/EKA2L1 EKA2L1 is an open-source emulator for Symbian OS and the Nokia N-Gage, written in C++17. It emulates the EKA1/EKA2 kernels and reimplements… | 68 | 2055 | maintenance |
| PyMesh/PyMesh PyMesh is a rapid prototyping geometry processing library for Python, with performance-critical algorithms implemented in C++ and exposed v… | 23 | 2050 | maintenance |
| lukechilds/dockerpi A Docker image that boots a full virtualised ARM Raspberry Pi running Raspbian via QEMU. It supports Pi 1 by default with experimental Pi 2… | 32 | 2045 | maintenance |
| PokemonUnity/PokemonUnity PokemonUnity is a legacy C# framework providing the core backend game logic for building Pokémon-style RPG games, such as battles, moves, s… | 51 | 2030 | maintenance |
| XUANTIE-RV/wujian100_open wujian100_open is an open-source RISC-V-based MCU SoC platform from T-Head, providing RTL source code, an SDK, simulation scripts, and FPGA… | 32 | 2026 | maintenance |
| a327ex/SNKRX SNKRX is a replayable arcade shooter roguelite where the player steers a snake of heroes that automatically attack nearby enemies. It is bu… | 32 | 2000 | maintenance |
| BCN3D/BCN3D-Moveo BCN3D Moveo is an open-source, fully 3D-printed robotic arm designed for educational purposes, including CAD files, STL files, firmware, as… | 32 | 1994 | maintenance |
| furnishup/blueprint3d A customizable TypeScript library built on three.js for designing interior spaces like homes and apartments in 3D. It provides 2D floorplan… | 23 | 1985 | maintenance |
| KumarRobotics/msckf_vio A stereo visual-inertial odometry package implementing the Multi-State Constraint Kalman Filter (MSCKF) in C++ on ROS. It fuses synchronize… | 32 | 1979 | maintenance |
| Themaister/Granite Granite is a personal Vulkan renderer written in C++, featuring a simplified Vulkan abstraction layer and a fairly complete render graph im… | 75 | 1961 | maintenance |
| UnityMMO UnityMMO is an open-source 3D MMORPG demo built with Unity on the client side and the Skynet server framework on the backend. Gameplay logi… | 32 | 1958 | maintenance |
| Creality3DPrinting/Ender-3 Official repository for the Creality3D Ender-3, a fully open-source budget 3D printer. It hosts the printer's source files, including firmw… | 32 | 1957 | maintenance |
| Balanduino A small C++ Kalman filter library for microcontrollers that fuses accelerometer/magnetometer and gyroscope input to estimate angle, rate, a… | 32 | 1950 | maintenance |
| watabou/TownGeneratorOS The open-source Haxe code behind the Medieval Fantasy City Generator, a procedural tool that generates medieval fantasy city maps. It uses … | 32 | 1928 | maintenance |
| mp3guy/ElasticFusion ElasticFusion is a real-time dense visual SLAM system that builds globally consistent surfel-based 3D maps of room-scale environments from … | 44 | 1927 | maintenance |
| FUE5BASE/FUE5 FUE5 is a fan-made Unreal Engine 5 project that recreates Factorio bases in 3D, letting players import their in-game factories via a compan… | 30 | 1925 | maintenance |
| Yvictor/TradingGym TradingGym is an OpenAI Gym-style Python toolkit providing trading environments for training reinforcement learning agents and backtesting … | 32 | 1920 | maintenance |
| karlkurzer/path_planner A C++ implementation of the Hybrid A* path planning algorithm for nonholonomic autonomous vehicles, developed for the KTH Research Concept … | 62 | 1919 | maintenance |
| KytyPS5/KytyPS5 KytyPS5 is a free, open-source PlayStation 5 emulator written in C++, based on a heavily modified version of Kyty. It can boot a limited se… | 78 | 9532 | experimental |
| jonnyhyman/Chaos A collection of standalone Python scripts that visualize the connections between chaos theory, fractals, and the logistic map, created for … | 32 | 1889 | maintenance |
| TixiaoShan/LVI-SAM LVI-SAM is a tightly-coupled Lidar-Visual-Inertial Odometry and mapping system implemented in C++ on ROS, combining LIO-SAM and VINS-Mono a… | 32 | 1884 | maintenance |
| ANYbotics/elevation_mapping A ROS package for robot-centric elevation mapping of rough terrain, built for mobile and legged robots equipped with pose estimation and di… | 32 | 1878 | maintenance |
| evanw/csg.js A small JavaScript library implementing Constructive Solid Geometry (CSG) on 3D meshes using BSP trees. It supports Boolean operations like… | 32 | 1861 | maintenance |
| dege-diosg/dgVoodoo2 dgVoodoo2 is a wrapper library that translates legacy Glide and DirectX graphics APIs (DirectDraw, D3D1-9) onto modern D3D11/12, letting ol… | 91 | 1834 | maintenance |
| tunabrain/tungsten Tungsten is a high-performance physically based renderer written in C++11 that simulates full light transport through arbitrary geometry us… | 23 | 1834 | maintenance |
| leapmotion/ProjectNorthStar Open-source reference design for Leap Motion's Project North Star augmented reality headset, including mechanical CAD, electrical designs, … | 50 | 1822 | maintenance |
| s-macke/jor1k jor1k is an OpenRISC 1000 (and RISC-V) CPU emulator written in JavaScript that boots and runs Linux entirely in a web browser. It supports … | 51 | 1801 | maintenance |
| Unity-Technologies/VolumetricLighting A Unity library of lighting effects from the Adam demo, providing volumetric fog, area lights, and tube lights implemented with compute sha… | 32 | 1799 | maintenance |
| SebLague/Chess-Challenge A C# framework for the Chess Coding Challenge, where participants write tiny chess bots that compete in a tournament. It provides a board A… | 29 | 1778 | maintenance |
| starry-sky6688/MARL-Algorithms PyTorch implementations of classic multi-agent reinforcement learning algorithms (IQL, QMIX, VDN, COMA, QTRAN, MAVEN, CommNet, DyMA-CL, G2A… | 32 | 1764 | maintenance |
| laboshinl/loam_velodyne A ROS implementation of LOAM (Laser Odometry and Mapping), a realtime method for state estimation and 3D mapping using a Velodyne 3D lidar.… | 32 | 1763 | maintenance |
| GPGPU-Sim GPGPU-Sim is a cycle-level simulator that models contemporary NVIDIA GPUs running CUDA and OpenCL workloads, including support for TensorCo… | 78 | 1750 | maintenance |
| ncase/loopy LOOPY is a browser-based tool for modeling and simulating systems by drawing circles and arrows (causal loop diagrams). It lets users play … | 32 | 1746 | maintenance |
| kubernetes-up-and-running/kuard KUARD (Kubernetes Up And Running Demo) is a demo web application written in Go with a React frontend, designed to accompany the 'Kubernetes… | 32 | 1742 | maintenance |
| gaowenliang/imu_utils A ROS package written in C++ that analyzes IMU performance by computing Allan variance from stationary sensor data. It estimates gyroscope … | 61 | 1740 | maintenance |
| dwhinham/mt32-pi A baremetal kernel that turns a Raspberry Pi 3 or later into a Roland MT-32 emulator and SoundFont-based General MIDI synthesizer, built on… | 23 | 1729 | maintenance |
| google-research/torchsde A PyTorch library providing differentiable stochastic differential equation (SDE) solvers with GPU support and efficient backpropagation vi… | 10 | 1727 | maintenance |
| josephg/noisejs A small JavaScript library providing fast 2D and 3D Perlin and Simplex noise functions with seedable randomness. It is commonly used for pr… | 32 | 1719 | maintenance |
| ethz-adrl/control-toolbox The Control Toolbox (CT) is an open-source C++ library for modelling dynamical systems, control, estimation, trajectory optimization and mo… | 23 | 1714 | maintenance |
| StarCraft II API Blizzard's official StarCraft II Client API, providing protobuf protocol definitions and a reference C++ library for full external control … | 23 | 1684 | maintenance |
| i-saint/Unity5Effects A collection of Unity 5 rendering effect samples including temporal screen-space reflections, screen-space shadows, booleans, water surface… | 32 | 1682 | maintenance |
| ethz-asl/voxblox Voxblox is a C++ volumetric mapping library for building Truncated Signed Distance Field (TSDF) and Euclidean Signed Distance Field (ESDF) … | 32 | 1673 | maintenance |
| KikiLetGo/VirusBroadcast A Java-based simulation program that models virus broadcast/epidemic spread among a population. It was built quickly during the early COVID… | 32 | 1667 | maintenance |
| citybound/citybound Citybound is an open-source, multi-player city building simulation game written in Rust, focused on realism and microscopic simulation of i… | 32 | 8171 | experimental |
| GarageGames/Torque2D Torque 2D is an MIT-licensed open source C++ 2D game engine originally from GarageGames, featuring OpenGL batched rendering, Box2D physics,… | 23 | 1662 | maintenance |
| dimforge/nphysics nphysics is a 2D and 3D rigid body physics engine for games and animations written in Rust, using ncollide for collision detection and nalg… | 32 | 1649 | maintenance |
| cebix/macemu Basilisk II and SheepShaver are open-source emulators that run classic Macintosh operating systems on modern hosts. Basilisk II emulates 68… | 32 | 1634 | maintenance |
| raulmur/ORB_SLAM ORB-SLAM is a real-time monocular SLAM system written in C++ that computes camera trajectories and sparse 3D reconstructions from a single … | 32 | 1633 | maintenance |
| abstracthat/dactyl-manuform A parameterized, split-hand, concave, columnar ergonomic keyboard generator written in Clojure, forked from the Dactyl keyboard with a Manu… | 32 | 1624 | maintenance |
| hku-mars/loam_livox A robust, real-time LiDAR odometry and mapping (LOAM) package designed for Livox LiDARs with small field of view. It provides feature extra… | 23 | 1624 | maintenance |
| uzh-rpg/rpg_svo_pro_open SVO Pro is a C++ implementation of Semi-direct Visual Odometry from the Robotics and Perception Group at University of Zurich, supporting m… | 32 | 1613 | maintenance |
| gabrielrcouto/php-terminal-gameboy-emulator A Game Boy emulator written in PHP that renders games directly in the terminal. It runs Game Boy and Game Boy Color ROMs using PHP 7's perf… | 23 | 1611 | maintenance |
| inconvergent/weird A generative art system written in Common Lisp, providing 2D/3D vector math, an undirected graph data structure, random number utilities, a… | 10 | 1597 | maintenance |
| itsfrank/MinecraftHDL MinecraftHDL is a Verilog synthesis flow that compiles digital logic designs written in Verilog into Minecraft redstone circuits. It uses i… | 23 | 1595 | maintenance |
| niessner/BundleFusion BundleFusion is a real-time, globally consistent 3D reconstruction system for RGB-D input, published at SIGGRAPH 2017. It estimates globall… | 32 | 1590 | maintenance |
| GDQuest/godot-steering-ai-framework A GDScript framework for the Godot game engine implementing steering behaviors (seek, flee, path following, group behaviors, etc.) for smoo… | 23 | 1579 | maintenance |
| ShapeLab/SwarmUI Zooids is an open-source, open-hardware platform for building tabletop swarm user interfaces, consisting of small wheeled micro robots, a r… | 32 | 1567 | maintenance |
| petercorke/robotics-toolbox-matlab A MATLAB toolbox providing robotics functionality including kinematics and dynamics of serial-link manipulators, mobile robot motion models… | 23 | 1561 | maintenance |
| Unknown Horizons Unknown Horizons is an open-source 2D isometric real-time strategy simulation game focused on economy and city building, written in Python.… | 66 | 1552 | maintenance |
| OneLoneCoder/olcNES olcNES is a Nintendo Entertainment System (NES) emulator written in C++ by OneLoneCoder, built as companion code for a tutorial video serie… | 32 | 1546 | maintenance |
| cruxopen/openISP An open-source Python implementation of an Image Signal Processor (ISP) pipeline that converts RAW sensor images to RGB/YUV. It simulates h… | 32 | 1537 | maintenance |
| mattatz/unity-voxel A Unity library that converts triangle meshes into voxel representations using both GPU (compute shader) and CPU voxelizers. It supports bu… | 32 | 1524 | maintenance |
| Nadrin/PBR A demo application implementing physically based shading and image based lighting in four graphics APIs: OpenGL 4.5, Vulkan, Direct3D 11, a… | 32 | 1524 | maintenance |
| SebLague/Slime-Simulation A Unity-based implementation of the Physarum (slime mold) agent-based simulation, created by Seb Lague as a companion to a YouTube video. I… | 32 | 1515 | maintenance |
| ethz-asl/rotors_simulator RotorS is a Gazebo-based simulator for micro aerial vehicles (MAVs/UAVs) built on ROS, providing multirotor models like the AscTec Hummingb… | 32 | 1508 | maintenance |
| XUANTIE-RV/openc910 OpenC910 is the open-source RTL (Verilog) implementation of T-Head's Xuantie C910 RISC-V processor core, released under Apache-2.0. It incl… | 32 | 1479 | maintenance |
| erwincoumans/motion_imitation A Python research codebase accompanying the paper 'Learning Agile Robotic Locomotion Skills by Imitating Animals'. It provides a Gym enviro… | 32 | 1470 | maintenance |