From 15760d2b9faa8fa5f358292fdc2cd1a231a98bdc Mon Sep 17 00:00:00 2001 From: Levent Kaya Date: Tue, 24 Mar 2026 09:36:36 +0300 Subject: [docs] BACKLOG added --- TODO.md | 74 ----------------------------------------------------------------- 1 file changed, 74 deletions(-) delete mode 100644 TODO.md (limited to 'TODO.md') diff --git a/TODO.md b/TODO.md deleted file mode 100644 index 5d4b331..0000000 --- a/TODO.md +++ /dev/null @@ -1,74 +0,0 @@ -# TODO List for 2D Framebuffer Graphics Library (`fbgl`) - -## Core Rendering -- [x] Implement pixel manipulation: set, get, and clear individual pixels with color data. -- [ ] Implement basic shapes: - - [x] Draw lines. - - [x] Draw rectangles. - - [x] Draw circles. - - [ ] Draw ellipses. - - [ ] Draw polygons. - - [x] Support filled versions of shapes. - - [x] Support outlined versions of shapes. -- [ ] Implement bitmap rendering: - - [x] Render 2D images (tga) to the framebuffer. - - [x] Support transparency via alpha channels. - - [ ] Support transparency via a key color. -- [x] Implement text rendering using psf fonts. - ---- - -## Color Handling -- [ ] Support RGB color format. -- [ ] Support grayscale color format. -- [ ] Support indexed color format. -- [ ] Add utility to convert between color formats. -- [ ] Support alpha blending for semi-transparent rendering. - ---- - -## Window and Viewport -- [ ] Add windowing support: - - [ ] Define sub-framebuffers (windows) within the main framebuffer. - - [ ] Maintain independent clipping for each window. -- [ ] Implement clipping to respect rendering boundaries. - ---- - -## Utilities and Effects -- [ ] Implement 2D transformations: - - [ ] Scaling. - - [ ] Rotation. - - [ ] Translation. - - [ ] Transform relative to origin or center. -- [ ] Add optional anti-aliasing for smoother shapes and lines. -- [ ] Implement image manipulation: - - [ ] Scale tga. - - [ ] Crop tga. - - [ ] Rotate tga. -- [ ] Implement gradients and patterns: - - [ ] Fill shapes with gradients. - - [ ] Fill shapes with pattern-based textures. - ---- - -## Performance and Optimization -- [ ] Optimize batch rendering to minimize CPU cycles. -- [ ] Add hooks for hardware acceleration (optional). - ---- - -## Integration -- [ ] Provide initialization routines for creating and managing a framebuffer. -- [ ] Ensure platform independence: - - [ ] Abstract hardware details for Linux framebuffer. - - [ ] Abstract hardware details for SDL2. -- [ ] Add support for reading framebuffer content to standard image formats (e.g., BMP, PNG). -- [ ] Add support for writing framebuffer content to standard image formats (e.g., BMP, PNG). - ---- - -## Debugging and Diagnostics -- [ ] Develop diagnostics tools to inspect pixel data. -- [ ] Add debugging overlays (e.g., FPS, gridlines). -- [ ] Implement graceful error handling for out-of-bounds operations with informative messages. -- cgit v1.2.3