Commit Graph

2639 Commits

Author SHA1 Message Date
Ivan 'provod' Avdeev
f2f712b1a8 vk: fixup meatpipe error messages 2022-10-15 14:32:51 -07:00
Ivan 'provod' Avdeev
c6d29213ec vk: remove spirv parsing 2022-10-15 14:28:04 -07:00
Ivan 'provod' Avdeev
f7c04760e3 rt: begin loading meatpipe shaders 2022-10-15 14:26:58 -07:00
Ivan Avdeev
99489cf05c seba: add spirv.py 2022-10-15 13:05:31 -07:00
Ivan 'provod' Avdeev
09b0e0f8ff rt: deduplicate sbt spec copies into ray pass 2022-10-15 12:44:54 -07:00
Ivan Avdeev
9c679c39b8 seba: produce serialized meat file 2022-10-15 12:13:52 -07:00
Ivan Avdeev
9478c870e3 seba: improve shader loading a bit 2022-10-15 11:24:56 -07:00
Ivan Avdeev
9366a6ffda seba: handle --path better 2022-10-15 11:11:36 -07:00
Ivan Avdeev
3aa9b4bf3c vk: extract some bindings with names and sets 2022-10-15 11:07:53 -07:00
Ivan 'provod' Avdeev
78ec2e2c93 vk: start making script to compile pipelines 2022-10-09 13:29:26 -07:00
Ivan Avdeev
e849754fae vk: add spirv.h include path for win32 2022-10-07 17:20:02 +01:00
Ivan Avdeev
e506158ac1 rt: parse compute and rt shaders too 2022-10-07 08:49:04 -07:00
Ivan Avdeev
5d37985ec5 vk: begin parsing spir-v to find out about shader bindings 2022-10-05 21:39:02 -07:00
Ivan 'provod' Avdeev
3f52f46f7d update TODO with random notes 2022-09-30 01:05:07 -07:00
Ivan Avdeev
1eea3caa93
Merge pull request #347 from w23/better-sampling-passes-parallel
Do not wait on CPU for GPU frames to finish. Support up to 2 GPU frames in flight.
2022-09-17 12:18:25 -07:00
Ivan Avdeev
08f5939a19
Merge pull request #392 from w23/E202-synchronize-kusochki
fixes more weird square glitches
fixes staging management, improves texture uploading, etc
2022-09-17 11:50:20 -07:00
Ivan 'provod' Avdeev
86ad30c125 rt: fix dynamic/animated textures 2022-09-17 11:37:52 -07:00
Ivan 'provod' Avdeev
9712ae9c13 rt: fix staging command buffer overlap
1. Add one more command buffer to accommodate uploading stuff inbetween frames when there are already 2 frames in flight on GPU.

2. Remove committed from to-upload buffer/image tracking, as it is completely unnecessary.
2022-09-17 10:54:18 -07:00
Ivan 'provod' Avdeev
85899993fe rt: use flipping buffer for staging mem alloc 2022-09-11 12:09:47 -07:00
Ivan 'provod' Avdeev
2c4d0846d4 rt: reimagine staging
- make staging/prep phase use separate command buffer
- flush this command buffer early if needed
- move command pool to its own module
- move shader loading stuff to pipeline module
- cleanup lots of command buffer passing for model loading, it can use staging explicitly now
2022-09-11 11:38:51 -07:00
Ivan 'provod' Avdeev
f93ae5de80 vk: update aftermath to 2022.2; auto install its libraries 2022-09-05 11:23:37 -07:00
Ivan Avdeev
e1b570fc8f vk: fix no-aftermatch build 2022-09-03 14:24:19 -07:00
Ivan 'provod' Avdeev
61b2ced49f vk: add experimental nv checkpoints support
doesn't really work reliably
2022-09-03 14:04:50 -07:00
Ivan 'provod' Avdeev
0d349848ab vk: ask validation for sync and best practices 2022-09-03 12:08:46 -07:00
Ivan 'provod' Avdeev
d34bf3aa8d rt: fix studio models colorful flickering 2022-09-03 11:25:33 -07:00
Ivan 'provod' Avdeev
df09a4e637 rt: move AS management from vk_rtx to vk_ray_accel
no functional changes yet.
2022-08-27 12:30:53 -07:00
Ivan 'provod' Avdeev
275417772e rt: move image-related funcs from vk_rtx to vk_image 2022-08-27 11:39:29 -07:00
Ivan 'provod' Avdeev
77b05af59a rt: don't forget to fill kusochki with static geometry data on update
this also makes dynamic model gpu crashes more salient, investigating
2022-08-27 11:25:09 -07:00
Ivan 'provod' Avdeev
9a335a1e56 (wip) rt: add uploading kusochki on every frame
disabled due to severe glitches
2022-08-20 13:56:29 -07:00
Ivan 'provod' Avdeev
501c3d15ad rt: use staging to upload kusochki
fixes more weird square glitches
breaks animated textures, colors and conveyors
2022-08-20 12:13:03 -07:00
Ivan 'provod' Avdeev
7f3dca0993 rt: use proper staging for light uploading
also don't upload clusters as we're thinking about sunsetting them in their current form.
2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
41e5757c0a FIXME: rt: try disabling light grid entirely
this skips 40ms+ grid upload cost, and seems generally just a few ms more costly than sampling clusters.
however, there are sync glitches for reasons unknown.
2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
188d02c4aa rt: fix shader reloading validation crashes
wait for gpu to become idle before trying to recreate pipelines
2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
c53f22d028 rt: extract bit array 2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
9f6fa0a8cb rt: make lights data more private 2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
0f0a58d1aa rt: add debug markers to see that uploading lights takes >35ms 2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
1d2e763baf rt: add staging buffer for light grid, fix #368 2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
1d25b718dd rt: split light metadata/grid bindings back in shader
for some reason joining them leads to "invalid spirv" validation errors (and broken lights).
split the bindings back making shaders essentially unchanged, while still keeping a single physical buffer
2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
01d4764cf4 vk: do not compile dumbspter 2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
1b834f37be rt: join metadata and grid buffers together (breaks validation) 2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
608bf020c4 rt: move light metadata uploading to vk_light.c 2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
1f741a48a3 rt: hide emissive_textures info 2022-08-15 09:31:13 -07:00
Ivan 'provod' Avdeev
a5efa71ecb rt: clean vk_light a bit 2022-08-15 09:31:13 -07:00
Ivan Avdeev
202f2b8462 rt: print material load stats 2022-08-13 14:17:43 -07:00
Ivan Avdeev
8ee68935d0 rt: do not print each material texture lookup 2022-08-13 14:17:43 -07:00
NightFox
91df117998
new material paths (#382) 2022-08-12 10:27:41 -07:00
NightFox
557d6c1ab6
fix incorrect display device id in r_show_devices (R_GetRenderDevices_f) (#383)
fixed #381
2022-08-12 10:22:54 -07:00
Ivan Avdeev
bdbcddb5ea
Merge pull request #386 from w23/merge-from-upstream
Merge from upstream @ 28d7f2eaa2
2022-08-12 10:21:51 -07:00
Ivan Avdeev
85c55a7fc9 update after merge, make it build and run with rasterizer
have not checked ray tracing, or playing longer than a couple of minutes
2022-08-08 00:23:38 -07:00
Ivan Avdeev
6b9ddf288f Merge remote-tracking branch 'upstream/master' into merge-from-upstream 2022-08-08 00:08:17 -07:00