Commit Graph

294 Commits (1.11.0)

Author SHA1 Message Date
cosmonaut 0e05ed6b34 Buffer and Submission Rework (#1)
continuous-integration/drone/push Build is passing Details
We used to have monolithic uniform buffers on the VulkanRenderer object, but this was inefficient in the case of threaded usage.

Now, we have a pool of uniform buffers. A uniform buffer is selected from the pool when a pipeline is bound. The uniform buffers are rotated upon presentation.

Now pushing uniforms is now a concern of the command buffer instead of the pipeline. The pipeline should just always have been a static object anyway.

Additionally, we now do extra buffer record-keeping so that buffer data can be updated after a bind/draw.

Fence submission has also been restructured so that submissions don't cause unnecessary blocks. Now we assign one fence per submission, and we don't wait for fences until it's time to present.

Reviewed-on: #1
Co-authored-by: cosmonaut <evan@moonside.games>
Co-committed-by: cosmonaut <evan@moonside.games>
2022-01-12 22:41:10 +00:00
David Weil c51b4e95d2 Fixed multiple command buffer submissions 2022-01-03 13:51:13 -08:00
cosmonaut c7666cd8fc fix use after free 2022-01-03 10:36:47 -08:00
cosmonaut ca07286e29 change texture transfer to be per-CB 2022-01-02 14:35:57 -08:00
cosmonaut 78c5d54bf1 revise SetTextureData to take a command buffer
continuous-integration/drone/push Build is passing Details
2021-11-14 20:36:26 -08:00
cosmonaut fa61cd4653 remove cursed typedef
continuous-integration/drone/push Build is passing Details
2021-11-08 14:48:44 -08:00
cosmonaut ab941a68df fix debug mode flag not set before creating instance
continuous-integration/drone/push Build is passing Details
2021-11-08 14:25:18 -08:00
cosmonaut 8e37f72dc2 fix windows build release path
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build is passing Details
2021-02-27 15:35:46 -08:00
cosmonaut 9e508f4a0b add release step
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build is passing Details
2021-02-27 15:29:07 -08:00
cosmonaut 7ffaa28ae5 update vulkan headers
continuous-integration/drone/push Build is passing Details
2021-02-27 15:14:48 -08:00
cosmonaut d53d777c31 never mind
continuous-integration/drone/push Build encountered an error Details
2021-02-27 15:06:38 -08:00
cosmonaut 92cfbfb8f8 spend latest
continuous-integration/drone/push Build encountered an error Details
2021-02-27 15:01:16 -08:00
cosmonaut 66c46c4bbd docker image has SDL2-devel
continuous-integration/drone/push Build is failing Details
2021-02-27 14:58:40 -08:00
cosmonaut 20033769c5 docker image takes care of some of these packages
continuous-integration/drone/push Build was killed Details
2021-02-27 14:18:31 -08:00
cosmonaut 98d31a3a57 separate windows build dir
continuous-integration/drone/push Build is failing Details
2021-02-27 13:37:19 -08:00
cosmonaut 2255c9d81a use mingw64-cmake
continuous-integration/drone/push Build is passing Details
2021-02-27 13:35:13 -08:00
cosmonaut f70b4cc285 trying something
continuous-integration/drone/push Build is failing Details
2021-02-27 13:25:19 -08:00
cosmonaut 3c75371168 there it is
continuous-integration/drone/push Build is failing Details
2021-02-27 13:19:12 -08:00
cosmonaut 5924be20a7 is this what its called
continuous-integration/drone/push Build is failing Details
2021-02-27 13:17:21 -08:00
cosmonaut adcfa2bb6c make windows build use mingw
continuous-integration/drone/push Build is failing Details
2021-02-27 13:14:39 -08:00
cosmonaut 7a35721a69 whoops
continuous-integration/drone/push Build is passing Details
2021-02-27 13:13:42 -08:00
cosmonaut 5c61dc1bc5 fix build dir
continuous-integration/drone/push Build is failing Details
2021-02-27 13:11:37 -08:00
cosmonaut 2fe0396bcc separate steps for linux and windows
continuous-integration/drone/push Build is failing Details
2021-02-27 13:10:20 -08:00
cosmonaut 587f74bf34 re-add SDL2-devel to build
continuous-integration/drone/push Build is passing Details
2021-02-27 13:07:09 -08:00
cosmonaut 6b2f49dd22 trying new docker image
continuous-integration/drone/push Build is failing Details
2021-02-27 13:03:30 -08:00
cosmonaut dd1ba55312 fix YUV upload 2021-02-27 13:03:30 -08:00
cosmonaut b6a09517c2 change clear color type
continuous-integration/drone/push Build is passing Details
2021-02-09 22:51:49 -08:00
cosmonaut 17524fd30b fix depth attachment barriers
continuous-integration/drone/push Build is passing Details
2021-02-09 17:52:26 -08:00
cosmonaut 8f1cdf190f change shader uniform push to take pipelines instead of command buffers
continuous-integration/drone/push Build is passing Details
2021-02-05 19:59:29 -08:00
cosmonaut 7f3e89315e uniform API update
continuous-integration/drone/push Build is passing Details
2021-02-02 16:37:01 -08:00
cosmonaut 4699c158f3 calculate texture length internally + fix rename
continuous-integration/drone/push Build is passing Details
2021-01-31 21:17:27 -08:00
cosmonaut 76c845cbb4 rename PushShaderParams to PushShaderUniforms
continuous-integration/drone/push Build is passing Details
2021-01-31 19:37:16 -08:00
cosmonaut 254d209a48 fix issue where texture staging buffer would be too small to contain incoming data
continuous-integration/drone/push Build is passing Details
2021-01-31 18:01:21 -08:00
cosmonaut a60725fecc fix bad malloc size
continuous-integration/drone/push Build is passing Details
2021-01-31 17:16:32 -08:00
cosmonaut d99bd756f4 remove extra region merge checks
continuous-integration/drone/push Build is passing Details
2021-01-31 16:29:38 -08:00
cosmonaut 952cf974b4 fix empty compute image descriptor set creation
continuous-integration/drone/push Build is passing Details
2021-01-31 14:30:16 -08:00
cosmonaut 52d06f9f6c merge free regions
continuous-integration/drone/push Build is passing Details
2021-01-29 16:03:00 -08:00
cosmonaut b2199fcaae improve device enumeration + fix host memory allocation
continuous-integration/drone/push Build is passing Details
2021-01-29 15:57:58 -08:00
cosmonaut 978d1e9451 cpu texture alloc tweak
continuous-integration/drone/push Build is passing Details
2021-01-28 22:05:44 -08:00
cosmonaut 7bbb15d8a5 fix depth RTs
continuous-integration/drone/push Build is passing Details
2021-01-28 21:48:50 -08:00
cosmonaut b854a822d6 fix some depth issues
continuous-integration/drone/push Build is passing Details
2021-01-28 21:37:11 -08:00
cosmonaut 6457967470 texture alloc fallback to host memory
continuous-integration/drone/push Build is passing Details
2021-01-27 12:51:36 -08:00
cosmonaut 68d9a74ff4 change renderArea to a pointer
continuous-integration/drone/push Build is passing Details
2021-01-26 20:27:42 -08:00
cosmonaut 316e662f44 remove distinction between color target and depth target
continuous-integration/drone/push Build is passing Details
2021-01-26 18:57:46 -08:00
cosmonaut 81ca5371a5 update build badge
continuous-integration/drone/push Build is passing Details
2021-01-23 08:52:51 +00:00
cosmonaut fe03f1739a change Clear definition to make more sense
continuous-integration/drone/push Build is passing Details
2021-01-22 14:16:02 -08:00
cosmonaut d9700707d0 fix index buffer binding
continuous-integration/drone/push Build is passing Details
2021-01-21 14:03:36 -08:00
cosmonaut 41ea091749 fix hang when staging buffer flushes
continuous-integration/drone/push Build is passing Details
2021-01-21 12:34:50 -08:00
cosmonaut 6a1c2aa9bf fix transfer flush submission
continuous-integration/drone/push Build is passing Details
2021-01-20 17:16:43 -08:00
cosmonaut 3205d8895c update badge 2021-01-18 20:54:34 -08:00