Nebula
Loading...
Searching...
No Matches
vkdepthstenciltarget.h
Go to the documentation of this file.
1#pragma once
2//------------------------------------------------------------------------------
8//------------------------------------------------------------------------------
9#include "core/refcounted.h"
10#include "coregraphics/base/depthstenciltargetbase.h"
11namespace Vulkan
12{
13class VkDepthStencilTarget : public Base::DepthStencilTargetBase
14{
16public:
20 virtual ~VkDepthStencilTarget();
21
23 void Setup();
25 void Discard();
26
28 void OnDisplayResized(SizeT width, SizeT height);
29
31 void BeginPass();
33 void EndPass();
34
36 const VkViewport& GetVkViewport() const;
38 const VkRect2D& GetVkScissorRect() const;
40 VkImageView GetVkImageView();
41private:
42
43 VkViewport viewport;
44 VkRect2D scissor;
45 VkImage image;
46 VkDeviceMemory mem;
47 VkImageView view;
48};
49
50//------------------------------------------------------------------------------
53inline const VkViewport&
55{
56 return this->viewport;
57}
58
59//------------------------------------------------------------------------------
62inline const VkRect2D&
64{
65 return this->scissor;
66}
67
68//------------------------------------------------------------------------------
71inline VkImageView
73{
74 return this->view;
75}
76
77} // namespace Vulkan
Definition vkdepthstenciltarget.h:14
VkImageView GetVkImageView()
return handle to the view
Definition vkdepthstenciltarget.h:72
void EndPass()
ends pass
Definition vkdepthstenciltarget.cc:172
void OnDisplayResized(SizeT width, SizeT height)
called after we change the display size
Definition vkdepthstenciltarget.cc:145
VkImageView view
Definition vkdepthstenciltarget.h:47
VkRect2D scissor
Definition vkdepthstenciltarget.h:44
void Setup()
setup depth-stencil target
Definition vkdepthstenciltarget.cc:37
VkDeviceMemory mem
Definition vkdepthstenciltarget.h:46
VkImage image
Definition vkdepthstenciltarget.h:45
void BeginPass()
begins pass
Definition vkdepthstenciltarget.cc:154
__DeclareClass(VkDepthStencilTarget)
VkDepthStencilTarget()
constructor
Definition vkdepthstenciltarget.cc:20
const VkRect2D & GetVkScissorRect() const
get the vulkan scissor rectangles
Definition vkdepthstenciltarget.h:63
virtual ~VkDepthStencilTarget()
destructor
Definition vkdepthstenciltarget.cc:28
VkViewport viewport
Definition vkdepthstenciltarget.h:43
void Discard()
discard depth-stencil target
Definition vkdepthstenciltarget.cc:133
const VkViewport & GetVkViewport() const
get the vulkan viewports
Definition vkdepthstenciltarget.h:54
Vulkan implementation of GPU acceleration structure.
Definition vkaccelerationstructure.cc:15
int SizeT
Definition types.h:49