google / xrtl

Cross-platform Real-Time Rendering Library
Apache License 2.0
128 stars 26 forks source link

Add RingBuffer and move imgui over to it. #62

Open benvanik opened 7 years ago

benvanik commented 7 years ago

Currently playing with fire by reusing the same buffers for drawing. Need to write a gfx::RingBuffer to reuse that does the right things here, as well as add QueueFence queries and waiting to properly manage the read/write heads.

Can't have QueueFence be an Event, unfortunately, but could add a Wait() method on it as well as a query.

Can support both wait and query easily on vulkan, webgl2/es3, and d3d. Metal needs some custom work via command submit completion handlers, but nothing bad.

benvanik commented 7 years ago

Gonna fake it w/ MemoryPool for now.