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
4a46786db0
Update example app to compile again
2021-04-20 12:17:49 -04:00
redstrate
99c033ea35
Remove useless const from math header
2021-04-20 12:07:00 -04:00
redstrate
43a98b0889
Move ray class to it's own file
2021-04-20 11:53:49 -04:00
redstrate
653d5bb6ca
Rename Input to input_system and move to prism namespace
2021-04-20 11:53:38 -04:00
redstrate
bae6d05184
Move console and log namespaces to prism
2021-04-20 11:23:53 -04:00
redstrate
8370dfb6d6
Rename ImGuiLayer to imgui_backend
2021-04-20 10:37:56 -04:00
redstrate
e01a31eb13
Use new SDL backend on Windows, fix numerous SDL problems as well
2021-04-20 00:23:14 -04:00
redstrate
a324821fe1
The unorm render pass is now created again
2021-04-19 23:39:34 -04:00
redstrate
59ee7faddd
Fix debug asset paths not appearing correctly on Windows
2021-04-19 12:38:33 -04:00
redstrate
4b9754fa03
Fix some clang-tidy warnings
2021-04-19 12:35:52 -04:00
redstrate
3827bede6d
Renames engine member variables to fix bad naming conventions
2021-04-19 12:29:49 -04:00
redstrate
4abf4b4ab8
Rename Engine to engine
2021-04-19 12:23:18 -04:00
redstrate
744123763f
Begin work on converting to the new class naming scheme and the new prism namespace
2021-04-19 12:06:44 -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
069cf3e84c
Delay static shadowmap generation by five frames to prevent them from "sticking"
2021-04-18 22:14:19 -04:00
redstrate
0861278ae5
Fix running out of descriptor sets very early when resizing editor viewports
2021-04-18 21:40:09 -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
c47f54992f
Add flag for apps like an editor who doesn't render any scene in the main window.
2021-04-18 21:38:57 -04:00
redstrate
9d3eb24d23
Add missing platform methods on Windows backend
2021-04-18 19:54:06 -04:00
redstrate
f0a1dc2f20
Add experimental SDL backend for Linux
2021-03-01 14:40:02 -05: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
bf192cd23a
Begin work for multiviewport support on Linux
2021-02-17 09:15:35 -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
77c9561868
Re-enable multiviewport
...
Also fixes a bunch of stuff to make multiviewport way more stable
2021-02-17 01:09:12 -05:00
redstrate
f3f6a219f6
Bring Metal backend up to speed
2021-02-17 01:08: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
e8032b8cf2
Move platform headers into their own interface target
2021-02-16 17:09:54 -05:00
redstrate
86efe2abf9
Fix up IBL stuff on Vulkan
2021-02-15 19:01:17 -05:00
redstrate
6d77396b4d
Support CopyTexture command on Vulkan
2021-02-15 17:59:54 -05:00
redstrate
3e4cf70c8e
Fix compilation issues on GCC/Linux
2021-02-15 15:06:13 -05:00
redstrate
e53206e906
Improve the look of material nodes
2021-02-08 20:21:42 -05:00
redstrate
572388c6c5
Remove unused start_render function
2021-02-08 17:41:57 -05:00
redstrate
8f4b9f593c
Support all culling and winding modes on Vulkan
2021-02-07 16:37:38 -05:00
redstrate
a80b6034c5
Support all depth mode types on Vulkan
2021-02-07 16:34:22 -05:00
redstrate
a74465fefe
Add support for the SetDepthBias cmd on Vulkan backend
2021-02-07 16:32:25 -05:00
redstrate
bc33054fb3
Add more sampler options to Vulkan backend
2021-02-07 16:22:06 -05:00
redstrate
90272af197
Only enable validation if found on system
...
Works with the new Vulkan configurator method of enabling validation. Also only enables debug printing if the extension is found.
2021-02-07 15:48:09 -05:00
redstrate
f5f107b0b4
Disable IBL on Windows
...
There isn't enough features on the Vulkan backend to prevent it from crashing :V
2021-02-05 20:21:25 -05:00
redstrate
73fa35b674
Non-mac platforms can finally load the proper imgui font
2021-02-05 20:05:10 -05:00
redstrate
d97e88741b
Handle pipelines with no fragment shaders on Metal
2021-02-05 19:50:19 -05:00
redstrate
fcf6277032
Fix embarassing macOS/iOS switchup
2021-02-05 19:50:00 -05:00