30 open-source projects similar to unity-technologies/fpssample, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best FPSSample alternative.
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
Colyseus is a real-time multiplayer game framework for Node.js that provides an authoritative server model, delta-compressed state synchronization, and room-based session orchestration. It is designed to handle the core infrastructure of multiplayer games, including matchmaking, state management, and scalable process distribution across multiple servers. The framework distinguishes itself through its schema-based state definition, which enables automatic serialization and change tracking, combined with a binary WebSocket protocol for low-latency updates. Its matchmaking pipeline routes player
BrowserQuest is a WebSocket multiplayer game engine and real-time state synchronization tool. It functions as a web-based game server designed to manage concurrent connections and broadcast updates to maintain a consistent shared world state between a central server and distributed web clients. The project enables real-time multiplayer gaming and browser-based game development by implementing low-latency data exchange. It focuses on game state synchronization to ensure that multiple players interacting within the same environment see the same actions and world states simultaneously. The syst
Serious Engine is an open-source framework designed for the development and execution of first-person shooter titles. It provides an integrated environment for rendering complex three-dimensional combat spaces and managing the core gameplay logic required for high-speed action sequences. The engine utilizes an entity-component-system architecture to manage game objects, supported by script-driven logic that allows for gameplay modifications without requiring engine recompilation. It distinguishes itself through a specialized rendering pipeline that separates geometry calculations from lightin
This repository is a collection of reference implementations and sample projects demonstrating data-oriented design using the Unity Entities package. It provides a suite of examples for implementing an entity component system that separates game data into components and logic into systems. The collection includes specialized demonstrations for rendering large volumes of entities via graphics pipelines, implementing high-performance collision and rigid body dynamics through data-oriented physics, and managing multiplayer state synchronization using the network framework for entities. It also p
Quake III Arena is a first-person shooter game engine and arena combat simulator. It consists of the original C++ game source code for a cross-platform 3D game designed to run on Windows, Linux, and Mac. The project provides the source code necessary to render a first-person shooter experience, focusing on player-versus-player battles in closed 3D environments. It serves as a resource for legacy game preservation and the study of early 3D game engine construction. The engine incorporates spatial partitioning, client-side prediction, and state synchronization to manage multiplayer networking
This is an open-source 3D action-adventure game project built in Unity, providing a complete game development sample with player movement, combat, and exploration mechanics. The project is structured as a full Unity game project containing all assets, scenes, and scripts, designed for learning and extending game development skills through hands-on modification. The project implements core game systems through Unity's built-in features, including layered Animator state machines for character and enemy animation control, Scriptable Objects for modular game configuration, and a component-based e
KBEngine is a distributed game server engine and backend infrastructure designed for massively multiplayer online environments. It provides a multi-process architecture to handle high player concurrency and real-time interactions within a shared virtual world. The system features a scriptable game logic framework that combines a high-performance core with a high-level scripting language. This allows for game behavior modifications through a hot-fixable runtime that updates logic without requiring server restarts. The engine manages server scaling via dynamic load balancing across multiple ha
This project is a browser-based, real-time multiplayer action game where players control a character on a 2D canvas to absorb objects and grow in size. It utilizes a Node.js game server and WebSockets to synchronize game state, player movement, and chat across all connected participants. The application is delivered as a dockerized game application, ensuring consistent hosting and deployment across different cloud environments through containerized server environments. The system implements an authoritative server model that processes all game logic and physics to prevent cheating and mainta
The GoldSrc game engine is a 3D game framework and first-person shooter engine designed for building and running interactive software. It functions as a moddable game framework, providing a system for creating custom game rules and content through client-side code and shared libraries. The project includes a game engine SDK and development tools for compiling custom game logic into dynamic link libraries. This modular structure allows for the development and distribution of game modifications on Windows and Linux platforms.
Entitas is a data-oriented Entity Component System framework for Unity. It is designed to separate game state into components and logic into systems, utilizing a data-oriented design to optimize CPU cache usage, memory usage, and processing speed. The framework includes a C# source code generator that automatically produces boilerplate classes, entity accessors, and context singletons to reduce manual coding. It also provides a Unity editor debugging tool for real-time runtime state visualization, system performance monitoring, and visual entity inspection. The system manages entity lifecycl
This repository contains the C++ game source code for a single-player first-person shooter action game. It is a software implementation of the Id Tech 4 engine, designed for 3D rendering with a focus on real-time unified lighting and geometry. The project enables the modification of core engine logic and rendering systems. It serves as a resource for classic game engine modification, first-person shooter development, and retro game preservation. The engine utilizes a unified shader pipeline and stencil shadow volumes for lighting effects, alongside BSP tree spatial partitioning for visibilit
This project is a networked first-person shooter framework built for the Unity game engine. It provides a foundational architecture for managing multiplayer sessions, enabling real-time synchronization of player movement, health, and combat actions across all connected clients. The framework utilizes an authoritative server model to maintain a consistent game state, supported by remote procedure calls to handle networked events. It incorporates a component-based entity system to define gameplay logic and uses state machines to manage character animations, ensuring smooth transitions between m
ET is a C# game server framework and distributed actor model runtime designed for large-scale multiplayer environments. It provides a comprehensive toolkit for building distributed game backends, incorporating a multiplayer network transport layer and a specialized suite for game AI and pathfinding. The framework is distinguished by its use of a distributed actor model to scale processing across multiple threads and servers, utilizing isolated actors for state management and messaging. It features a unified codebase architecture that allows shared logic between the server and client, enabling
KCP is a low-latency transport protocol and reliability layer designed to provide TCP-like guaranteed delivery and ordering over UDP. It implements an automatic repeat request protocol to minimize network jitter and delays, prioritizing timeliness over bandwidth efficiency. The project distinguishes itself through a pluggable congestion controller and flow control logic, allowing the transport layer to be tuned for specific network environments. It includes a NAT keep-alive system that uses periodic heartbeat packets to maintain active communication paths and prevent address translation timeo
Quake-2 is a game engine designed for the development of first-person shooters and the rendering of three-dimensional environments. It provides the core framework for processing real-time physics and player input within interactive 3D spaces. The engine supports software extensibility, allowing for the direct modification of source code to change gameplay mechanics and engine behaviors. This makes it a resource for retro game engineering and the study of early 3D development techniques. Its technical capabilities include vertex-based software rendering, BSP-tree spatial partitioning, and PVS
Amethyst is a data-driven game engine written in Rust for building high-performance 2D and 3D games. It is built on an entity component system architecture that decouples game state from logic to enable parallel processing and reusable code. The framework features a glTF 3D renderer for importing scenes and geometry using physically based materials. It also serves as a multiplayer game framework, providing network transport abstractions and state synchronization for real-time online experiences. The engine covers a broad range of capabilities, including hybrid 2D/3D rendering, asynchronous a
Entitas-CSharp is a data-oriented architectural framework for managing application state and logic in C# and Unity environments. It implements the Entity Component System pattern to separate raw data components from the logic systems that process them. The framework includes a code generator that automatically produces type-safe boilerplate classes and methods at build time. It also provides a visual state inspector for examining entities and components in real time within the Unity editor. The library covers data-oriented programming and game state debugging, utilizing a memory-efficient ap
Flecs is a high-performance entity component system framework and data-oriented programming library. It serves as a simulation engine core and game engine architecture tool, decoupling state from behavior by separating entities, components, and systems. The framework features a runtime reflection layer for dynamic data inspection and a built-in scripting system for defining entity behavior without recompilation. It also includes a network interface and REST API for remote simulation administration and state querying. The library covers a broad surface of simulation capabilities, including ar
Mindustry is a cross-platform game engine and factory automation simulation that combines resource management with tower defense strategy. Players construct complex supply chains and automated networks to process materials while building defensive structures to protect a core from waves of hostile mechanical forces. The project utilizes a deterministic lockstep networking model to ensure simulation consistency across desktop and mobile devices. It is built on an entity-component-system architecture and a tile-based grid simulation, allowing for the efficient management of thousands of active
EnTT is a C++ library designed for data-oriented design and entity component system architecture. It provides a framework for managing game objects and simulation states by separating entity data from logic, allowing for the efficient organization and manipulation of large collections of related data objects. The library utilizes sparse sets to store entities and components in contiguous memory, which facilitates cache-friendly iteration and constant-time lookups. It employs template metaprogramming for compile-time type reflection and type-erasure techniques to provide a unified interface fo
Bevy is a cross-platform game engine and framework built in Rust, designed for creating interactive simulations and graphical applications. It utilizes a data-oriented entity-component-system architecture to manage game state, organizing data into contiguous memory blocks to facilitate high-performance processing and massive parallelization of entities. The engine distinguishes itself through a modular plugin architecture and a system-based task scheduler that automatically parallelizes logic by analyzing data access patterns. By employing reactive change detection and deferred command buffer
Citybound is an open-source multiplayer city simulation game and collaborative urban planner. It provides a shared digital space where multiple users co-manage city growth, design infrastructure layouts, and develop urban environments in real time. The project functions as a collaborative city builder, allowing players to plan and evolve a virtual city together. Changes made to the urban environment are reflected immediately for all connected participants within the shared simulation. The system utilizes an entity-component simulation to manage urban behavior and a shared-world coordinate sy
This is a web-based 3D game engine designed for creating high-performance interactive experiences on web and mobile platforms. It functions as a real-time graphics renderer and physics engine, utilizing a component-based scene graph to organize entities and their properties for three-dimensional rendering. The engine includes a visual scene editor that allows for the design of environments through a graphical interface, which then exports these assets as executable code. Its broader capabilities cover real-time graphics rendering for 2D and 3D elements, physical world simulation for object c
FXGL is a 2D game engine and development framework designed for Java and Kotlin. It provides a structured environment for building cross-platform desktop games, integrating a central game loop with an entity component system and a JavaFX-based scene graph for rendering. The toolkit distinguishes itself by providing a comprehensive suite of integrated libraries for game AI pathfinding, physics collision resolution, and multiplayer networking via TCP and UDP protocols. It includes specialized systems for adaptive user interface design using global stylesheets and a data-driven asset management
Fyrox is a Rust-based game engine for building both 2D and 3D games, designed as a native engine with no runtime dependencies. It compiles directly to native code for Windows, macOS, Linux, and WebAssembly, providing direct hardware access through the Rust programming language. The engine is built around an entity-component-system architecture that organizes game objects as entities with attached components processed by modular systems. Its graph-based scene management represents game scenes as directed acyclic graphs of nodes with transform hierarchies and property inheritance, while a paral
Craft is a multiplayer voxel sandbox written in C. It utilizes an OpenGL voxel engine to render a block-based world and implements an infinite terrain generator that uses noise functions to create deterministic, procedural landscapes. The project features a networked environment where players can build and modify a shared world using socket-based state synchronization. To maintain consistency across sessions, it employs a voxel world database to store and retrieve modified block coordinates. The system covers a range of capabilities including 3D collision detection for character movement, to
FiveM is a multiplayer modification framework and game engine modding tool. It serves as a platform for creating and hosting community-driven modifications for open-world game engines, functioning specifically as a framework for Grand Theft Auto V to enable custom servers and multiplayer game modes. The project provides a dedicated game server host for managing network traffic and synchronized game states in modified environments. Its capabilities extend to modding Red Dead Redemption 2, allowing for the extension of game mechanics and the addition of custom content. The framework supports c
FlaxEngine is a cross-platform game engine and development kit designed for creating high-fidelity 2D and 3D games. It functions as a programmable framework that supports the use of C# and C++ for building interactive experiences. The project includes a high-speed graphics rendering engine capable of producing professional visual assets and detailed three-dimensional scenes. It provides a pipeline for compiling and exporting project files across various operating systems using native software development kits and toolchains.
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