d6fb539583
Add a WebGPU compat option in the shader compiler
...
Come on...
2022-02-20 22:28:35 -05:00
bd485c2eb8
Fix attribute and input bindings for WebGPU, and ask for WGSL shaders
2022-02-20 22:28:07 -05:00
bff540956b
Add initial WebGPU GFX functions
...
This doesn't work yet of course :-)
2022-02-20 20:05:05 -05:00
da45d16388
Protect against buffers that actually don't have their contents mapped
2022-02-18 17:38:27 -05:00
e73c610fc6
Revert accidental gfx dummy rename
2022-02-18 17:19:45 -05:00
e0eace9f74
Initialize WebGPU properly
2022-02-18 17:19:37 -05:00
57c2bbc83a
Fill out basic WebGPU header/source gfx files
2022-02-18 16:57:00 -05:00
50b6c33bbc
Generate SPIR-V debug information
...
This will be behind an option later
2022-02-18 14:38:08 -05:00
4f6dbb8677
Only run SMAA when AA is actually enabled
2022-02-18 14:37:51 -05:00
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
fcbf526615
Re-add support for MSL shaders
2022-02-15 12:32:42 -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
5d335b0ed3
Add placeholders for MSL, HLSL, and WGSL
2022-02-15 09:21:56 -05:00
c9cac0f226
Re-add metal backend
...
This also adds dummy placeholders for DX12 and WebGPU ;-)
2022-02-15 09:13:47 -05:00
840a1e861f
Add back support for normal textures in material compiler
2022-02-15 09:02:42 -05:00
25ccd18595
Add keybind to toggle all imgui ui off
2022-02-15 09:01:52 -05:00
87a81111eb
Use proper 3d poission samples for point lights
2022-02-15 09:01:35 -05:00
8b9e8c29ef
Use VK_EXT_metal_surface on iOS
2022-02-12 20:52:10 -05:00
e910425dc5
iOS builds now successfully build
2022-02-12 20:24:54 -05:00
2b5fd7201f
Bring iOS CMake back up to snuff
2022-02-12 19:58:51 -05:00
b94a82b1e1
Add normal map importing to model compiler
2022-02-08 10:18:31 -05:00
9ee41d01b6
Remove some old and unused render pipelines
2022-02-08 09:37:39 -05:00
833046aed0
Remove old shader files
2022-02-08 09:33:18 -05:00
aac9e673ad
Overhaul lighting and render debug menus
2022-02-08 09:17:44 -05:00
998c6f8bc2
Mark the material budget bar as an estimation
2022-02-08 09:11:22 -05:00
c6ab95f87c
Restore mip map functionality in Vulkan
2022-02-08 09:09:37 -05:00
2c75d51278
Add parameters for metallic and roughness back
...
This also makes them modifiable in the debug menu at runtime
2022-02-08 08:50:10 -05:00
c6ccedb970
Add environment probe controls to debug menu
2022-02-08 08:32:58 -05:00
03c0f3100a
Print the name of the chosen Vulkan GPU
2022-02-08 08:28:19 -05:00
70c18ac169
Remove ImGui metrics window from showing on startup
2022-02-08 08:21:35 -05:00
78078e92cd
Fix multiple point light shadows on Vulkan
...
Light locations had to be padded properly, that ended up being the ultimate fix. Leading to this bug though I ended up patching a lot of stuff that was mysteriously missing from the Vulkan backend like specialization constants and
2022-02-07 18:36:23 -05:00
2f30a9e18e
Support base instance parameter on Vulkan's DrawInstanced command
2022-02-07 18:17:58 -05:00
c732a86df8
Improve debug light interface
2022-02-07 15:52:21 -05:00
8816d64e42
Don't render shadows unless it's actually enabled on the light
2022-02-07 15:52:11 -05:00
ad29cf3174
Add shader constant support for Vulkan
2022-02-07 15:15:09 -05:00
4e0f92014a
Remove obsolete MSL ShaderLanguage option
...
This is no longer relevant now that Metal is a unsupported GFX backend, the MSL conversion is now handled by MoltenVK
2022-02-07 13:07:30 -05:00
ea93df18dd
Remove all push constant binding declarations
...
This was a leftover from sharing GLSL with Metal and OpenGL, this is now a warning with modern SPIR-V compilers anyway.
2022-02-07 10:11:19 -05:00
48348ac09f
Fix two Vulkan validation errors for texture loading
...
* Now TransferSrc and TransferDst are defined for asset textures, specifically for loading image data into it and generating mipmaps from it.
2022-02-07 09:57:54 -05:00
aa8968625b
Add sibenik scene to example app
...
* Sourced from McGuire Computer Graphics Archive
* New compiled materials from models are pointed to the textures directory by default
* New models are given a "material hint" for easier authoring, will be an seperate option later on
* Introduced model version 7
2022-02-03 10:49:02 -05:00
8502521934
Rip out the material node system
...
This was over engineered, and it's blocking progress in the model compiler. Now it's
simpler, but not all features are implemented back.
2022-02-03 10:00:59 -05:00
e15d1c68f8
Add ability to select directory through imgui file picker
2022-02-01 20:53:47 +00:00
redstrate
ab814b7c78
Improve the look of console
2021-10-14 17:07:39 -04:00
redstrate
1ba5d8f8f3
Remove explicit Matrix constructor
2021-10-14 16:42:37 -04:00
redstrate
ff0115ed7a
Remove portaudio
2021-10-14 08:59:04 -04:00
redstrate
072298f4f1
Remove some extra debug messages
2021-10-14 08:58:53 -04:00