awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
faiface avatar

faiface/pixel

0
View on GitHub↗
4,525 stars·245 forks·Go·MIT·8 vues

Pixel

Pixel is a 2D game library and graphics engine for the Go programming language. It provides a hardware-accelerated renderer for drawing sprites, geometric shapes, and text, utilizing an optimized system of batching and transformation matrices.

The project functions as a comprehensive toolkit for two-dimensional interactive applications, combining a graphics engine with a 2D vector math library for affine transformations and coordinate space projections. It includes a dedicated input manager that tracks keyboard presses and mouse movements using a polling-based system rather than asynchronous events.

The engine covers a broad range of capabilities including sprite sheet animation, GPU fragment shading for real-time visual effects, and off-screen canvas compositing. It also provides utilities for managing game windows, performing 2D vector operations, and handling vertex-buffer geometry management.

Features

  • 2D Game Frameworks - Provides a comprehensive framework for building 2D games with hardware-accelerated graphics and real-time loops.
  • 2D Graphics Frameworks - Provides a hardware-accelerated framework for rendering sprites, geometric shapes, and text in 2D.
  • Frame-Based Input Polling - Implements frame-based input polling to query device states once per game loop update.
  • Real-time Input Processing - Implements a polling-based system for detecting and processing immediate state changes from keyboards and mice.
  • Static Sprite Renderers - Renders static and animated sprites using source rectangles and transformation matrices.
  • 2D Sprite Rendering - Draw a rectangular portion of a picture onto a target using a matrix and color masking.
  • Draw Call Batching - Groups multiple drawing commands into a single batch to reduce GPU overhead and draw calls.
  • Fragment Shader Rendering - Allows the application of custom fragment shaders for per-pixel visual calculations and effects.
  • Vertex and Fragment Shading - Provides a pipeline for custom GLSL fragment and vertex shading for real-time visual effects.
  • Affine Transformation Matrices - Uses affine transformation matrices to handle 2D scaling, rotation, and translation for game objects.
  • 2D Affine Transformation Engines - Implements a mathematical engine for applying matrices to scale, rotate, and translate 2D elements.
  • 2D Vector Transformations - Provides matrix-based calculations for rotating, scaling, and translating 2D vector elements.
  • Viewport Transformations - Controls the visible game area and camera movement by applying a global viewport transformation matrix.
  • Hardware-Accelerated Rendering - Utilizes GPU fragment shaders and vertex buffers to offload visual composition to the graphics processor.
  • Batch Rendering - Implements a batch rendering system to group draw calls and reduce CPU-GPU overhead for better performance.
  • 2D Rendering Engines - Functions as a rendering engine optimized for drawing 2D graphics and animations using hardware acceleration.
  • Triangle Mesh Data Structures - Manages buffers of triangle vertex data and texture coordinates to define rendered 2D geometry.
  • User Input Capture - Tracks keyboard presses and retrieves typed characters in real-time to drive application logic.
  • 2D Vector Mathematics - Provides a comprehensive 2D vector math library for handling game object positions and movements.
  • 2D - Performs 2D vector arithmetic and geometric operations for position and distance calculations.
  • Coordinate Space Transformations - Provides systems for transforming coordinates between screen space and game space.
  • Polling-Based Input Managers - Provides an input manager that tracks keyboard and mouse state using a polling-based system.
  • Game Window Management - Provides the ability to create and initialize display windows with custom titles and dimensions.
  • Immediate-Mode Rendering - Employs an immediate-mode rendering paradigm that rebuilds the display state every frame without a scene graph.
  • Real-time Input Capture - Provides real-time capture of keyboard and mouse input to drive game interactions.
  • 2D Affine Transformations - Applies scaling, rotation, and translation to game objects and cameras using affine transformation matrices.
  • Object Transformation Matrices - Applies transformation matrices to visual elements during the drawing process to control position and scale.
  • 2D Object Transformations - Implements affine transformation matrices to control the position and orientation of 2D game objects.
  • Sprite Sheet Animation Playback - Supports rendering animation sequences by cycling through specific frames defined within a sprite sheet image.
  • Composite Visual Elements - Enables the construction of complex visual elements through composition and masking.
  • Go Graphics Libraries - Provides a graphics and rendering toolkit specifically implemented for the Go programming language.
  • Shape Drawing - Provides tools for drawing geometric primitives like lines and circles with custom styles.
  • Affine Transformation Toolkits - Includes a dedicated 2D vector math library for handling affine transformations and coordinate space projections.
  • Color Matrix Transformations - Applies mathematical matrix transforms to RGBA color channels to create global visual effects.
  • Glyph Atlases - Uses character atlases to map font glyphs to textures for high-performance text rendering.
  • High-Performance Text Rendering - Renders text strings using character atlases and Truetype fonts for high-performance GPU output.
  • Image Decoding - Decodes image files into in-memory pixel representations suitable for sprite creation.
  • Immediate and Retained Rendering Modes - Supports switching between an immediate-mode drawing pipeline and a retained mode for storing shapes.
  • Premultiplied-Alpha Blending - Implements premultiplied-alpha blending and Porter-Duff composition algorithms for transparency and masking.
  • Off-Screen Rendering - Supports rendering graphics to an off-screen memory buffer for post-processing and alpha blending.
  • Pixel Buffer Management - Handles in-memory rectangular areas of pixels to define colors for specific bounds.
  • Visual Effect Implementations - Provides implementations for advanced 2D visual effects including lighting and object masking.
  • Shader Uniform Management - Links application variables to shader uniforms to update GPU fragment shader values in real-time.
  • Vertex and Index Buffer Rendering - Manages vertex and index buffers to define and render custom geometric shapes.
  • 2D Coordinate Projections - Maps 2D vectors through transformation matrices to determine new positions for rendering.
  • Développement de jeux - 2D game engine library.
  • Game Frameworks - Hand-crafted 2D game library for Go.
  • Game Development - Hand-crafted 2D game library.

Historique des stars

Graphique de l'historique des stars pour faiface/pixelGraphique de l'historique des stars pour faiface/pixel

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Pixel

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Pixel.
  • ggez/ggezAvatar de ggez

    ggez/ggez

    4,646Voir sur 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
    Voir sur GitHub↗4,646
  • not-fl3/macroquadAvatar de not-fl3

    not-fl3/macroquad

    4,500Voir sur GitHub↗

    Macroquad is a Rust game engine and 2D graphics library designed for developing cross-platform games and graphical applications. It functions as a rendering engine that enables the deployment of a single codebase to desktop, mobile, and web targets. The engine utilizes an immediate mode rendering model, which allows for the creation of user interfaces and game worlds that render in a single pass within the main application loop. This approach is paired with hardware-accelerated 2D rendering and automatic draw call batching to optimize the display of geometry across different hardware devices.

    Rust
    Voir sur GitHub↗4,500
  • hajimehoshi/ebitenAvatar de hajimehoshi

    hajimehoshi/ebiten

    13,244Voir sur GitHub↗

    Ebiten is a cross-platform 2D game engine and framework for the Go programming language. It provides a hardware-accelerated 2D renderer and a multi-input handling library to develop two-dimensional games with a single codebase. The engine is designed for broad deployment, allowing applications to be compiled and run across desktops, mobile devices, web browsers, and gaming consoles. It distinguishes itself by integrating custom shader programming for specialized visual effects and providing haptic feedback control for mobile devices and gamepads. The framework covers core game development ca

    Goebitenebitenginegame
    Voir sur GitHub↗13,244
  • sixlabors/imagesharpAvatar de SixLabors

    SixLabors/ImageSharp

    7,954Voir sur GitHub↗

    ImageSharp is a .NET image processing library and manipulation framework used for decoding, encoding, and modifying digital images. It functions as a comprehensive toolkit for resizing, cropping, and applying pixel-level filters while managing color profiles and pixel data across various file formats. The project integrates a 2D vector graphics engine and a typography rendering engine to draw geometric shapes, paths, and complex stylized text onto images. It also includes a geometry boolean operation library for calculating intersections, unions, and differences between complex polygons and c

    C#bmpc-sharpdrawing
    Voir sur GitHub↗7,954
Voir les 30 alternatives à Pixel→

Questions fréquentes

Que fait faiface/pixel ?

Pixel is a 2D game library and graphics engine for the Go programming language. It provides a hardware-accelerated renderer for drawing sprites, geometric shapes, and text, utilizing an optimized system of batching and transformation matrices.

Quelles sont les fonctionnalités principales de faiface/pixel ?

Les fonctionnalités principales de faiface/pixel sont : 2D Game Frameworks, 2D Graphics Frameworks, Frame-Based Input Polling, Real-time Input Processing, Static Sprite Renderers, 2D Sprite Rendering, Draw Call Batching, Fragment Shader Rendering.

Quelles sont les alternatives open-source à faiface/pixel ?

Les alternatives open-source à faiface/pixel incluent : ggez/ggez — ggez is a 2D game framework for the Rust programming language. It provides a hardware abstraction layer for accessing… not-fl3/macroquad — Macroquad is a Rust game engine and 2D graphics library designed for developing cross-platform games and graphical… hajimehoshi/ebiten — Ebiten is a cross-platform 2D game engine and framework for the Go programming language. It provides a… sixlabors/imagesharp — ImageSharp is a .NET image processing library and manipulation framework used for decoding, encoding, and modifying… killedbyapixel/littlejs — LittleJS is a lightweight HTML5 2D game engine designed for building web games using Canvas and WebGL without external… nannou-org/nannou — Nannou is a creative coding framework for Rust designed for building interactive visual and audio sketches. It…