1.8 KiB
1.8 KiB
NOW
Chores
- Node groups
Compositor
- Manage Resources
- Samplers
- Blender previews (important !)
- Video import (research opencv libavcodec etc)
- maybe https://superuser.com/a/1397578 -- no portable way to get stdout, this is messed up
- boost::process? idk, might as well just go through a file
- maybe https://superuser.com/a/1397578 -- no portable way to get stdout, this is messed up
- Use BG thread to check timestamps for hot reloading
- Data models
- Dump and read back state, (de)serialization!!!
- Pre-compose/Layer Groups (jokes -- can be completely UI side)
- Motion blur
- Non-negotiable - Text (idea: index-based evaluation in plugboard)
- Non-negotiable - Shapes (idea: embed glisp :mmtroll:, need to inquire -- still a lot of friction for simple shapes if we don't also get the glisp gizmos)
- Non-negotiable - External data driving (csv, json or something else?) -- use a node to select source
UI
- Key selection in comp panel
- Graph editor
- Node loop detection (separate DFS (extra work) or be smart in recursion)
- detect time-sensitive nodes in tree and display on timeline
Later
IO
- File dialogues pending SDL3
- OIIO output for more than PNG's
- don't care about video export -- leave it for ffmpeg
Compositor
- std::unordered_map -> std::flat_map pending compiler support
- Simple 3D engine
UI
- Adapt nodes for shader graph -- code editor will be fine for now
- Viewport gizmos (Layer-specific & nodes -- can separate into different tools?) -- Not sure how to go about this
- Baku vec2 drag is good, color drag is not so necessary because imgui has a good picker
Audio
- Wait for SDL3!
- SDL_mixer will be able to do all of wav ogg flac mp3 opus, we live in good times
- output needs to be handled differently (if we care at all -- likely not)