Archived
1
Fork 0
Commit graph

295 commits

Author SHA1 Message Date
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
82ea9d17a2 Fixup Dummy GFX files, again 2022-02-21 00:12:29 -05:00
516c2129eb Remove old font.hpp 2022-02-21 00:12:09 -05:00
f71fda776d Protect against self-assignment in AssetPtr 2022-02-21 00:11:43 -05:00
cc49340cd9 Remove unused MaterialProperty constructor 2022-02-21 00:11:28 -05:00
82eab9bd91 Pass by reference in asset functions 2022-02-21 00:11:13 -05:00
d167471369 Reformat input.cpp 2022-02-20 23:41:40 -05:00