![]() |
ezEngine
Release 25.03
|
Protected Member Functions | |
ezGALSharedTextureVulkan (const ezGALTextureCreationDescription &Description, ezEnum< ezGALSharedTextureType > sharedType, ezGALPlatformSharedHandle hSharedHandle) | |
virtual ezResult | InitPlatform (ezGALDevice *pDevice, ezArrayPtr< ezGALSystemMemoryDescription > pInitialData) override |
virtual ezResult | DeInitPlatform (ezGALDevice *pDevice) override |
virtual ezGALPlatformSharedHandle | GetSharedHandle () const override |
Returns the handle that can be used to open this texture on another device / process. Call ezGALDevice::OpenSharedTexture to do so. | |
virtual void | WaitSemaphoreGPU (ezUInt64 uiValue) const override |
Before the current render pipeline is executed, the GPU will wait for the semaphore to have the given value. More... | |
virtual void | SignalSemaphoreGPU (ezUInt64 uiValue) const override |
Once the current render pipeline is done on the GPU, the semaphore will be signaled with the given value. More... | |
![]() | |
ezGALTextureVulkan (const ezGALTextureCreationDescription &Description) | |
virtual void | SetDebugNamePlatform (const char *szName) const override |
![]() | |
ezGALTexture (const ezGALTextureCreationDescription &Description) | |
Protected Attributes | |
ezEnum< ezGALSharedTextureType > | m_SharedType = ezGALSharedTextureType::None |
ezGALPlatformSharedHandle | m_hSharedHandle |
vk::Semaphore | m_SharedSemaphore |
![]() | |
vk::Image | m_image = {} |
vk::Format | m_imageFormat = vk::Format::eUndefined |
vk::ImageLayout | m_preferredLayout = vk::ImageLayout::eUndefined |
vk::PipelineStageFlags | m_stages = {} |
vk::AccessFlags | m_access = {} |
ezVulkanAllocation | m_alloc = nullptr |
ezVulkanAllocationInfo | m_allocInfo |
ezGALDeviceVulkan * | m_pDevice = nullptr |
![]() | |
ezGALTextureResourceViewHandle | m_hDefaultResourceView |
ezGALRenderTargetViewHandle | m_hDefaultRenderTargetView |
ezHashTable< ezUInt32, ezGALTextureResourceViewHandle > | m_ResourceViews |
ezHashTable< ezUInt32, ezGALRenderTargetViewHandle > | m_RenderTargetViews |
ezHashTable< ezUInt32, ezGALTextureUnorderedAccessViewHandle > | m_UnorderedAccessViews |
![]() | |
const ezGALTextureCreationDescription | m_Description |
Friends | |
class | ezGALDeviceVulkan |
class | ezMemoryUtils |
Additional Inherited Members | |
![]() | |
EZ_ALWAYS_INLINE vk::Image | GetImage () const |
EZ_ALWAYS_INLINE vk::Format | GetImageFormat () const |
EZ_ALWAYS_INLINE vk::ImageLayout | GetPreferredLayout () const |
EZ_ALWAYS_INLINE vk::ImageLayout | GetPreferredLayout (vk::ImageLayout targetLayout) const |
EZ_ALWAYS_INLINE vk::PipelineStageFlags | GetUsedByPipelineStage () const |
EZ_ALWAYS_INLINE vk::AccessFlags | GetAccessMask () const |
EZ_ALWAYS_INLINE ezVulkanAllocation | GetAllocation () const |
const EZ_ALWAYS_INLINE ezVulkanAllocationInfo & | GetAllocationInfo () const |
vk::Extent3D | GetMipLevelSize (ezUInt32 uiMipLevel) const |
vk::ImageSubresourceRange | GetFullRange () const |
vk::ImageAspectFlags | GetAspectMask () const |
![]() | |
EZ_ALWAYS_INLINE | ezGALResource (const ezGALTextureCreationDescription &description) |
const EZ_ALWAYS_INLINE ezGALTextureCreationDescription & | GetDescription () const |
![]() | |
void | SetDebugName (const char *szName) const |
virtual const ezGALResourceBase * | GetParentResource () const |
![]() | |
virtual | ~ezRefCounted ()=default |
Adds a virtual destructor. | |
![]() | |
ezRefCountingImpl ()=default | |
Constructor. | |
ezRefCountingImpl (const ezRefCountingImpl &rhs) | |
void | operator= (const ezRefCountingImpl &rhs) |
ezInt32 | AddRef () const |
Increments the reference counter. Returns the new reference count. | |
ezInt32 | ReleaseRef () const |
Decrements the reference counter. Returns the new reference count. | |
bool | IsReferenced () const |
Returns true if the reference count is greater than 0, false otherwise. | |
ezInt32 | GetRefCount () const |
Returns the current reference count. | |
![]() | |
static vk::Format | ComputeImageFormat (const ezGALDeviceVulkan *pDevice, ezEnum< ezGALResourceFormat > galFormat, vk::ImageCreateInfo &ref_createInfo, vk::ImageFormatListCreateInfo &ref_imageFormats) |
static void | ComputeCreateInfo (const ezGALDeviceVulkan *pDevice, const ezGALTextureCreationDescription &description, vk::ImageCreateInfo &ref_createInfo, vk::PipelineStageFlags &ref_stages, vk::AccessFlags &ref_access, vk::ImageLayout &ref_preferredLayout) |
static void | ComputeAllocInfo (ezVulkanAllocationCreateInfo &ref_allocInfo) |
static ezUInt32 | ComputeSubResourceOffsets (const ezGALDeviceVulkan *pDevice, const ezGALTextureCreationDescription &description, ezDynamicArray< SubResourceOffset > &subResourceSizes) |
static vk::Extent3D | GetMipLevelSize (const ezGALTextureCreationDescription &description, ezUInt32 uiMipLevel) |
|
overrideprotectedvirtual |
Once the current render pipeline is done on the GPU, the semaphore will be signaled with the given value.
iValue | Value the semaphore is set to once we are done using the texture (after the current render pipeline). |
Implements ezGALSharedTexture.
|
overrideprotectedvirtual |
Before the current render pipeline is executed, the GPU will wait for the semaphore to have the given value.
iValue | Value the semaphore needs to have before the texture can be used. |
Implements ezGALSharedTexture.