Archived
1
Fork 0
Commit graph

301 commits

Author SHA1 Message Date
7cc9ea06a8 Fixup Metal GFX backend 2022-04-04 07:58:16 -04:00
80a74c15cd Goodbye, WebGPU
The web backend however, is being kept - for the future in case WebGPU gets added back or WebGL support is added
2022-03-10 10:26:59 -05:00
239ecc8d56 Revert "Another big WebGPU compatibility patch"
This reverts commit 3229c4fa2c.
2022-03-10 10:21:09 -05:00
dbc03078de Revert "Start to separate combined image samplers"
This reverts commit a0d92be759.
2022-03-10 10:21:03 -05:00
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
3229c4fa2c Another big WebGPU compatibility patch
All specialization constants are removed (they cause trouble in
WebGPU, since they don't support array sizing, and it was a pain
in Metal anyway) - they are now macro defined. WebGPU now runs, although
push constant emulation is not implemented yet.
2022-03-07 00:33:44 -05:00
a52cd3d71c Fix WebGPU compile error due to last commit 2022-03-06 22:51:56 -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
e1767e9363 Add more WebGPU draw commands 2022-03-06 21:40:58 -05:00
088fe9875c Fill alpha on default clear color 2022-03-06 21:40:00 -05:00
3e08319684 Add support for more GFX texture usages to WebGPU 2022-03-06 19:38:17 -05:00
1c8e563e10 Static cast to float in ShadowPass::render_sun 2022-03-06 19:17:32 -05:00
f49ef792ab Remove old macro'd render options 2022-03-06 19:17:09 -05:00
0d0a37e315 Use unsigned integers in more places 2022-03-06 19:16:54 -05:00
46f9e99b94 Revert changing buffer index locations
This appeases Metal again
2022-03-06 17:23:01 -05:00
9dc43d9502 Add material path to pipeline debug name 2022-03-06 17:22:45 -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
33680efe7b Appease MSVC 2022-03-04 19:17:07 -05:00
7f479b0e0b Properly copy data on macOS
This also fixes cfg init failing on macOS
2022-02-22 09:34:00 -05:00
e1c688bea7 Completely overhaul shader generation, again
Now it's even simpler, and it now generates multiple
shader languages at once! The copying mechanism is now
much simpler on non-mac platforms as well. HLSL is also now a supported shader target language.
2022-02-21 18:07:22 -05:00
e03d0eceac Add ability to load console commands from a cfg file 2022-02-21 17:37:27 -05:00
4f75d09eaf Move data folder into example directory 2022-02-21 17:37:10 -05:00
bc67dcce17 Make most render options accessible from console 2022-02-21 17:17:55 -05:00
bbff84eb61 Actually disable normal shadowing 2022-02-21 17:09:32 -05:00
a456dcb41a Disable expensive normal self-shadowing by default 2022-02-21 17:05:41 -05:00
8361590294 Don't call new every frame on Vulkan 2022-02-21 17:05:30 -05:00
5d7e98c4be Enumerate devices on DX12 2022-02-21 16:32:05 -05:00
a039d43d2e Fix a stupid typo in materialcompiler.cpp 2022-02-21 15:57:38 -05:00
5c8b690d66 Merge remote-tracking branch 'origin/master' 2022-02-21 15:54:17 -05:00
6be0616d1e Use DX12 by default on Windows 2022-02-21 15:53:42 -05:00
83acffbf5c Fill out DX12 backend 2022-02-21 15:40:27 -05:00
8e360fa971 Fix MinGW compiler error 2022-02-21 15:29:32 -05:00
7b67ed73d8 Use fmt::memory_buffer in material compiler 2022-02-21 13:20:55 -05:00
5401188196 Allow overriding the gfx backend at runtime
You can now specify -vulkan, -metal, etc to the SDL backend.
2022-02-21 12:27:29 -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
f932f83b89 Output GLSL from shader compiler
This should be optimized later :-)
2022-02-21 12:08:27 -05:00
d31715526a Add file::seek method 2022-02-21 12:07:30 -05:00
477ea95905 Fix metal not getting drawable correctly 2022-02-21 12:07:16 -05:00
9b507aa79a Fix up macOS build 2022-02-21 11:47:23 -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
f0a72530b7 Remove some unnecessary cruft from CMakeLists.txt 2022-02-21 10:13:47 -05:00
757f61f433 Fixup GFX dummy header (again, again) 2022-02-21 00:28:39 -05:00
ea3049cb8a Remove default arguments in GFX api 2022-02-21 00:16:02 -05:00
0265f1920e Default initialize some more variables in example 2022-02-21 00:15:46 -05:00
ed8adba8ff Change %lu -> %llu in debug menu 2022-02-21 00:15:02 -05:00
b0d875832d Add [[nodiscard]] to some more methods 2022-02-21 00:14:47 -05:00
4d9a333781 Remove, cleanup some constructors 2022-02-21 00:14:12 -05:00
e13af96a72 Remove some unnecessary header includes 2022-02-21 00:13:45 -05:00
e2eaf2edb8 Remove unnecessary const in string_utils.hpp 2022-02-21 00:12:51 -05:00