mirror of
https://github.com/bkaradzic/bgfx.git
synced 2026-02-19 21:42:59 +01:00
Make D3D11 work with outdated DXSDK.
This commit is contained in:
@@ -799,6 +799,11 @@ BX_PRAGMA_DIAGNOSTIC_POP();
|
||||
if (m_featureLevel == D3D_FEATURE_LEVEL_10_0
|
||||
|| m_featureLevel == D3D_FEATURE_LEVEL_10_1)
|
||||
{
|
||||
struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS
|
||||
{
|
||||
BOOL ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x;
|
||||
};
|
||||
|
||||
D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS data;
|
||||
hr = m_device->CheckFeatureSupport(D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS, &data, sizeof(data) );
|
||||
if (SUCCEEDED(hr)
|
||||
@@ -819,8 +824,13 @@ BX_PRAGMA_DIAGNOSTIC_POP();
|
||||
}
|
||||
else
|
||||
{
|
||||
struct D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT
|
||||
{
|
||||
BOOL SimpleInstancingSupported;
|
||||
};
|
||||
|
||||
D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT data;
|
||||
hr = m_device->CheckFeatureSupport(D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT, &data, sizeof(data) );
|
||||
hr = m_device->CheckFeatureSupport(D3D11_FEATURE(11) /*D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT*/, &data, sizeof(data) );
|
||||
if (SUCCEEDED(hr)
|
||||
&& data.SimpleInstancingSupported)
|
||||
{
|
||||
@@ -831,8 +841,13 @@ BX_PRAGMA_DIAGNOSTIC_POP();
|
||||
// shadow compare is optional on 9_1 through 9_3 targets
|
||||
if (m_featureLevel <= D3D_FEATURE_LEVEL_9_3)
|
||||
{
|
||||
struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT
|
||||
{
|
||||
BOOL SupportsDepthAsTextureWithLessEqualComparisonFilter;
|
||||
};
|
||||
|
||||
D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT data;
|
||||
hr = m_device->CheckFeatureSupport(D3D11_FEATURE_D3D9_SHADOW_SUPPORT, &data, sizeof(data) );
|
||||
hr = m_device->CheckFeatureSupport(D3D11_FEATURE(9) /*D3D11_FEATURE_D3D9_SHADOW_SUPPORT*/, &data, sizeof(data) );
|
||||
if (SUCCEEDED(hr)
|
||||
&& data.SupportsDepthAsTextureWithLessEqualComparisonFilter)
|
||||
{
|
||||
@@ -846,6 +861,12 @@ BX_PRAGMA_DIAGNOSTIC_POP();
|
||||
|
||||
if (DXGI_FORMAT_UNKNOWN != s_textureFormat[ii].m_fmt)
|
||||
{
|
||||
struct D3D11_FEATURE_DATA_FORMAT_SUPPORT
|
||||
{
|
||||
DXGI_FORMAT InFormat;
|
||||
UINT OutFormatSupport;
|
||||
};
|
||||
|
||||
D3D11_FEATURE_DATA_FORMAT_SUPPORT data; // D3D11_FEATURE_DATA_FORMAT_SUPPORT2
|
||||
data.InFormat = s_textureFormat[ii].m_fmt;
|
||||
hr = m_device->CheckFeatureSupport(D3D11_FEATURE_FORMAT_SUPPORT, &data, sizeof(data) );
|
||||
|
||||
Reference in New Issue
Block a user