cosmonaut
42f5f84524
Transfer Buffer Pool ( #7 )
...
Reviewed-on: MoonsideGames/Refresh#7
Co-authored-by: cosmonaut <evan@moonside.games>
Co-committed-by: cosmonaut <evan@moonside.games>
2022-01-20 22:56:28 +00:00
cosmonaut
c5a689c6d6
fix bad realloc
2022-01-17 21:28:25 -08:00
cosmonaut
80fdf09d86
fix some fence edge cases
2022-01-17 21:09:27 -08:00
cosmonaut
e59e3e6b02
insert missing memory barrier after buffer copy
2022-01-17 19:57:45 -08:00
cosmonaut
49d7b1fabc
fix transfer buffer offset not incrementing
2022-01-17 18:32:45 -08:00
cosmonaut
34e4b4f576
SetBufferData rework ( #6 )
...
Buffer uploads now require a command buffer, like textures do. Additionally it is now regarded as an error to upload data in the middle of a render pass.
Reviewed-on: MoonsideGames/Refresh#6
Co-authored-by: cosmonaut <evan@moonside.games>
Co-committed-by: cosmonaut <evan@moonside.games>
2022-01-13 23:08:08 +00:00
cosmonaut
0cd9a2e8e9
fix validation error on exit
2022-01-13 12:03:44 -08:00
cosmonaut
0ffa045f78
fix UBO descriptor set not being resized
2022-01-13 12:03:32 -08:00
cosmonaut
c17ec99c50
deadlock fixes
2022-01-12 23:09:06 -08:00
cosmonaut
8e04b357db
reset uniform buffer offset when acquiring
2022-01-12 22:47:04 -08:00
cosmonaut
62789005dd
fix for multi-submit
2022-01-12 22:04:07 -08:00
cosmonaut
53c65fb5eb
fix incorrect index
2022-01-12 22:00:08 -08:00
cosmonaut
0e05ed6b34
Buffer and Submission Rework ( #1 )
...
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: MoonsideGames/Refresh#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
2021-11-14 20:36:26 -08:00
cosmonaut
ab941a68df
fix debug mode flag not set before creating instance
2021-11-08 14:25:18 -08:00
cosmonaut
dd1ba55312
fix YUV upload
2021-02-27 13:03:30 -08:00
cosmonaut
b6a09517c2
change clear color type
2021-02-09 22:51:49 -08:00
cosmonaut
17524fd30b
fix depth attachment barriers
2021-02-09 17:52:26 -08:00
cosmonaut
8f1cdf190f
change shader uniform push to take pipelines instead of command buffers
2021-02-05 19:59:29 -08:00
cosmonaut
7f3e89315e
uniform API update
2021-02-02 16:37:01 -08:00
cosmonaut
4699c158f3
calculate texture length internally + fix rename
2021-01-31 21:17:27 -08:00
cosmonaut
76c845cbb4
rename PushShaderParams to PushShaderUniforms
2021-01-31 19:37:16 -08:00
cosmonaut
254d209a48
fix issue where texture staging buffer would be too small to contain incoming data
2021-01-31 18:01:21 -08:00
cosmonaut
a60725fecc
fix bad malloc size
2021-01-31 17:16:32 -08:00
cosmonaut
d99bd756f4
remove extra region merge checks
2021-01-31 16:29:38 -08:00
cosmonaut
952cf974b4
fix empty compute image descriptor set creation
2021-01-31 14:30:16 -08:00
cosmonaut
52d06f9f6c
merge free regions
2021-01-29 16:03:00 -08:00
cosmonaut
b2199fcaae
improve device enumeration + fix host memory allocation
2021-01-29 15:57:58 -08:00
cosmonaut
978d1e9451
cpu texture alloc tweak
2021-01-28 22:05:44 -08:00
cosmonaut
7bbb15d8a5
fix depth RTs
2021-01-28 21:48:50 -08:00
cosmonaut
b854a822d6
fix some depth issues
2021-01-28 21:37:11 -08:00
cosmonaut
6457967470
texture alloc fallback to host memory
2021-01-27 12:51:36 -08:00
cosmonaut
68d9a74ff4
change renderArea to a pointer
2021-01-26 20:27:42 -08:00
cosmonaut
316e662f44
remove distinction between color target and depth target
2021-01-26 18:57:46 -08:00
cosmonaut
fe03f1739a
change Clear definition to make more sense
2021-01-22 14:16:02 -08:00
cosmonaut
d9700707d0
fix index buffer binding
2021-01-21 14:03:36 -08:00
cosmonaut
41ea091749
fix hang when staging buffer flushes
2021-01-21 12:34:50 -08:00
cosmonaut
6a1c2aa9bf
fix transfer flush submission
2021-01-20 17:16:43 -08:00
cosmonaut
56f4c3c2c4
texture creation uses one function + Refresh_TextureCreateInfo
2021-01-14 01:52:45 -08:00
cosmonaut
79bc36d99d
replace topologyState with primitiveType
2021-01-13 21:06:20 -08:00
cosmonaut
b25daa5198
remove unused parameters from draw calls
2021-01-13 21:04:53 -08:00
cosmonaut
bf91de783f
Vulkan: persisent map buffers
2021-01-13 18:02:45 -08:00
thatcosmonaut
b12b785dbe
External Interop ( #14 )
2021-01-13 17:37:54 -08:00
cosmonaut
4b6f17054c
rename AddDispose to QueueDestroy
2021-01-05 17:02:36 -08:00
cosmonaut
d3d9c9ad55
rename Set_Samplers to Bind_Samplers
2021-01-05 17:00:06 -08:00
cosmonaut
b19fab415d
misc API tweaks
2021-01-05 15:53:16 -08:00
cosmonaut
4ca101099d
uncapitalize REFRESH in API calls
2021-01-05 15:05:16 -08:00