This commit is contained in:
Branimir Karadžić
2017-12-21 18:12:42 -08:00
parent 728f1022f8
commit fee8885177
3 changed files with 17 additions and 14 deletions

View File

@@ -1177,13 +1177,6 @@ namespace bgfx { namespace d3d11
}
}
if (NULL != m_renderdocdll)
{
// RenderDoc doesn't support ID3D11Device3 yet:
// https://github.com/baldurk/renderdoc/issues/235
m_deviceInterfaceVersion = bx::uint32_min(m_deviceInterfaceVersion, 1);
}
IDXGIDevice* device = NULL;
IDXGIAdapter* adapter = NULL;
hr = E_FAIL;

View File

@@ -15,8 +15,10 @@
# endif // BX_PLATFORM_WINRT
#endif // !BX_PLATFORM_WINDOWS
#if BX_PLATFORM_WINDOWS
PFN_PIX_GET_THREAD_INFO bgfx_PIXGetThreadInfo;
PFN_PIX_EVENTS_REPLACE_BLOCK bgfx_PIXEventsReplaceBlock;
#endif // BX_PLATFORM_WINDOWS
namespace bgfx { namespace d3d12
{
@@ -628,6 +630,7 @@ namespace bgfx { namespace d3d12
ErrorState::Enum errorState = ErrorState::Default;
LUID luid;
#if BX_PLATFORM_WINDOWS
m_winPixEvent = bx::dlopen("WinPixEventRuntime.dll");
if (NULL != m_winPixEvent)
@@ -642,6 +645,7 @@ namespace bgfx { namespace d3d12
bgfx_PIXGetThreadInfo = stubPIXGetThreadInfo;
bgfx_PIXEventsReplaceBlock = stubPIXEventsReplaceBlock;
}
#endif // BX_PLATFORM_WINDOWS
m_renderdocdll = loadRenderDoc();
setGraphicsDebuggerPresent(NULL != m_renderdocdll || NULL != m_winPixEvent);

View File

@@ -52,21 +52,27 @@ BX_PRAGMA_DIAGNOSTIC_POP();
#include "shader_dxbc.h"
#include "debug_renderdoc.h"
#if BGFX_CONFIG_DEBUG_PIX
# if BX_PLATFORM_WINDOWS
typedef struct PIXEventsThreadInfo* (WINAPI* PFN_PIX_GET_THREAD_INFO)();
typedef uint64_t (WINAPI* PFN_PIX_EVENTS_REPLACE_BLOCK)(bool _getEarliestTime);
extern PFN_PIX_GET_THREAD_INFO bgfx_PIXGetThreadInfo;
extern PFN_PIX_EVENTS_REPLACE_BLOCK bgfx_PIXEventsReplaceBlock;
#define PIXGetThreadInfo bgfx_PIXGetThreadInfo
#define PIXEventsReplaceBlock bgfx_PIXEventsReplaceBlock
#include <pix3.h>
# define PIXGetThreadInfo bgfx_PIXGetThreadInfo
# define PIXEventsReplaceBlock bgfx_PIXEventsReplaceBlock
# else
extern "C" struct PIXEventsThreadInfo* WINAPI PIXGetThreadInfo();
extern "C" uint64_t WINAPI PIXEventsReplaceBlock(bool _getEarliestTime);
# endif // BX_PLATFORM_WINDOWS
#define _PIX3_BEGINEVENT(_commandList, _color, _name) PIXBeginEvent(_commandList, _color, _name)
#define _PIX3_SETMARKER(_commandList, _color, _name) PIXSetMarker(_commandList, _color, _name)
#define _PIX3_ENDEVENT(_commandList) PIXEndEvent(_commandList)
# include <pix3.h>
# define _PIX3_BEGINEVENT(_commandList, _color, _name) PIXBeginEvent(_commandList, _color, _name)
# define _PIX3_SETMARKER(_commandList, _color, _name) PIXSetMarker(_commandList, _color, _name)
# define _PIX3_ENDEVENT(_commandList) PIXEndEvent(_commandList)
#if BGFX_CONFIG_DEBUG_PIX
# define PIX3_BEGINEVENT(_commandList, _color, _name) _PIX3_BEGINEVENT(_commandList, _color, _name)
# define PIX3_SETMARKER(_commandList, _color, _name) _PIX3_SETMARKER(_commandList, _color, _name)
# define PIX3_ENDEVENT(_commandList) _PIX3_ENDEVENT(_commandList)