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