-
Notifications
You must be signed in to change notification settings - Fork 9
Development roadmap
Goals for Retro Graphics Toolkit are separated by short term goals and long term goals.
Short term goals relate to refining what already exist in Retro Graphics Toolkit.
Long term goals relate to new features.
Items in these lists are sorted by priority.
- Update all Lua bindings to use the new style instead of ones that are based on the currentProject pointer.
- Finish TMS9918 support.
- Add support for "four quad" palette selection and the NES Mario levels.
- Add more functions to the Lua bindings.
- Fix the undo code. Instead of what we do right now just store a list of modifications and have an index of where we are in the undo list.
- Make sure everything can be undone.
- Make a Lua binding for undoing.
-
Sprite code refactor: First of all loading and saving should be handled by readers and writers written in Lua.
First filereader.lua will handle parsing C headers, ASM and BEX and will return a string of bytes such that it is as if a binary file were loaded.
Then another function will be called based on what format the sprite is in and convert it to the Retro Graphics Toolkit common format. Format refers to how the sprite data is stored. Sonic 1 and Sonic 2 do in a slightly different way as an example.
Then for saving a writer will be called. This writer will again be written in Lua and convert the common format back to a specific format. This function simply returns a string of bytes. Then a common writter will be called allowing for binary, C header, ASM, Bex output without duplicate code. The writter should also comment the code and use good label names if text output.
-
Animations.
-
More chunk formats.
-
More sprite formats.
-
Adding a new game console via Lua scripting. A callback mechanism will be used. For example when Retro Graphics Toolkit needs to approximate an RGB value a callback will be called. Said callback function is expected to return bytes that are the systems close approximation. Another callback would exist to convert a palette entry to RGB.
-
More example code for all game consoles.
-
More dithering algorithms
-
More color quantization algorithms.