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
PistonDevelopers avatar

PistonDevelopers/piston

0
View on GitHub↗
4,694 stars·235 forks·Rust·MIT·26 viewswww.piston.rs↗

Piston

Piston is a modular game engine and framework written in Rust for building two and three-dimensional graphical applications. It functions as a cross-platform windowing library and a system for managing input events and window loops across different operating systems.

The project provides specialized rendering systems, including a voxel rendering engine for volumetric pixels and a skeletal animation system for deforming meshes via hierarchical bone structures. It also features an immediate mode user interface toolkit for creating responsive on-screen elements and a behavior tree AI framework that transforms declarative rules into functional state machines for non-player character control.

The framework's capability surface extends to 2D graphics rendering, 3D scene management with camera controls, and linear algebra for spatial mathematics. It includes tools for digital sound processing, image data manipulation, and the import of 3D geometry from external file formats. Additional development utilities cover embedded scripting, texture atlas packing, and a persistent state history for undo and redo operations.

Features

  • Rust Game Engines - Implements a modular game engine in Rust for building 2D and 3D graphical applications.
  • 3D Rendering Engines - Provides a comprehensive 3D rendering engine including camera management, geometry import, and skeletal animation.
  • Behavior Trees - Implements behavior trees to transform declarative logic into functional state machines for non-player character control.
  • Game AI - Implements NPC behaviors by transforming declarative logic into functional state machines via behavior trees.
  • Voxel World Rendering - Renders three-dimensional grids of volumetric pixels to create block-based environments.
  • Game Loops - Uses an iterator-based mechanism to manage simulation updates and rendering cycles.
  • 2D Graphics Frameworks - Provides modules for rendering 2D shapes and performing real-time image deformation.
  • Voxel Engines - Provides an engine specifically architected for rendering and manipulating voxel-based environments.
  • Game Loop Managers - Utilizes an iterator-based game loop to control primary execution flow and scene transitions.
  • Skeletal Animation - Deforms 3D meshes using hierarchical bone structures and vertex weights for character movement.
  • Cross-Platform Input Consistency - Handles windowing loops and user input events through a platform-independent core.
  • Cross-Platform Windowing Abstractions - Abstracts native windowing APIs to provide consistent display and input management across operating systems.
  • OS Window and Input Management - Provides platform-independent control of operating system windows and hardware input states.
  • Modular Game Architectures - Employs a modular architecture to decouple core engine functionality into independent, interchangeable components.
  • Immediate Mode GUI Toolkits - Provides a toolkit that rebuilds the user interface every frame based on current application state.
  • Input Abstraction Layers - Abstracts windowing and input events through a common interface for consistent behavior across operating systems.
  • Game Engine Utilities - Provides low-level utilities for game engine development, including texture packing and undo-redo state history.
  • Scripted Logic Systems - Integrates a dynamically typed scripting language to modify application logic without recompilation.
  • 2D Sprite Animations - Sequences sprite frames and renders triangulated shapes to create fluid 2D visuals.
  • 3D Geometry Import - Loads three-dimensional models and geometry from standardized formats like Wavefront OBJ and Collada.
  • 3D Scene Abstractions - Manages view, model, and perspective projections for 3D scene configuration.
  • Camera Orbit Controls - Provides tools to navigate and move cameras within a 3D coordinate space.
  • Skeletal Animation Blending - Interpolates between different skeleton-based animations to create smooth character transitions.
  • Language Embedding - Integrates a scripted runtime to modify application logic at execution time without requiring full system recompilation.
  • Event Handling Systems - Processes input and system events through an extensible system compatible with various underlying libraries.
  • Immediate Mode UI Frameworks - Provides an immediate mode UI toolkit that draws interactive on-screen elements on every frame.
  • Game Development - Modular game engine framework.

Star history

Star history chart for pistondevelopers/pistonStar history chart for pistondevelopers/piston

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 pistondevelopers/piston do?

Piston is a modular game engine and framework written in Rust for building two and three-dimensional graphical applications. It functions as a cross-platform windowing library and a system for managing input events and window loops across different operating systems.

What are the main features of pistondevelopers/piston?

The main features of pistondevelopers/piston are: Rust Game Engines, 3D Rendering Engines, Behavior Trees, Game AI, Voxel World Rendering, Game Loops, 2D Graphics Frameworks, Voxel Engines.

Which projects share features with pistondevelopers/piston?

Projects with overlapping indexed features include: o3de/o3de — This project is an open-source 3D game engine designed for building high-fidelity games, simulations, and cinematic… kittykatattack/learningpixi — learningPixi is an educational resource and instructional guide focused on 2D web graphics and interactive media… ggez/ggez — ggez is a 2D game framework for the Rust programming language. It provides a hardware abstraction layer for accessing… movingblocks/terasology — Terasology is a Java-based voxel game engine designed for creating and simulating complex three-dimensional voxel… cocos/cocos-engine — Cocos Engine is a cross-platform game engine designed for building high-performance 2D and 3D interactive experiences… formidablelabs/react-game-kit — This is a game engine library for building interactive games using React and React Native components. It provides a…

Projects sharing features with Piston

These projects share indexed features with Piston. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • o3de/o3deo3de avatar

    o3de/o3de

    8,954View on GitHub↗

    This project is an open-source 3D game engine designed for building high-fidelity games, simulations, and cinematic environments. It functions as a robotics simulation platform with native integration for ROS 2 to model robot controllers and sensors. The engine features a multi-threaded Forward+ physically based renderer that supports hardware-accelerated ray tracing and global illumination. The system is built on a modular extension architecture using Gems to add or replace features without modifying core binaries. It includes a native SDK for AWS cloud integration, enabling IAM authenticati

    C++3d-graphics3d-graphics-engineanimation
    View on GitHub↗8,954
  • kittykatattack/learningpixikittykatattack avatar

    kittykatattack/learningPixi

    4,421View on GitHub↗

    learningPixi is an educational resource and instructional guide focused on 2D web graphics and interactive media development. It provides a structured curriculum and tutorials for building 2D games and visual applications using the Pixi.js rendering engine and WebGL for hardware-accelerated graphics. The project covers specialized workflows for sprite animation, including the use of texture atlases and spritesheet frame extraction. It also provides guidance on implementing game state management for scene transitions and rectangular collision detection systems to trigger interactive events. T

    View on GitHub↗4,421
  • ggez/ggezggez avatar

    ggez/ggez

    4,646View on GitHub↗

    ggez is a 2D game framework for the Rust programming language. It provides a hardware abstraction layer for accessing keyboard, mouse, sound, and graphics hardware, alongside a dedicated game loop manager that synchronizes input processing, state updates, and frame rendering for real-time applications. The framework includes a hardware-accelerated rendering engine for drawing sprites, shapes, and text using shader programs. It also features a resource management system that uses a filesystem abstraction to load and manage game assets from physical directories or compressed archives. Addition

    Rustcratesenginegame
    View on GitHub↗4,646
  • movingblocks/terasologyMovingBlocks avatar

    MovingBlocks/Terasology

    3,867View on GitHub↗

    Terasology is a Java-based voxel game engine designed for creating and simulating complex three-dimensional voxel environments. It functions as a modular sandbox platform that allows for the integration of custom gameplay mechanics and core extensions. The project features a procedural world generator that uses deterministic algorithms to construct terrain and environmental features. It employs an entity component system framework to decouple game logic from data and a deferred shading renderer to handle lighting and atmospheric effects within block-based worlds. The engine provides capabili

    Java
    View on GitHub↗3,867
  • Compare all 30 related projects→