OSDN Git Service

Support for array layers and mip levels in VkImage objects
authorAlexis Hetu <sugoi@google.com>
Wed, 16 Jan 2019 19:21:33 +0000 (14:21 -0500)
committerAlexis Hétu <sugoi@google.com>
Thu, 17 Jan 2019 20:45:14 +0000 (20:45 +0000)
commiteca9ca647a4220ee19911cc1e5b553d61c05a1bc
tree3285b873b1105a527862ad69bc3a983867f742e3
parented30373d288595486116e9fa65dbffa4a0813bde
Support for array layers and mip levels in VkImage objects

Support for allocating, copying and clearing separate array
layers and/or mip levels in VkImage objects. As part of that,
most functions that compute memory offsets or sizes now all
take mip levels and array layers into account.

Also, since this can cause many consecutive calls to the
blitter, the blitter object is now a VkImage member rather
than being create in each function, in order to better use
the blitter cache.

Bug b/119620767

Change-Id: Ib29b66cc936b0734c8173a1b8b5b9ef157fc7956
Reviewed-on: https://swiftshader-review.googlesource.com/c/23648
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Chris Forbes <chrisforbes@google.com>
src/Vulkan/VkImage.cpp
src/Vulkan/VkImage.hpp