Archived
1
Fork 0
Commit graph

82 commits

Author SHA1 Message Date
redstrate
e8bf0a8371 Create presentation command buffers for each surface instead of sharing globally
* Fixes multi-window vulkan validation errors because surfaces would just keep overwriting each other's command buffers.
2021-06-01 12:05:48 -04:00
redstrate
2db8873f92 Fix imgui validation errors on Vulkan
* Eventually, get_buffer_contents() will be removed
2021-06-01 12:02:38 -04:00
redstrate
e63caf1a83 Fix some more image transition bugs related to vulkan dispatch 2021-06-01 11:49:27 -04:00
redstrate
f69d7c18fd Fix image layout transistions for mipmap gen 2021-06-01 11:10:58 -04:00
redstrate
e55a71402f Fix auto-exposure in Vulkan
* I forgot to bind the shader buffer again :-p (maybe we should change this functionality under Vulkan
to match Metal rules?)
2021-06-01 10:44:08 -04:00
redstrate
181d2fda06 Fix sampling modes on shadow maps 2021-05-12 10:52:57 -04:00
redstrate
eab8a265f4 Add probe refresh timer (similiar to how shadows work) to generate probes correctly on scene load 2021-05-12 10:33:38 -04:00
redstrate
de928a44ce Implement GenerateMipmaps command in Vulkan 2021-05-12 10:29:29 -04:00
redstrate
9951ffa58e Rename vecX -> floatX 2021-05-12 09:56:44 -04:00
redstrate
fa65e99094 Rename Path -> path 2021-05-12 09:05:56 -04:00
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
3e0f294d0c Enable IBL by default on Windows 2021-05-11 16:04:13 -04:00
redstrate
5546c88cba IBL now works on Vulkan!
* Image transitions are handled more correctly, reducing errors
* Cubemaps are now transitioned properly when using the CopyTexture command
* Cubemap image views are created correctly
2021-05-11 15:57:14 -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
069cf3e84c Delay static shadowmap generation by five frames to prevent them from "sticking" 2021-04-18 22:14:19 -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
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
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
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
572388c6c5 Remove unused start_render function 2021-02-08 17:41:57 -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
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
e9bb4bc82c More debug label changes 2021-02-05 19:17:13 -05:00
redstrate
ae599ba744 Make fragment shader stage optional
Removes the fragment on (normal) shadow pass
2021-02-04 09:36:06 -05:00
redstrate
a8f3122ed9 Change wrong shader inputs 2021-02-04 09:01:39 -05:00
redstrate
a56fa3030e Enable default imgui font again on windows 2021-02-04 08:28:19 -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