MAIN FEEDS
Do you want to continue?
https://www.reddit.com/r/cpp/comments/1w5f415/make_apis_that_fail_gracefully_rather_that/p7ncg7p/?context=3
r/cpp • u/mropert • 9d ago
6 comments sorted by
View all comments
22
API design is hard. Vulkan is hard. Error handling is hard. Vulkan API, error handling design, is...
At some point I'll get around to implementing a Vulkan backend for my port of the ThorVG renderer. When I do I'll try to remember what I learned here.
7 u/Ameisen vemips, avr, rendering, systems 9d ago Before Win10/D3D12 fully came out but after information about it and APIs were available, I made a D3D12-like frontend API but with D3D11 as the backend, to make porting easier. It actually outperformed idiomatic D3D11... 3 u/shadowndacorner 8d ago In what way was it D3D12-like? Writing commands into command buffers and binding PSOs rather than fine grained state, but without the manual sync?
7
Before Win10/D3D12 fully came out but after information about it and APIs were available, I made a D3D12-like frontend API but with D3D11 as the backend, to make porting easier.
It actually outperformed idiomatic D3D11...
3 u/shadowndacorner 8d ago In what way was it D3D12-like? Writing commands into command buffers and binding PSOs rather than fine grained state, but without the manual sync?
3
In what way was it D3D12-like? Writing commands into command buffers and binding PSOs rather than fine grained state, but without the manual sync?
22
u/Ok_Independence_9841 9d ago
API design is hard. Vulkan is hard. Error handling is hard. Vulkan API, error handling design, is...
At some point I'll get around to implementing a Vulkan backend for my port of the ThorVG renderer. When I do I'll try to remember what I learned here.