Replies: 1 comment 3 replies
-
Currently internal rendering submission thread is single-threaded. It would be possible to split it into multiple threads, but this is very specific use case. |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I need to display different things on different monitors for a scientific project (currently two monitors, but potentially three). My current trials with bgfx are not satisfactory (missed frames everywhere despite rendering only a single triangle), but I'm wondering if it's due to bgfx's whole design philosophy or just due to an implementation bug on macOS (see #1867 ).
It seems clear that drawing on two monitors with vsync on each is impossible with a single threaded solution, as the two monitors are never in perfect sync even if they are running at the same frequency (and it gets much worse if they refresh at different frequencies, say one 144Hz monitor and on 60Hz one). But I'm not clear at all on how to use one thread per monitor in bgfx or if it's possible at all, since bgfx::frame() doesn't allow to specify what we want to render and wait on.
I do know it's possible to have a dual monitors with different frequencies and proper vsync working with macOS and Metal (the trick seems to have one
commandQueue
per monitor and running each in a separate thread), but could this be achieved with bgfx, whether on macOS or on any other platform/API (I can change) ?Beta Was this translation helpful? Give feedback.
All reactions