diff options
| author | Levent Kaya <leventkayadev@gmail.com> | 2026-03-24 09:36:36 +0300 |
|---|---|---|
| committer | Levent Kaya <leventkayadev@gmail.com> | 2026-03-24 09:36:36 +0300 |
| commit | 15760d2b9faa8fa5f358292fdc2cd1a231a98bdc (patch) | |
| tree | a369a82e74dda65ca997249249bf05af9f2e1889 /TODO.md | |
| parent | e2c823153f767ce5a23c25e3826bf80cb4ee105a (diff) | |
[docs] BACKLOG added
Diffstat (limited to 'TODO.md')
| -rw-r--r-- | TODO.md | 74 |
1 files changed, 0 insertions, 74 deletions
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. |
