Commit Graph

31 Commits

Author SHA1 Message Date
350ab21209 engine: add a method to retrieve all available GPUs (only for Vulkan), add r_refdll_loaded cvar to indicate current loaded renderer 2021-12-11 13:14:54 -08:00
NightFox
907b3f40b3 add GPU selector logic and...
rename VK_LoadCvarsRTX to VK_LoadCvarsAfterInit
2021-12-11 13:14:54 -08:00
Ivan 'provod' Avdeev
e6db0fde45 add debug names to various vk images 2021-11-07 13:49:44 -08:00
Ivan Avdeev
280e6109c6 add screenshots
now vulkan can do screenshots too. however, it depends on blits being
available between swapchain and rgba8 formats, so if it's not the case
for some reason, the resulting image will have mixed components.
2021-08-31 11:19:44 -07:00
Ivan Avdeev
e6f8d8e47a enable anisotropy if available
also force require vulkan 1.2 for now, need to have 1.0 device for testing lower versions (TODO)
2021-08-07 18:06:48 -07:00
Ivan Avdeev
364b46ea87 [WIP] rtx: first build with ray tracing pipeline and black screen 2021-07-05 13:24:57 -07:00
Ivan Avdeev
266f407b40 ref_vk: use poolhandle_t 2021-06-07 00:16:54 -07:00
Ivan 'provod' Avdeev
656c00d0b8 fix building and running on linux 2021-06-06 14:17:35 -07:00
Ivan 'provod' Avdeev
eaaadf024e rtx: coalesce building blases in a single command buffer 2021-05-28 10:10:20 -07:00
Ivan 'provod' Avdeev
6614a6935b add debug names to various objects 2021-05-17 10:36:40 -07:00
Ivan 'provod' Avdeev
354eef1c0a rtx: fix validation complaint, ask for more caps 2021-05-08 14:30:33 -07:00
Ivan 'provod' Avdeev
0b9ec7ee42 rtx: sample previous frame to get a naive blurry denoiser 2021-03-20 13:42:15 -07:00
Ivan 'provod' Avdeev
3045c6ea1f rtx: render into fixed 720p framebuffer then upscale
help with perf stability
2021-03-20 11:15:57 -07:00
Ivan 'provod' Avdeev
cbed97948c add preliminary support for dlights
Move descriptors away from vk_core
Add UBO for dlights
Add test lighting in brush shader
Add brush normals
2021-03-06 16:40:35 -08:00
Ivan Avdeev
5e3010489b rtx: blindly add tlas and compute rendering
it's unknown whether it works at all
no real ray tracing yet
2021-03-01 10:52:08 -08:00
Ivan 'provod' Avdeev
c77f39e353 rtx: fix blas creation validation/memory errors 2021-02-27 15:40:57 -08:00
Ivan Avdeev
9954288450 rtx: add blas building skeleton 2021-02-27 13:43:49 -08:00
Ivan Avdeev
46da9ad457 rtx: request RTX device extensions when -rtx argument is present
It doesn't do anything yet.
2021-02-22 09:46:29 -08:00
Ivan Avdeev
6b2c8977ae add pipeline cache 2021-02-06 11:38:21 -08:00
Ivan Avdeev
e848e312d3 add VK_EXT_debug_utils labels
This extension allows adding labels to vulkan objects and insert string
labels into command buffers. This is visible in tools like RenderDoc and
helps with debugging a lot.

When running with -vkdebug:
- mark all texture VkImages and VkImageViews with corresponding names
- label brush model draw calls accordingly
2021-01-31 16:50:27 -08:00
Ivan Avdeev
5d0146e17a draw static map geometry with debug shader
there are lots of glitches and no textures, but this is a first step!
2021-01-23 19:38:00 -08:00
Ivan Avdeev
5a2ad5965d add depth buffer and map geometry loading
it's not being drawn yet though
2021-01-23 10:54:44 -08:00
Ivan Avdeev
ef3a1ad4af handle surface resize 2021-01-18 11:15:51 -08:00
Ivan Avdeev
d4c463c507 move swapchain to framectl; make validation errors crash process early 2021-01-18 10:54:48 -08:00
Ivan Avdeev
4d6739da0a get it to crappily draw 2d ui menus wtf 2021-01-16 17:02:43 -08:00
Ivan Avdeev
5541bfb541 add loading textures 2021-01-16 15:45:10 -08:00
Ivan Avdeev
b9d872f279 increase draw limit; fix deinit validation 2021-01-16 13:49:07 -08:00
Ivan Avdeev
48e6765222 draw uv menu 2021-01-16 13:22:31 -08:00
Ivan Avdeev
e7a99c2558 create command pool and buffer 2021-01-13 12:10:36 -08:00
Ivan Avdeev
5600cf45ef create pipeline for 2d rendering 2021-01-13 11:54:34 -08:00
Ivan Avdeev
3e800fa989 start splitting into functional blocks; add vk funcs 2021-01-09 13:21:58 -08:00