Commit graph

26 commits

Author SHA1 Message Date
Magnus Norddahl
f7069c4ddc - there is no need to track a transfer family - yet another pointless detour thanks to vulkan-tutorial.. 2019-04-04 15:58:48 +02:00
Magnus Norddahl
88355393df - implement queue family transfers 2019-03-24 18:03:10 +01:00
Christoph Oelckers
4d768e5a49 - use a vector instead of a map to store a texture's descriptor sets.
In this case a map is total overkill and its poor memory locality will always incur some performance hit. A vector here can only collect a very small amount of entries so the time to search is nearly irrelevant.
2019-03-21 23:41:24 +01:00
Christoph Oelckers
3ad9783d8f - fixed the hardware rendering precacher not to evict secondary layers of multi-layer textures.
It will now check all layers of a material.
Additionally it will also delete all descriptor sets of Vulkan hardware textures before precaching to make sure that nothing here can accidentally still reference a deleted texture.
2019-03-21 21:57:39 +01:00
Magnus Norddahl
7b3350ae1e - the material descriptor set must be bound again if the pipeline changes and the new shader uses more textures than the old one 2019-03-18 00:38:09 +01:00
Magnus Norddahl
b62d5784af - bind a texture in all descriptor slots 2019-03-17 23:24:50 +01:00
Magnus Norddahl
ec7a874a61 - implement PrecacheMaterial 2019-03-17 22:41:02 +01:00
Magnus Norddahl
bf85ad4b6a - remove tracking translation in VkHardwareTexture
- only reset the descriptors when recreating the samplers
2019-03-17 22:27:48 +01:00
Magnus Norddahl
2429eba8f6 - remove the old incomplete VkHardwareTexture implementation 2019-03-17 22:10:49 +01:00
Magnus Norddahl
29a30037cb - delay destruction of VkHardwareTexture resources until current frame has finished rendering 2019-03-17 20:36:08 +01:00
Magnus Norddahl
5d2917bb4f - implement RenderTextureView 2019-03-13 11:14:42 +01:00
Magnus Norddahl
d78cb959a7 - implement wipe screen copy 2019-03-13 02:23:33 +01:00
Magnus Norddahl
a585a90d81 - VkHardwareTexture needs to BFF with FTexture 2019-03-13 01:15:50 +01:00
Magnus Norddahl
ff68d2e651 - hooked up the debug names for objects, which was a bit of a waste of time since the validation layer is brain dead and doesn't use the information in its messages.. 2019-03-09 21:34:29 +01:00
Magnus Norddahl
ddf21ffd72 - create a descriptor for each texture+sampler configuration in use 2019-03-04 00:28:37 +01:00
Magnus Norddahl
8854fad165 - fix some additional image transition errors reported by RenderDoc during the first frame 2019-03-02 16:36:29 +01:00
Magnus Norddahl
1430d9012e - fix shutdown crash and some minor adjustments 2019-03-02 00:46:25 +01:00
Magnus Norddahl
308c884d02 - use a linked list to keep track of all allocated VkHardwareTexture objects 2019-03-01 18:31:33 +01:00
Magnus Norddahl
f1f8797d3c - bind the layer textures 2019-03-01 01:30:10 +01:00
Magnus Norddahl
9a5112c1c9 - tell the memory allocator when we are going to persistently map something 2019-02-28 01:18:29 +01:00
Magnus Norddahl
b4154f1772 - fix palette color problem 2019-02-27 16:28:29 +01:00
Magnus Norddahl
96547713d9 - hook up the software renderer 2019-02-27 15:37:37 +01:00
Magnus Norddahl
a3c21e0b01 - upload some real texture contents 2019-02-26 22:45:18 +01:00
Magnus Norddahl
fe67a2c24f - fix enough bugs to finally get some visuals 2019-02-26 20:19:54 +01:00
Magnus Norddahl
d958c4fec5 - upload and bind some textures 2019-02-26 15:29:08 +01:00
Magnus Norddahl
c6b29846d0 - add 3rd party vulkan dependencies
- add stubs for a vulkan hw renderer backend
- add RAII wrappers for vulkan object types
- add builder classes to isolate vulkan boilerplate code
- add a swap chain class
2019-02-20 21:21:57 +01:00