Archived
1
Fork 0
Commit graph

281 commits

Author SHA1 Message Date
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
a1b80f643f Outputted SPIR-V files are now appended with .spv 2022-02-20 22:51:39 -05:00
6926980f70 Removing some unnecessary std430's from push constant blocks 2022-02-20 22:51:23 -05:00
c557c51eb6 Stop dumping source glsl into the console 2022-02-20 22:49:26 -05:00
3cdeebf6bc Reduce the indices of the vertex buffers in an attempt to make WebGPU happy 2022-02-20 22:28:54 -05:00
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