30 open-source projects similar to soulwire/coffee-physics, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Coffee Physics alternative.
LittleJS is a lightweight HTML5 2D game engine designed for building web games using Canvas and WebGL without external dependencies. It integrates a WebGL sprite renderer, a 2D physics engine for arcade-style collisions and rigid-body dynamics, and a grid-based A* pathfinding system for entity navigation. The engine is distinguished by its procedural audio synthesizer, which generates music and sound effects at runtime using parameter arrays to minimize file sizes. It also features a comprehensive graphics pipeline that supports custom fragment-shader post-processing and a dynamic 2D lighting
planck.js is a 2D rigid body physics engine for JavaScript and HTML5, based on Box2D. It provides a framework for simulating physical interactions and calculating the motion of solid objects within a two-dimensional virtual environment. The engine is designed for cross-platform web gaming, enabling the implementation of rigid body dynamics across different web browsers and devices. The library manages simulation through a constraint-based physics solver and rigid body state management. It utilizes iterative impulse resolution, semi-implicit Euler integration, and dynamic AABB tree partitioni
FlappySwift is a side-scrolling arcade game implementation built for Apple platforms. Developed using the Swift programming language, this 2D game project features a physics-based environment where a player controls a character to avoid obstacles. The project utilizes the SpriteKit framework to handle rigid body dynamics, gravitational forces, and sprite-based rendering. Game flow is managed through a state machine that controls transitions between the start menu, active gameplay, and game over screens. The implementation covers 2D physics simulation, including bounding-box collision detecti
cocos2d-iphone is a framework for 2D game development and the creation of two-dimensional graphical applications. It enables cross-platform development for iOS and macOS using Objective-C and high-performance graphics rendering. The project provides tools for building interactive environments, including the creation of orthogonal, isometric, or hexagonal tile-based maps. It supports the implementation of rigid body dynamics and collision detection through a 2D physics simulation system. The framework covers a broad range of capabilities, including sprite-based rendering, audio playback manag
This project is a multi-purpose web platform serving as a canvas 2D game engine, a frontend engineering blog, and a markdown static site generator. It functions as a web graphics showcase and a technical knowledge base for sharing architectural decisions and performance optimizations. The platform implements a high-performance graphics framework using low-level drawing APIs, integrating skeletal animation and web physics for collision detection and realistic motion of two-dimensional objects. It simultaneously operates as a system for converting markdown source files into pre-rendered HTML pa
PhysicsJS is a JavaScript physics engine and 2D rigid body simulator designed to calculate the collisions, constraints, and dynamics of physical bodies. It functions as a modular physics library for simulating the movement and interaction of circular bodies and convex polygons. The engine implements constraint-based dynamics to enforce distance and angle constraints between objects, enabling the creation of articulated structures and linked physics. It utilizes impulse-based resolution to handle collisions and prevent objects from passing through one another. The library provides capabilitie
LiquidFun is a 2D physics engine and game physics framework designed to calculate movement and collisions for rigid bodies and particle systems. It functions as a simulation tool for integrating real-time physical interactions and dynamics into interactive applications. The framework specifically provides a particle-based fluid simulator to model liquid dynamics, including splashing, displacement, and surface tension. It also includes a soft body physics simulator for creating deformable and elastic objects that react to physical forces. The engine covers a broad range of physical interactio
This repository is a comprehensive collection of functional 2D and 3D demo projects and implementation samples for the Godot Game Engine. It serves as an interactive tutorial and reference library, providing a working codebase to demonstrate how to apply engine features in real-world scenarios. The collection focuses on practical implementation guides, covering a wide array of technical capabilities from basic engine fundamentals to advanced rendering and scripting techniques. It allows users to study the application of node-based composition, asset pipelines, and game logic through direct ex
Matter-js is a 2D rigid body physics engine written in JavaScript for simulating realistic physical interactions, collisions, and dynamics in web browsers. It functions as a web physics simulation library that calculates motion, gravity, and constraints for objects rendered on a web canvas. The library includes a built-in canvas physics visualizer to draw physical bodies, joints, and constraints for debugging and gameplay. It distinguishes itself through a plugin system that supports recursive dependency resolution and internal method patching to inject custom logic into the engine's executio
Avian is a 2D physics engine and rigid body dynamics simulator designed to calculate physical motion using mass, forces, and velocity. It provides a framework for simulating rigid body dynamics, collision detection, and joint constraints for games and applications. The engine utilizes a modular physics pipeline with a plugin-based architecture, allowing for the customization of simulation fidelity settings and the extension of collision backends. It includes a specialized kinematic character controller for implementing entity movement and sliding behavior against physical geometry. The syste
This is a game engine library for building interactive games using React and React Native components. It provides a centralized game loop and state management system to coordinate logic and updates on every game tick. The framework includes a coordinate system for cross-platform scaling that distributes factors across a component tree to maintain consistent positioning across different screen sizes. It also features a sprite animation system for rendering sequential frames from sprite sheets and a tile map renderer that constructs multi-layered terrain using a tile atlas and grid-based indexe
verlet-js is a JavaScript 2D physics engine and Verlet integration library used to simulate point masses and geometric constraints. It functions as a computational tool for calculating particle movement and structural interactions to create stable physics animations in browser environments. The project acts as a geometric constraint solver that enforces fixed distances and angles between interconnected nodes. This allows for the modeling of complex physical shapes and structures, such as cloth or rigid bodies, by iteratively adjusting particle positions. The engine includes a canvas animatio
Box2D is a 2D physics engine and rigid body simulator designed to compute collisions, forces, and joints in a two-dimensional plane. It functions as a collision detection library and a constraint-based physics solver that calculates the movement and interaction of solid objects using mass, friction, and restitution properties. The engine ensures consistency across different hardware architectures through a deterministic trigonometry implementation. It prevents high-speed objects from passing through boundaries using continuous collision detection and time-of-impact interpolation. The system
Space Station 14 is a C# multiplayer game and roleplay simulation framework. It is built upon an Entity-Component-System (ECS) game engine that separates logic into systems and data into components to manage complex entity interactions. The project functions as a grid-based physics simulator with a YAML data-driven prototype system for defining game objects. The project features a specialized 2D sprite rendering engine that maps server-side appearance data to client-side shaders. It implements a networking model with client-side prediction and dirty-flagged state synchronization to reduce inp
Flame is a 2D game engine for Flutter and Dart. It provides a component-based game framework for managing entities and their lifecycles through a hierarchical architecture, alongside a dedicated system for game asset management and input handling. The engine distinguishes itself through a specialized integration layer for external physics engines to handle rigid body dynamics and collision detection. It also features a high-performance task model that uses isolates to offload heavy computations and prevent main thread blocking. The framework covers a broad range of capabilities including vis
Flame is a 2D game engine and framework for Flutter. It provides a component-based architecture to organize scene entities and manage their lifecycles through a structured hierarchy of game objects, coordinated by a consistent game loop. The engine includes a graphics library for rendering animated sprites, particle effects, and external textures. It features a 2D physics integration layer that supports rigid body dynamics and collision detection between entities. The framework covers additional capabilities for game engineering, including user input capture for gestures and gamepads, audio
This project is a technical guide and implementation library for advanced visual effects and hardware-accelerated animations using the Core Animation framework on iOS. It provides a comprehensive reference for creating high-performance motion graphics, custom graphic rendering, and the construction of 3D engines using perspective transforms and Z-axis manipulation. The collection distinguishes itself through a deep focus on GPU rendering optimization and graphics performance. It covers advanced strategies to maintain high frame rates, such as reducing offscreen rendering via shadow path optim
Urho3D is a cross-platform 3D game engine written in C++. It uses a component-based scene graph to compose game objects from nodes and attached components, separating transforms from behaviors for modular design. The engine integrates AngelScript and Lua scripting for game logic, uses the Bullet library for physics simulation, and renders scenes with OpenGL or Direct3D through forward, deferred, or light pre-pass pipelines with customizable render passes and shadow mapping. The engine distinguishes itself with a built-in visual scene and UI editor for composing 3D worlds and interface layouts
cannon.js is a JavaScript 3D physics engine designed for calculating rigid body dynamics and collisions in three-dimensional space. It functions as a rigid body dynamics engine that models mass, friction, and velocity to determine object movement, while providing a mathematical framework for applying physical constraints and joints. The engine supports a variety of collision volumes, including spheres, boxes, convex polyhedrons, heightfields for terrain simulation, and complex triangle meshes. It provides tools for identifying intersections between these shapes and calculating the exact areas
cocos2d-objc is an Objective-C 2D game engine designed for developing interactive games and applications. It serves as a cross-platform game framework that enables the deployment of a shared codebase across iOS, tvOS, and macOS. The project features a hardware-accelerated 2D renderer utilizing OpenGL and Metal to display sprites, tile maps, and particle effects. It includes a dedicated OpenAL audio engine for managing music and spatialized sound effects, alongside a cross-platform input handler for processing touch, mouse, keyboard, and accelerometer events. The framework provides capabiliti
Anypixel is a web-to-hardware display framework and toolkit for building large-scale physical interactive screens and button walls. It provides a system for mapping HTML canvas graphics to physical LED arrays, combining a networked pixel controller with a management tool that translates web application data into electronic signals for microcontroller-driven display boards. The project features a browser-based hardware simulation environment that allows for testing interactive display logic, button events, and network communication without requiring physical components. This emulator enables t
p5.js is a JavaScript creative coding library and generative art framework. It serves as a web-based graphics engine and a high-level HTML5 Canvas wrapper designed to produce algorithmic imagery and responsive audio-visual experiences. The project provides a simplified sketching API for rendering 2D and 3D graphics directly in a web browser. It enables the creation of interactive animations, generative art, and digital experiences that respond to user input. The library covers a range of applications including interactive data visualization, browser-based multimedia art, and educational prog
laxxx is a lightweight JavaScript framework for creating scroll-driven animations and DOM element bindings. It functions as a CSS interpolation engine and animation utility that maps numeric driver values to HTML attributes and styles in real time. The framework specializes in linking visual properties to scroll position and velocity, featuring built-in inertia to smooth out transitions and prevent abrupt visual jumps. It utilizes a driver-based system to generate numeric streams from inputs like mouse movement or time, which are then transformed into CSS outputs through easing equations and
particles.js is a JavaScript particle animation library and visual effects engine used to create interactive, canvas-based simulations for web interfaces. It enables the generation of dynamic background animations and networked visual effects through coordinate-based particle movements. The library features a system for drawing connecting lines between particles based on proximity to create network-style visualizations. It includes mechanisms for mapping mouse movements and click events to specific particle behaviors, such as attraction or repulsion. Users can configure particle density, opa
Two.js is a multi-backend graphics engine and vector drawing library that provides a unified API for creating two-dimensional graphics and animations. It functions as a renderer-agnostic abstraction layer, allowing users to generate vector shapes and paths that can be rendered via SVG, Canvas2D, or WebGL. The engine includes a scene graph manager to organize objects into hierarchical groups, enabling the propagation of collective transformations and parent-child relationships. It also features a headless graphics renderer, providing a node-based implementation for generating 2D drawings in se
React Lottie is a component for rendering scalable vector animations inside React applications by parsing exported design files directly into scalable elements. It functions as a vector motion graphics player that displays motion graphics within user interface layouts and integrates directly with component properties. The component synchronizes playback states and timeline triggers with component lifecycle methods while parsing exported JSON graphic data into scalable shape elements. It supports dynamic asynchronous resource loading to fetch external animation data payloads at runtime, keepin
This is a comprehensive library of code examples and reference implementations for building cross-platform user interfaces with Flutter. The project provides a collection of demo applications and guides designed to illustrate the implementation of design patterns, animation techniques, and testing workflows. The repository features specific demonstrations for native integration, including examples of embedding modules into existing native applications, using platform channels, and bridging native code with the framework. It also serves as an animation reference, providing implementations for
Lab is a customizable 3D platform and research testbed designed for training and testing autonomous agents using reinforcement learning. It serves as a spatial AI training simulator where agents can be evaluated through navigation and puzzle-solving tasks. The environment allows for the definition of complex layouts and task behaviors through external scripting, enabling the generation of specific challenges for AI research. It supports both automated training via standard API bindings and manual agent control to validate simulation dynamics. The system utilizes a grid-based spatial represen
Rebound is a Java motion framework and physics engine designed to create natural physical movement in user interface animations. It functions as a spring physics library that models forces and oscillations to drive fluid interface transitions. The framework implements interactive motion design by simulating real-world spring dynamics and physical forces rather than using linear transitions. This allows for the creation of organic motion within Java applications. The engine handles physics-based animation through spring-based simulations, employing discrete time-step integration and frame-ind