mirror of https://github.com/encounter/SDL.git
WinRT: made the Direct3D 11.x 'Debug Layer' be enable-able in any app via a hint
To enable the Debug Layer, set the hint, SDL_HINT_RENDER_DIRECT3D11_DEBUG to '1'. The Debug Layer will be turned off by default, both in Release and Debug builds (of SDL).
This commit is contained in:
parent
6004b764d8
commit
62c781eaff
|
@ -117,6 +117,20 @@ extern "C" {
|
||||||
*/
|
*/
|
||||||
#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC"
|
#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief A variable controlling whether to enable Direct3D 11+'s Debug Layer.
|
||||||
|
*
|
||||||
|
* This variable does not have any effect on the Direct3D 9 based renderer,
|
||||||
|
* which is used in Win32-based (aka Windows Desktop) apps.
|
||||||
|
*
|
||||||
|
* This variable can be set to the following values:
|
||||||
|
* "0" - Disable Debug Layer use
|
||||||
|
* "1" - Enable Debug Lyaer use
|
||||||
|
*
|
||||||
|
* By default, SDL does not use Direct3D Debug Layer.
|
||||||
|
*/
|
||||||
|
#define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_HINT_RENDER_DIRECT3D11_DEBUG"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief A variable controlling whether the X11 VidMode extension should be used.
|
* \brief A variable controlling whether the X11 VidMode extension should be used.
|
||||||
*
|
*
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#include "../../core/windows/SDL_windows.h"
|
#include "../../core/windows/SDL_windows.h"
|
||||||
//#include "SDL_hints.h"
|
#include "SDL_hints.h"
|
||||||
//#include "SDL_loadso.h"
|
//#include "SDL_loadso.h"
|
||||||
#include "SDL_system.h"
|
#include "SDL_system.h"
|
||||||
#include "SDL_syswm.h"
|
#include "SDL_syswm.h"
|
||||||
|
@ -326,10 +326,13 @@ D3D11_CreateDeviceResources(SDL_Renderer * renderer)
|
||||||
// than the API default. It is required for compatibility with Direct2D.
|
// than the API default. It is required for compatibility with Direct2D.
|
||||||
UINT creationFlags = D3D11_CREATE_DEVICE_BGRA_SUPPORT;
|
UINT creationFlags = D3D11_CREATE_DEVICE_BGRA_SUPPORT;
|
||||||
|
|
||||||
#if defined(_DEBUG)
|
// Make sure Direct3D's debugging feature gets used, if the app requests it.
|
||||||
// If the project is in a debug build, enable debugging via SDK Layers with this flag.
|
const char *hint = SDL_GetHint(SDL_HINT_RENDER_DIRECT3D11_DEBUG);
|
||||||
creationFlags |= D3D11_CREATE_DEVICE_DEBUG;
|
if (hint) {
|
||||||
#endif
|
if (*hint == '1') {
|
||||||
|
creationFlags |= D3D11_CREATE_DEVICE_DEBUG;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// This array defines the set of DirectX hardware feature levels this app will support.
|
// This array defines the set of DirectX hardware feature levels this app will support.
|
||||||
// Note the ordering should be preserved.
|
// Note the ordering should be preserved.
|
||||||
|
|
Loading…
Reference in New Issue