awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
id-Software avatar

id-Software/DOOM

0
View on GitHub↗
18,936 stars·3,326 forks·C++·GPL-2.0·13 views

DOOM

This project is a first-person shooter game engine and a pseudo-3D rendering engine written in C. It serves as a software framework for rendering three-dimensional environments and managing entity physics.

The engine includes a networked multiplayer system designed to synchronize game state and player actions across a client-server network. It utilizes a portable codebase that allows game logic to be adapted across different operating systems and hardware architectures.

Core capabilities cover 3D game engine architecture, including spatial partitioning and depth-based rendering. The system also implements game physics simulation for entity movement, collision detection, and line-of-sight checks against environment geometry.

Features

  • Pseudo-3D Renderers - Uses a pseudo-3D rendering engine to simulate three-dimensional depth and volume on flat surfaces.
  • Physics Simulation - Simulates physical dynamics, including entity movement and collision detection against geometry.
  • Game Engine Frameworks - Provides a complete software framework for rendering and physics tailored for first-person shooter games.
  • 3D Engines - Implements a specialized 3D engine optimized for rendering interactive environments and managing physics.
  • Sector-Based Geometry - Defines the game environment as a collection of closed polygons with specific floor and ceiling heights.
  • Entity Simulation Engines - Calculates character motion, collision detection, and line-of-sight checks against environment geometry.
  • Depth Sorting - Implements depth sorting to determine correct overlapping and visibility for 2D sprites and walls.
  • Space Partitioning - Implements binary space partitioning to optimize rendering and visibility checks within the 3D game world.
  • Game State Synchronization - Provides a networked multiplayer system that synchronizes game state and player actions across a client-server network.
  • Hardware Abstraction Layers - Separates core game logic from platform-specific input and video drivers to facilitate cross-platform porting.
  • Platform Ports - Includes a portable codebase and abstraction layers to support platform ports across various hardware.
  • Cross-Platform Porting - Provides a portable codebase designed for adaptation across different operating systems and hardware architectures.
  • Multiplayer Game Servers - Includes a networked system for hosting authoritative game logic and synchronizing multiplayer sessions.
  • Cross-Platform Arithmetic - Uses fixed-point arithmetic to ensure consistent game physics and rendering performance across diverse hardware.
  • Game State Replication - Synchronizes game state and player actions using a client-server architecture for multiplayer modes.
  • First Person Shooters - Source code for a foundational first-person shooter.
  • Game Source Code - Original source code for the classic shooter.
  • Classic Games - Iconic sci-fi first-person shooter set on Mars.
  • Open Source Games - The original 1993 3D masterpiece by id Software.

Star history

Star history chart for id-software/doomStar history chart for id-software/doom

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does id-software/doom do?

This project is a first-person shooter game engine and a pseudo-3D rendering engine written in C. It serves as a software framework for rendering three-dimensional environments and managing entity physics.

What are the main features of id-software/doom?

The main features of id-software/doom are: Pseudo-3D Renderers, Physics Simulation, Game Engine Frameworks, 3D Engines, Sector-Based Geometry, Entity Simulation Engines, Depth Sorting, Space Partitioning.

Which projects share features with id-software/doom?

Projects with overlapping indexed features include: id-software/quake — This is the original C source code for the Quake game engine, a landmark first-person shooter engine from the 1990s.… id-software/quake-iii-arena — Quake III Arena is a first-person shooter game engine and arena combat simulator. It consists of the original C++ game… id-software/wolf3d — The original open source release of Wolfenstein 3D. mozilla/browserquest — BrowserQuest is a WebSocket multiplayer game engine and real-time state synchronization tool. It functions as a… id-software/quake-2 — Quake-2 is a game engine designed for the development of first-person shooters and the rendering of three-dimensional… kbengine/kbengine — KBEngine is a distributed game server engine and backend infrastructure designed for massively multiplayer online…

Projects sharing features with DOOM

These projects share indexed features with DOOM. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • id-software/quakeid-Software avatar

    id-Software/Quake

    5,659View on GitHub↗

    This is the original C source code for the Quake game engine, a landmark first-person shooter engine from the 1990s. It is a retro game engine that renders 3D environments and processes player input in real time using CPU-based software rendering rather than GPU acceleration. The engine supports networked multiplayer gameplay over LAN or internet connections and is designed to be moddable, allowing users to create and run custom game modifications and levels. The engine's architecture includes a Binary Space Partition tree for efficient world geometry organization and visibility determination

    C
    View on GitHub↗5,659
  • id-software/quake-iii-arenaid-Software avatar

    id-Software/Quake-III-Arena

    8,053View on GitHub↗

    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

    C
    View on GitHub↗8,053
  • id-software/wolf3did-Software avatar

    id-Software/wolf3d

    2,501View on GitHub↗

    The original open source release of Wolfenstein 3D

    View on GitHub↗2,501
  • mozilla/browserquestmozilla avatar

    mozilla/BrowserQuest

    9,366View on GitHub↗

    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

    JavaScriptabandonedunmaintained
    View on GitHub↗9,366
  • Compare all 30 related projects→