2024-08-18 12:51:33 +02:00
2024-08-03 16:40:41 +02:00
- Gamepad
2024-07-12 21:11:47 +02:00
2024-08-18 12:51:33 +02:00
- Compile with msys2, cygwin, mingw64
2024-07-12 21:11:47 +02:00
- Audio
2024-07-19 16:45:58 +02:00
- Allow audio programming
- Inject mixer proc per player
- Inject a mixer proc before and after filling output buffer
- Better spacialization
2024-07-15 21:40:27 +02:00
- Fix vorbis >FILE< streaming (#StbVorbisFileStream)
- Handle audio sources which had their format defaulted to update when default device changes
For streamed audio sources this should be easy enough, because the conversion happens from raw format to source format as we stream it.
For loaded sources though, we would need to convert the source->pcm_frames.
2024-08-03 16:40:41 +02:00
Probably just dirty flag
2024-07-16 13:31:33 +02:00
- Optimize
- Spam simd
2024-07-26 21:33:04 +02:00
- Pool of intermediate buffers (2^)
2024-08-03 16:40:41 +02:00
- Bugs / Issues:
- Small fadeout on start/pause is sometimes noisy
- If audio starts/end abrubtly we will get noise. Maybe detect that on load and apply small fade in/out?
2024-07-15 21:40:27 +02:00
- Setting audio source to a format which differs from audio output format in both channels and bit_width at the same time will produce pure loud noise.
- 24-Bit audio conversion doesn't really work
2024-07-17 13:34:52 +02:00
2024-07-15 21:40:27 +02:00
- General bugs & issues
2024-07-19 16:45:58 +02:00
- Window width&height is zero when minimized (and we make a 0x0 swap chain)
- Window positioning & sizing is fucky wucky
2024-07-20 16:10:55 +02:00
- Memory error messages are misleading when no VERY_DEBUG
2024-07-15 21:40:27 +02:00
2024-07-17 13:34:52 +02:00
- Renderer
2024-07-20 16:10:55 +02:00
- API to pass constant values to shader (codegen #define's)
2024-07-26 21:33:04 +02:00
- Draw_Frame instances
- Or draw to a custom Quad_Buffer, then draw quad buffers ?
- draw_deferred ?
- Draw_Frame Render_Image
2024-07-17 14:16:23 +02:00
- Fonts
- Atlases are way too big, render atlases with size depending on font_height (say, 128 codepoints per atlas)
2024-07-17 13:34:52 +02:00
2024-07-19 16:45:58 +02:00
- OS
2024-07-22 16:49:10 +02:00
- Window::bool is_minimized
- don't set window.width & window.height to 0
2024-08-03 16:40:41 +02:00
- Handle monitor change
2024-07-22 16:49:10 +02:00
- Sockets recv, send
2024-07-26 21:33:04 +02:00
- Mouse pointer
- Hide mouse pointer
2024-08-03 16:40:41 +02:00
- Better hash table
2024-07-22 16:49:10 +02:00
2024-07-28 15:08:36 +02:00
- Memory
- Arenas
2024-07-26 21:33:04 +02:00
- Examples/Guides:
- Scaling text for pixel perfect rendering
- Z sorting
- Scissor boxing
2024-07-28 15:08:36 +02:00
- Concurrency
2024-08-03 16:40:41 +02:00
- strings
2024-07-28 15:08:36 +02:00
- Rework profiler
- Store records and convert to google trace format on exit
- Measure both time and cycles, output a google_trace_cycles.json & google_trace_time.json
2024-07-19 16:45:58 +02:00
2024-08-03 16:40:41 +02:00
- Concurrency
- Event objects for binary semaphore
2024-07-15 21:40:27 +02:00
- Needs testing:
- Audio format channel conversions
- sample rate downsampling
2024-07-16 10:00:04 +02:00
- non stereo or mono audio
2024-08-03 16:40:41 +02:00
- Audio spacialization on anything that's not stereo
- Compiling with msvc
- Compiling with gcc