Archived
1
Fork 0
Commit graph

80 commits

Author SHA1 Message Date
71d0eff8dc Revert "Next big changes to make WebGPU work"
This reverts commit 0a95ee2fa8.
2022-03-10 10:20:50 -05:00
0a95ee2fa8 Next big changes to make WebGPU work
Dynamic buffers are removed, since that's now the renderer's job. Texture usage and buffer usage has changed too.
2022-03-07 11:11:17 -05:00
a0d92be759 Start to separate combined image samplers
This is to be in line with requirements from HLSL/DX12 and WebGPU,
both of which do not support this. It's probably better to get
started removing our usage of them now :-)
2022-03-06 22:45:08 -05:00
982ef5090c Fixup MoltenVK support
This makes MoltenVK work on iOS again if you
have #1539 applied :-)
2022-03-06 17:22:15 -05:00
8361590294 Don't call new every frame on Vulkan 2022-02-21 17:05:30 -05:00
ca57de8f99 Support GFX dummy a little better
There's now more checks to prevent crashing when the
mapped buffer is actually null, like when running with the dummy
backend.
2022-02-21 12:09:14 -05:00
a3704eb7a9 Improve surface and gfx context creation
This is laying some groundwork for a much better way
of determining the best GFX api to use at runtime, and
making it easier to support more GFX backends in the future.
2022-02-21 11:03:34 -05:00
a1b80f643f Outputted SPIR-V files are now appended with .spv 2022-02-20 22:51:39 -05:00
30fa329550 Add protections for debug marker functions 2022-02-15 09:26:19 -05:00
8b9e8c29ef Use VK_EXT_metal_surface on iOS 2022-02-12 20:52:10 -05:00
c6ab95f87c Restore mip map functionality in Vulkan 2022-02-08 09:09:37 -05:00
03c0f3100a Print the name of the chosen Vulkan GPU 2022-02-08 08:28:19 -05:00
2f30a9e18e Support base instance parameter on Vulkan's DrawInstanced command 2022-02-07 18:17:58 -05:00
ad29cf3174 Add shader constant support for Vulkan 2022-02-07 15:15:09 -05:00
redstrate
072298f4f1 Remove some extra debug messages 2021-10-14 08:58:53 -04:00
redstrate
e79a98c7d2 Some minor code refactoring 2021-10-14 08:51:58 -04:00
redstrate
3f2be1e26a Fix viewports not rendering when index == nullptr 2021-10-13 10:38:10 -04:00
redstrate
9c83375ed0 Enable VK_KHR_portability_subset 2021-10-13 07:39:16 -04:00
redstrate
ff53532b55 Bump to Vulkan 1.2 2021-10-13 07:35:33 -04:00
redstrate
238650aa8d Enable 1.1 shader draw parameters feature 2021-10-13 07:33:30 -04:00
redstrate
a78a18a99a Set scissor for imgui commands 2021-10-13 07:25:18 -04:00
redstrate
68916bdee2 Increase number of Vulkan sets 2021-10-12 10:26:53 -04:00
redstrate
c6bc56d033 Change window handles into opaque pointers 2021-10-12 10:22:16 -04:00
redstrate
529bc27702 Replace old logging and format system with fmt 2021-09-13 23:41:54 -04:00
redstrate
b61eb98648 Fixes some clang-tidy warnings, remove fpermissive 2021-09-13 22:53:42 -04:00
redstrate
f6df3d23b3 Fix Vulkan queue creation on macOS 2021-09-13 13:47:42 -04:00
redstrate
71fe041691 Fix linux build issue 2021-07-18 18:29:30 -04:00
redstrate
5490b20769 Use VK_WHOLE_SIZE when mapping memory 2021-06-01 12:11:08 -04:00
redstrate
e8bf0a8371 Create presentation command buffers for each surface instead of sharing globally
* Fixes multi-window vulkan validation errors because surfaces would just keep overwriting each other's command buffers.
2021-06-01 12:05:48 -04:00
redstrate
2db8873f92 Fix imgui validation errors on Vulkan
* Eventually, get_buffer_contents() will be removed
2021-06-01 12:02:38 -04:00
redstrate
e63caf1a83 Fix some more image transition bugs related to vulkan dispatch 2021-06-01 11:49:27 -04:00
redstrate
f69d7c18fd Fix image layout transistions for mipmap gen 2021-06-01 11:10:58 -04:00
redstrate
e55a71402f Fix auto-exposure in Vulkan
* I forgot to bind the shader buffer again :-p (maybe we should change this functionality under Vulkan
to match Metal rules?)
2021-06-01 10:44:08 -04:00
redstrate
d999485325 Keep track of current texture layouts
* Fixes a few compute pipeline validation errors
2021-06-01 10:16:59 -04:00
redstrate
98ca5684b9 Change default min/mag filters on Vulkan to linear 2021-05-12 10:50:11 -04:00
redstrate
de928a44ce Implement GenerateMipmaps command in Vulkan 2021-05-12 10:29:29 -04:00
redstrate
4ebd53d89f Use debug utils version of debug markers 2021-05-12 10:10:42 -04:00
redstrate
e3c50ad204 Implement PushGroup and PopGroup command types in Vulkan 2021-05-12 10:06:29 -04:00
redstrate
01966c1d81 Rename File -> file and move under the prism namespace 2021-05-12 08:50:02 -04:00
redstrate
ee2771f45f Add compute pipeline support for Vulkan
* Image transition layouts are not handled correctly yet, so auto exposure does not work
* Image usage and guessed image layout is redone to remove some errors
2021-05-11 19:16:54 -04:00
redstrate
0d75b4f47e Properly report cubemap array support on Vulkan 2021-05-11 17:41:45 -04:00
redstrate
fcc3917155 Fix crash when trying to load scene editor on Vulkan 2021-05-11 17:05:43 -04:00
redstrate
5546c88cba IBL now works on Vulkan!
* Image transitions are handled more correctly, reducing errors
* Cubemaps are now transitioned properly when using the CopyTexture command
* Cubemap image views are created correctly
2021-05-11 15:57:14 -04:00
redstrate
39838aec0f Fix weird GCC log bug in vulkan backend 2021-05-09 20:32:04 -04:00
redstrate
5fb213db7e Remove descriptor set cache mesage on Vulkan 2021-05-09 19:49:10 -04:00
redstrate
bae6d05184 Move console and log namespaces to prism 2021-04-20 11:23:53 -04:00
redstrate
e01a31eb13 Use new SDL backend on Windows, fix numerous SDL problems as well 2021-04-20 00:23:14 -04:00
redstrate
744123763f Begin work on converting to the new class naming scheme and the new prism namespace 2021-04-19 12:06:44 -04:00
redstrate
0861278ae5 Fix running out of descriptor sets very early when resizing editor viewports 2021-04-18 21:40:09 -04:00
redstrate
9d3eb24d23 Add missing platform methods on Windows backend 2021-04-18 19:54:06 -04:00