summaryrefslogtreecommitdiff
path: root/TODO.md
diff options
context:
space:
mode:
Diffstat (limited to 'TODO.md')
-rw-r--r--TODO.md74
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.