1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-03-04 10:29:15 +01:00

[dxvk] Add convenience methods to check for debug utils support

This commit is contained in:
Philip Rebohle 2024-11-06 12:02:24 +01:00 committed by Philip Rebohle
parent 4151d35e8e
commit 5487f8b9a0
3 changed files with 18 additions and 2 deletions

View File

@ -38,7 +38,7 @@ namespace dxvk {
ContextType* container, ContextType* container,
const Rc<DxvkDevice>& dxvkDevice) const Rc<DxvkDevice>& dxvkDevice)
: m_container(container), m_eventDepth(0), : m_container(container), m_eventDepth(0),
m_annotationsEnabled(dxvkDevice->instance()->extensions().extDebugUtils) { m_annotationsEnabled(dxvkDevice->isDebugEnabled()) {
if (!IsDeferred && m_annotationsEnabled) if (!IsDeferred && m_annotationsEnabled)
RegisterUserDefinedAnnotation<true>(this); RegisterUserDefinedAnnotation<true>(this);
} }

View File

@ -70,7 +70,7 @@ namespace dxvk {
if (canSWVP) if (canSWVP)
Logger::info("D3D9DeviceEx: Using extended constant set for software vertex processing."); Logger::info("D3D9DeviceEx: Using extended constant set for software vertex processing.");
if (m_dxvkDevice->instance()->extensions().extDebugUtils) if (m_dxvkDevice->isDebugEnabled())
m_annotation = new D3D9UserDefinedAnnotation(this); m_annotation = new D3D9UserDefinedAnnotation(this);
m_initializer = new D3D9Initializer(this); m_initializer = new D3D9Initializer(this);

View File

@ -92,6 +92,14 @@ namespace dxvk {
return m_vkd; return m_vkd;
} }
/**
* \brief Vulkan instance functions
* \returns Vulkan instance functions
*/
Rc<vk::InstanceFn> vki() const {
return m_instance->vki();
}
/** /**
* \brief Logical device handle * \brief Logical device handle
* \returns The device handle * \returns The device handle
@ -100,6 +108,14 @@ namespace dxvk {
return m_vkd->device(); return m_vkd->device();
} }
/**
* \brief Checks whether debug functionality is enabled
* \returns \c true if debug utils are enabled
*/
bool isDebugEnabled() const {
return bool(m_instance->extensions().extDebugUtils);
}
/** /**
* \brief Device options * \brief Device options
* \returns Device options * \returns Device options