DynamicState Set Viewport and Scissor.
- Parameters
-
| [in] | cmdBuffer | VkCommandBuffer |
Use Negative Viewport height filp here to handle axis difference. Remember enable device extension (VK_KHR_MAINTENANCE1)
Though we draw world to viewport but not surface, Set Correct viewport here is necessary.
Instance a VkRect2D.
Set VkViewport with viewport slate.
Set VkRect2D.
Use Negative Viewport height filp here to handle axis difference. Remember enable device extension (VK_KHR_MAINTENANCE1)
Though we draw world to viewport but not surface, Set Correct viewport here is necessary.
Instance a VkRect2D.
Set VkViewport with viewport slate.
Set VkRect2D.
Definition at line 668 of file Renderer.cpp.
669 {
671
676 VkViewport viewport {};
677 viewport.x = 0.0f;
678 viewport.y =
static_cast<float>(
m_Renderer->
m_Device->GetSwapChainSupport().surfaceSize.height);
679 viewport.width =
static_cast<float>(
m_Renderer->
m_Device->GetSwapChainSupport().surfaceSize.width);
680 viewport.height = -
static_cast<float>(
m_Renderer->
m_Device->GetSwapChainSupport().surfaceSize.height);
681 viewport.minDepth = 0.0f;
682 viewport.maxDepth = 1.0f;
683
689 {
691
692 viewport.y = viewPortSize.y;
693 viewport.width = viewPortSize.x;
694 viewport.height = -viewPortSize.y;
695 }
696
700 VkRect2D scissor{};
701 scissor.offset = { 0, 0 };
703
707 vkCmdSetViewport(cmdBuffer ? cmdBuffer :
m_CommandBuffer, 0, 1, &viewport);
708
712 vkCmdSetScissor(cmdBuffer ? cmdBuffer :
m_CommandBuffer, 0, 1, &scissor);
713 }
#define SPICES_PROFILE_ZONE
Renderer * m_Renderer
Specific Renderer pointer. Passed while this class instanced.
VkCommandBuffer m_CommandBuffer
Current CommandBuffer.
std::shared_ptr< VulkanDevice > m_Device
VulkanDevice , Passed by instanced.
static std::shared_ptr< SlateRegister > GetRegister()
Get slate register.