Commit Graph

25 Commits (7c173d9147b5af2dbbfb22343a139c9a2dbc203e)

Author SHA1 Message Date
Stenzek 7c173d9147
VideoThread: Enforce command producer ownership
Assert that command allocation, submission, and synchronization run on the
core thread. Marshal exclusive-fullscreen loss to the core thread instead
of enqueueing recursively from the video thread.
1 week ago
Stenzek 6fe06b99e7
VideoThread: Preserve command queue empty slot
Reserve one aligned command slot so full and empty ring states cannot alias.

Assert that aligned commands fit within the usable queue capacity.
1 week ago
Stenzek 5aeeb72e6e
VideoThread: Fix rare crash if device initialization fails 3 weeks ago
Stenzek 90c70407cf
VideoThread: Fix debug assertion tripping in single-threaded mode 3 months ago
Stenzek 730dcd9a93
VideoThread: Assert not on thread for async calls 5 months ago
Stenzek bbe65219a2
ImGuiManager: Support multiple text fonts 5 months ago
Stenzek 70c6d5a1d7
VideoThread: Move private functions into own file 5 months ago
Stenzek 28297a3aec
VideoThread: Pass clamped dimensions to thread 5 months ago
Stenzek 12989d2bca
VideoThread: Use thread instead of handle
Reduces duplication.
5 months ago
Stenzek 2c1894709d
VideoThread: Fix incorrect command size
But this has no effect since it's on the stack.
5 months ago
Stenzek cc662e69b4
VideoThread: Fix dead code in VideoThreadEntryPoint() 5 months ago
Stenzek 70589b1f97
VideoThread: Fix backend leak on creation failure 5 months ago
Stenzek f5d8fbd70a
VideoThread: Remove RunOnBackend()
Can use RunOnThread() and RunOnThreadAndSync() instead.
5 months ago
Stenzek 05d470be1c
VideoThread: Add VideoThreadAsyncBufferCallCommand 5 months ago
Stenzek ca59d794eb
VideoThread: Fix mismatch between fullscreen_state and real state 8 months ago
Stenzek 8c669e38c8
VideoThread: Simplify reconfiguration
- Removes cross-thread access of FSUI state.
- Fixes lockup when startup fails.
8 months ago
Stenzek c60e3aaf2c
VideoThread: Fix core thread view missing surface format
Fixes media capture throwing unhandled pixel format error after toggling
fullscreen.
8 months ago
Stenzek 36788b8595
Misc: Eliminate unnecessary atomic thread fences 8 months ago
Stenzek 25211c6fdb
VideoPresenter: Move present throttling from VideoThread 8 months ago
Stenzek 335145b54b
VideoThread: Avoid possible null presentation in PresentFrameAndRestoreContext() 8 months ago
Stenzek 5516f7a2f1
Misc: Use 'Render Window' consistently instead of 'Display Window' 8 months ago
Stenzek 92b888fb82
VideoThread: Fix overreserve in command allocator
Should be inconsequential.

Also fix wraparound handling at the buffer size.
8 months ago
Stenzek 4c523a6345
VideoThread: Rename some missed references 8 months ago
Stenzek 208a8a505b
GPUPresenter: Rename to VideoPresenter
Also fewer conflicts.
8 months ago
Stenzek a04a312c1a
GPUThread: Rename to VideoThread
Fewer conflicts.
8 months ago