diff options
Diffstat (limited to '3rdparty/bgfx/src/renderer_d3d11.h')
-rw-r--r-- | 3rdparty/bgfx/src/renderer_d3d11.h | 54 |
1 files changed, 34 insertions, 20 deletions
diff --git a/3rdparty/bgfx/src/renderer_d3d11.h b/3rdparty/bgfx/src/renderer_d3d11.h index 22bf6a0ddce..2593fbb85c9 100644 --- a/3rdparty/bgfx/src/renderer_d3d11.h +++ b/3rdparty/bgfx/src/renderer_d3d11.h @@ -19,10 +19,10 @@ BX_PRAGMA_DIAGNOSTIC_IGNORED_GCC("-Wpragmas"); BX_PRAGMA_DIAGNOSTIC_IGNORED_MSVC(4005) // warning C4005: '' : macro redefinition #define D3D11_NO_HELPERS #if BX_PLATFORM_WINRT -#include <d3d11_2.h> +# include <d3d11_2.h> #else -#include <d3d11.h> -#endif +# include <d3d11.h> +#endif // BX_PLATFORM_WINRT BX_PRAGMA_DIAGNOSTIC_POP() #include "renderer.h" @@ -75,21 +75,8 @@ BX_PRAGMA_DIAGNOSTIC_POP() # define D3D11_REQ_MAXANISOTROPY 16 # endif // D3D11_REQ_MAXANISOTROPY -# ifndef D3D11_FEATURE_DATA_FORMAT_SUPPORT -typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT -{ - DXGI_FORMAT InFormat; - UINT OutFormatSupport; -} D3D11_FEATURE_DATA_FORMAT_SUPPORT; -# endif // D3D11_FEATURE_DATA_FORMAT_SUPPORT +typedef void ID3D11InfoQueue; -# ifndef D3D11_FEATURE_DATA_FORMAT_SUPPORT2 -typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT2 -{ - DXGI_FORMAT InFormat; - UINT OutFormatSupport2; -} D3D11_FEATURE_DATA_FORMAT_SUPPORT2; -# endif // D3D11_FEATURE_DATA_FORMAT_SUPPORT2 #endif // __MINGW32__ namespace bgfx { namespace d3d11 @@ -105,7 +92,7 @@ namespace bgfx { namespace d3d11 { } - void create(uint32_t _size, void* _data, uint8_t _flags, uint16_t _stride = 0, bool _vertex = false); + void create(uint32_t _size, void* _data, uint16_t _flags, uint16_t _stride = 0, bool _vertex = false); void update(uint32_t _offset, uint32_t _size, void* _data, bool _discard = false); void destroy() @@ -124,7 +111,7 @@ namespace bgfx { namespace d3d11 ID3D11ShaderResourceView* m_srv; ID3D11UnorderedAccessView* m_uav; uint32_t m_size; - uint8_t m_flags; + uint16_t m_flags; bool m_dynamic; }; @@ -137,7 +124,7 @@ namespace bgfx { namespace d3d11 { } - void create(uint32_t _size, void* _data, VertexDeclHandle _declHandle, uint8_t _flags); + void create(uint32_t _size, void* _data, VertexDeclHandle _declHandle, uint16_t _flags); VertexDeclHandle m_decl; }; @@ -310,6 +297,33 @@ namespace bgfx { namespace d3d11 TextureHandle m_th[BGFX_CONFIG_MAX_FRAME_BUFFER_ATTACHMENTS]; }; + struct TimerQueryD3D11 + { + TimerQueryD3D11() + : m_control(BX_COUNTOF(m_frame) ) + { + } + + void postReset(); + void preReset(); + void begin(); + void end(); + bool get(); + + struct Frame + { + ID3D11Query* m_disjoint; + ID3D11Query* m_start; + ID3D11Query* m_end; + }; + + uint64_t m_elapsed; + uint64_t m_frequency; + + Frame m_frame[4]; + bx::RingBufferControl m_control; + }; + } /* namespace d3d11 */ } // namespace bgfx #endif // BGFX_RENDERER_D3D11_H_HEADER_GUARD |