ca2c2c9d3d
Move all engine-specific models, materials etc. to a new base directory
...
This is a huge change, and basically breaks everything (as per usual!)
First of, this includes stuff like shaders so anything involving those
are broken and then fixed. A new BuildAssets cmake file is added to
aid in running AssetCompiler, and it seems to work fine on the engine
base assets.
The File API will eventually be revamped to handle this new way of
organizing the files and domains will eventually be gotten rid of all
together since I probably will replace it with game directory
priorities. As it stands right now, there isn't a way to easily
replace say - render_options.cfg with your own game-specific version.
Apple builds are probably broken by this commit (since I'm moving
around content and shader directories) to be fixed later.
2022-05-21 18:28:48 -04:00
94b83f4996
Remove duplicate std::filesystem::path hash function
...
Recent c++ std implementations now provide this (like they should've
from the beginning...)
2022-05-21 16:27:07 -04:00
55fea3e31c
Output console commands into console output
2022-04-07 11:19:31 -04:00
ecea7f990e
Seperate exposure pass from the rest of post processing
...
This prevents gamma-weirdness with SMAA
2022-04-04 12:15:15 -04:00
b5655efe0e
Fix more stuff in SMAA pass
...
Now it's no longer flipped for some reason, gamma correction soon to follow
2022-04-04 11:06:39 -04:00
37866a9470
Fix implicit render pass dependencies and some more validation warnings
2022-04-04 10:38:08 -04:00
b605685f7a
Fix renderdoc crash
2022-04-04 09:35:43 -04:00
f036198bb9
Fix SMAA border color and nearest filter on search texture
2022-04-04 08:35:02 -04:00
b80aa8ccf2
Add min/mag filter to texture creation info
2022-04-04 08:34:26 -04:00
eecc88ddcc
Remove some debug messages
2022-04-04 08:22:25 -04:00
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