Commit Graph

660 Commits

Author SHA1 Message Date
Ivan Avdeev
f607be0831 add tentative plan for next stream 2022-11-05 14:46:47 -07:00
Ivan Avdeev
7d591c46dd vk: remove old fixme declared types for bindings 2022-11-05 14:44:17 -07:00
Ivan Avdeev
84cdbdb331 seba: extract types from spirv 2022-11-05 14:27:45 -07:00
Ivan 'provod' Avdeev
f5779956c9 meat: recover in/out from bindings directly
sebastian detects out_ prefix in binding name, writes it as write_bit in binding header
meatpipe then reads it and adjusts semantic accordingly
2022-11-05 12:33:07 -07:00
Ivan 'provod' Avdeev
9fded1e4ca vk: remove old hardcoded bindings definitions 2022-11-05 11:34:02 -07:00
Ivan Avdeev
3f01b95459 fixup missing resource description 2022-10-29 15:53:08 -07:00
Ivan Avdeev
31a1aef6ab fixup linux 2022-10-29 15:43:28 -07:00
Ivan 'provod' Avdeev
a5d5167f1d meat: use bindings from meat file
also compare them with currently hardcoded values to make sure there are no regressions

next:
- remove old hardcoded semantic/binding tables
- remove comparisons
- extract formats from spirv
2022-10-29 15:34:37 -07:00
Ivan 'provod' Avdeev
c2e4f199ec rt: expose light binding name directly 2022-10-29 14:05:28 -07:00
Ivan 'provod' Avdeev
6cc8bb2f46 rt: name uniform buffers directly to ease spirv parsing 2022-10-29 14:01:14 -07:00
Ivan 'provod' Avdeev
2f45e38e62 seba: quiet 2022-10-29 13:25:00 -07:00
Ivan 'provod' Avdeev
1500cea931 meat: write and parse bindings (not used for layout yet) 2022-10-29 12:52:29 -07:00
Ivan 'provod' Avdeev
556440df27 seba: collect all bindings for pipelines 2022-10-29 12:25:56 -07:00
Ivan 'provod' Avdeev
6f80bc0015 seba: slightly improve serialization routines 2022-10-29 11:35:50 -07:00
NightFox
af8702ecb3 added support comments for rt.json
support //comment and /* comment */
and autofix comma
2022-10-24 13:43:25 +03:00
Ivan Avdeev
c2cf738483 fixup linux compilation 2022-10-22 16:53:32 -07:00
Ivan 'provod' Avdeev
2252731073 meat: remove support of loading shaders from files for passes 2022-10-22 15:07:09 -07:00
Ivan 'provod' Avdeev
c1cc5f56f6 rt: remove direct usage of passes 2022-10-22 14:52:24 -07:00
Ivan 'provod' Avdeev
dcc96fe7ed meat: also store shader names 2022-10-22 14:44:31 -07:00
Ivan 'provod' Avdeev
5600ce7569 rt: use meatpipe for rendering 2022-10-22 14:43:41 -07:00
Ivan 'provod' Avdeev
d4114b8423 meat: load pipelines from meat
- added shader_module alongside shader filenames to various things from ray pass to pipelines and stages
- this broke unconditional deletion of shader modules, because now lifetime is controlled from outside. this is commented out
- layout data is passed to meatpipe as extern for known string names of pipelines. this will be fixed when we start pasing bindings properly

these pipelines aren't used yet.
2022-10-22 13:04:00 -07:00
Ivan Avdeev
b63c328ed5 vk: update % for long-long on 32 bit linux 2022-10-17 08:35:10 -07:00
Ivan Avdeev
ca296d7a4e meat: remove extra debug log param 2022-10-17 00:14:37 -07:00
Ivan Avdeev
141cc5de64 vk: silence "may be used uninitialized" warning 2022-10-17 00:01:48 -07:00
Ivan Avdeev
7f80985124 vk: fixup swapchain printf 2022-10-16 23:51:59 -07:00
Ivan Avdeev
ecac9a1f48 vk: compile w/ -Werror, fix a bunch of bad stuff 2022-10-16 23:44:13 -07:00
Ivan Avdeev
cb406f14c5 meat: fixup build on linux 2022-10-16 23:26:59 -07:00
Ivan 'provod' Avdeev
cb0d09557d meat: stub parsing pipelines 2022-10-15 15:09:45 -07:00
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 '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