Improved Internal capture performance
Internal mode capture performance
I put some long needed work into the capture process for the ‘Internal’ mode (DX9, DX11, DX12, OpenGL). It’s been quite neglected since I added the ‘Desktop’ and ‘Attached’ modes. ‘Internal’ launch mode is just a lot more convoluted and takes x4 the work in comparison to just working on ‘Desktop’ and ‘Attached’ since the latter more or less work identically under the hood. Hence, in the name of maximizing my efforts as a solo developer, this is the type of prioritization that is inevitable.
There’s still a lot more work to do, especially for DX9 that is heavily suffering from GPU stalling due to being ancient. Not sure if I’ll get that sorted soon though.
Changelog
- Use PBO for OpenGL capturing (improves performance dramatically)
- Improve DX11 capturing (neat FPS boost)
- Improve DX9 & DX12 capturing (marginal FPS boost)
- Fix cache files being created on language pair switch
- Clickthrough is now always enabled when using fullscreen translation mode
- Fix cursor changes regression causing nothing to be interactable after hovering automatic window in Internal mode
- Disable ‘Close window’ and ‘Capture swap mode’ keybindings when using fullscreen translation mode (leave the mode by using the ‘Fullscreen’ keybinding again)
- Fix captures not working after preset switch mid-run
- Replace hardcoded strings
- Add missing keys
- Rename loads of locale keys
- Set default app size to 1600x960
- Replace all applicable icons in main app with Material icons
- Use the same horizontal padding for JSON and textarea as the rest of the rows in main app
- Create ellipsis & add hover tooltip for any locale text overflowing in buttons
- Add icons to all buttons (apart from Launch/Save)
- Fix DX9 error where buffer allocation failed and caused the dashboard to become invisible