8237eeb05b
Fix Metal backend (finally)
2022-02-18 14:36:38 -05:00
b7b8c8336b
Make GFXDummy compile successfully again
2022-02-18 09:08:48 -05:00
f4090d2b24
Fix a bunch of Metal backend errors
2022-02-15 12:33:01 -05:00
c5713938ca
Initialize all metal objects properly
2022-02-15 11:32:33 -05:00
6935f85351
Start work on converting GFXMetal to metal-cpp
2022-02-15 11:25:13 -05:00
30fa329550
Add protections for debug marker functions
2022-02-15 09:26:19 -05:00
2ce04b686d
Merge remote-tracking branch 'origin/master'
...
# Conflicts:
# engine/gfx/CMakeLists.txt
2022-02-15 09:25:08 -05:00
c9cac0f226
Re-add metal backend
...
This also adds dummy placeholders for DX12 and WebGPU ;-)
2022-02-15 09:13:47 -05:00
8b9e8c29ef
Use VK_EXT_metal_surface on iOS
2022-02-12 20:52:10 -05:00
2b5fd7201f
Bring iOS CMake back up to snuff
2022-02-12 19:58:51 -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
4680579899
Remove macOS Cocoa and Metal backends
2021-09-13 13:47:29 -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
b20235a731
Update macOS and Metal backends for the new changes
2021-05-12 10:59:30 -04:00
redstrate
33636d78e1
Merge remote-tracking branch 'origin/master'
2021-05-12 10:53:42 -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
ebcf08736b
Update Metal backend to use new compute changes
2021-05-11 19:22:12 -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
35786ac117
Fix Metal backend to use new shader naming format
2021-05-11 15:58:29 -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
fea83fc2e3
Fix macOS build
2021-05-10 07:58:22 -04:00
redstrate
39838aec0f
Fix weird GCC log bug in vulkan backend
2021-05-09 20:32:04 -04:00