Commit 6d74ab85 by Alexis Hetu Committed by Alexis Hétu

vkGetRenderAreaGranularity implementation

There's no reason to have any limitation on granularity in SwiftShader, so the granularity is always 1 pixel. Passes all tests in: dEQP-VK.api.granularity Bug b/119620965 Change-Id: Ie2f09737c0054da1b6806b9572e515446a8b1263 Reviewed-on: https://swiftshader-review.googlesource.com/c/24890Tested-by: 's avatarAlexis Hétu <sugoi@google.com> Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
parent a0a80b16
...@@ -133,6 +133,12 @@ size_t RenderPass::ComputeRequiredAllocationSize(const VkRenderPassCreateInfo* p ...@@ -133,6 +133,12 @@ size_t RenderPass::ComputeRequiredAllocationSize(const VkRenderPassCreateInfo* p
return attachmentSize + subpassesSize + dependenciesSize; return attachmentSize + subpassesSize + dependenciesSize;
} }
void RenderPass::getRenderAreaGranularity(VkExtent2D* pGranularity) const
{
pGranularity->width = 1;
pGranularity->height = 1;
}
void RenderPass::begin() void RenderPass::begin()
{ {
currentSubpass = 0; currentSubpass = 0;
......
...@@ -29,6 +29,8 @@ public: ...@@ -29,6 +29,8 @@ public:
static size_t ComputeRequiredAllocationSize(const VkRenderPassCreateInfo* pCreateInfo); static size_t ComputeRequiredAllocationSize(const VkRenderPassCreateInfo* pCreateInfo);
void getRenderAreaGranularity(VkExtent2D* pGranularity) const;
void begin(); void begin();
void nextSubpass(); void nextSubpass();
void end(); void end();
......
...@@ -1202,8 +1202,10 @@ VKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass(VkDevice device, VkRenderPass ren ...@@ -1202,8 +1202,10 @@ VKAPI_ATTR void VKAPI_CALL vkDestroyRenderPass(VkDevice device, VkRenderPass ren
VKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity) VKAPI_ATTR void VKAPI_CALL vkGetRenderAreaGranularity(VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity)
{ {
TRACE("()"); TRACE("(VkDevice device = 0x%X, VkRenderPass renderPass = 0x%X, VkExtent2D* pGranularity = 0x%X)",
UNIMPLEMENTED(); device, renderPass, pGranularity);
vk::Cast(renderPass)->getRenderAreaGranularity(pGranularity);
} }
VKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool) VKAPI_ATTR VkResult VKAPI_CALL vkCreateCommandPool(VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment