redstrate
01966c1d81
Rename File -> file and move under the prism namespace
2021-05-12 08:50:02 -04:00
redstrate
ee2771f45f
Add compute pipeline support for Vulkan
...
* Image transition layouts are not handled correctly yet, so auto exposure does not work
* Image usage and guessed image layout is redone to remove some errors
2021-05-11 19:16:54 -04:00
redstrate
87f15b2007
Completely redo the CMake shader compilation system
...
* Now shader recompilation happens only when it needs to. Hurray for faster compiles!
* Changes to constructors for ShaderSource to make it more explicit.
* The version of SPIRV-Cross is updated, and now the glslang version pulled correctly matches what SPIRV-Cross needs. This fixes the annoying "cannot parse built-ins" bug.
2021-05-09 19:10:23 -04:00
redstrate
7b23fdfa09
Rename Renderer to renderer, move it to prism namespace, and rename last of member variables
2021-04-20 13:53:38 -04:00
redstrate
ff8e52ed90
Rename Renderer member variables and remove some unused b its
2021-04-20 13:25:59 -04:00
redstrate
bae6d05184
Move console and log namespaces to prism
2021-04-20 11:23:53 -04:00
redstrate
a324821fe1
The unorm render pass is now created again
2021-04-19 23:39:34 -04:00
redstrate
2552398aff
Rename some Renderer functions to make their intent clearer
2021-04-19 11:40:10 -04:00
redstrate
4696ba53a5
Allow shader hot reloading to work regardless of the API used
2021-04-18 22:27:05 -04:00
redstrate
6a26ab4bef
Move current frame counting to rendering instead of during the imgui pass
2021-04-18 21:39:53 -04:00
redstrate
aac44f763c
Fix multiviewports crashing on Linux
2021-02-24 14:18:51 -05:00
redstrate
c7efea5258
Add more windowing stuff to Linux backend, fix some other clang-analyze bugs
2021-02-18 08:31:36 -05:00
redstrate
1a324e61af
Remove dynamic data system, replace it on the renderer level
2021-02-17 08:51:47 -05:00
redstrate
bb00009041
Put imgui buffers into render targets
...
Makes imgui multiviewports work now!
2021-02-17 01:32:46 -05:00
redstrate
1f98e19819
Fix compile issues on Vulkan, make render targets work in editor
2021-02-17 00:47:05 -05:00
redstrate
8e781f3b5c
Support new render target api in editor
2021-02-17 00:15:59 -05:00
redstrate
a6a46abb36
Begin transition to new render target system
...
Things are definitely broken now
2021-02-16 19:22:32 -05:00
redstrate
e8fc757d99
Add basic shader editing system
...
POC, only registered shader is the sky shader
2021-02-16 17:10:37 -05:00
redstrate
86efe2abf9
Fix up IBL stuff on Vulkan
2021-02-15 19:01:17 -05:00
redstrate
3e4cf70c8e
Fix compilation issues on GCC/Linux
2021-02-15 15:06:13 -05:00
redstrate
572388c6c5
Remove unused start_render function
2021-02-08 17:41:57 -05:00
redstrate
63f844a20d
Batch viewport render commands with main render commands
...
I don't know why I did it the other way...?
2021-02-05 19:35:13 -05:00
redstrate
a8f3122ed9
Change wrong shader inputs
2021-02-04 09:01:39 -05:00
redstrate
93b55e7022
Add debug names for textures
...
Also changes pipeline barrier behavior, disable project window on Windows, and change window resizing behaviour to get around Windows-specific bug
2021-02-04 08:21:40 -05:00
redstrate
38250e1663
Fix vulkan image transitions
2021-02-03 09:04:30 -05:00
redstrate
0c3c879497
More vulkan fixes
2021-02-03 06:55:46 -05:00
redstrate
cddb50c4d6
Only render DoF when enabled
2020-12-28 15:32:48 -05:00
redstrate
b3ecbab352
Last changes to make Vulkan backend work
...
Now it renders with IBL and shadows off! yay!
2020-09-30 19:18:17 -04:00
redstrate
505934fae8
Fix last few vulkan errors
...
Vulkan backend now renders! (albiet incorrectly)
2020-09-23 11:54:59 -04:00
redstrate
1ba9222a43
Add labels for render passes and framebuffers
2020-09-23 10:17:24 -04:00
redstrate
482c7ef748
Fix vulkan backend validation errors
2020-09-23 09:53:45 -04:00
redstrate
2113c9a7da
Only use non-infinite perspective when required
2020-09-22 22:45:21 -04:00
redstrate
f10b5fd62b
Add debug toggle for dynamic resolution
2020-09-22 22:10:02 -04:00
redstrate
91600b5f6f
Add toggle for experimental depth of field effect
2020-09-22 21:47:11 -04:00
redstrate
24d3ac12c1
Add auto exposure mode
2020-09-22 20:05:51 -04:00
redstrate
4b4fc0b00d
Add buffer/image binding for compute, and add histogram construction
2020-09-22 17:27:10 -04:00
redstrate
5d93616e03
Add functions to dispatch compute workloads
2020-09-22 16:09:25 -04:00
redstrate
41ef1c33f5
Add framework for compute shaders
2020-09-22 15:39:20 -04:00
redstrate
bcac561a1e
Create color space and tonemapping render options
2020-09-22 15:25:06 -04:00
redstrate
2ffd1a421e
Remove even more includes
2020-09-21 09:37:52 -04:00
redstrate
29633020c9
Remove unnecessary includes
2020-09-20 23:31:03 -04:00
redstrate
8f652f8b7d
Fix SRGB handling, now converting from srgb->linear properly
2020-08-19 22:09:32 -04:00
redstrate
e1205662ec
Insert float epsilon to prevent NaN and other artifacts in infinite perspectives
2020-08-18 00:46:16 -04:00
redstrate
b2deff18aa
Remove correction_matrix, produce left-handed transforms, and fix PCSS shadowing
2020-08-18 00:35:49 -04:00
redstrate
2181611c2e
Remove extraneous debug messages
2020-08-17 10:11:58 -04:00
redstrate
66858c687f
Render all parts in mesh thumbnail, and use bounding box to determine camera distance
2020-08-17 08:45:28 -04:00
redstrate
92e04068fd
Remove kD term, improve fresnel reflections and fix scene capture
2020-08-16 23:31:00 -04:00
redstrate
80fd8a375b
Unify standalone and runtime shader compiler, rename old ShaderCompiler to MaterialCompiler
2020-08-15 20:09:16 -04:00
redstrate
9cd7860ab9
Clean up sky shaders and extra push constant data
2020-08-14 23:32:02 -04:00
redstrate
94953c62f0
Fix errors when compiling with MSVC
2020-08-13 07:48:50 -04:00