summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsEngineD3DBase
diff options
context:
space:
mode:
authorassiduous <assiduous@diligentgraphics.com>2020-09-17 03:19:06 +0000
committerassiduous <assiduous@diligentgraphics.com>2020-09-17 03:19:06 +0000
commitc4e90c3f0025628c0951f368d0d4b54f13a87b3d (patch)
treecae1b894626f4a60f82352f4e66b041342d79d09 /Graphics/GraphicsEngineD3DBase
parentD3D12 backend: implemented proper detection of DXIL bytecode (diff)
downloadDiligentCore-c4e90c3f0025628c0951f368d0d4b54f13a87b3d.tar.gz
DiligentCore-c4e90c3f0025628c0951f368d0d4b54f13a87b3d.zip
Removed AdapterAttribs struct that was a duplicate of GraphicsAdapterInfo. Moved few members to GraphicsAdapterInfo
Diffstat (limited to 'Graphics/GraphicsEngineD3DBase')
-rw-r--r--Graphics/GraphicsEngineD3DBase/include/DXGITypeConversions.hpp3
-rw-r--r--Graphics/GraphicsEngineD3DBase/include/EngineFactoryD3DBase.hpp10
-rw-r--r--Graphics/GraphicsEngineD3DBase/include/RenderDeviceD3DBase.hpp9
-rw-r--r--Graphics/GraphicsEngineD3DBase/src/DXGITypeConversions.cpp18
4 files changed, 24 insertions, 16 deletions
diff --git a/Graphics/GraphicsEngineD3DBase/include/DXGITypeConversions.hpp b/Graphics/GraphicsEngineD3DBase/include/DXGITypeConversions.hpp
index 91808f8f..f9d1b6df 100644
--- a/Graphics/GraphicsEngineD3DBase/include/DXGITypeConversions.hpp
+++ b/Graphics/GraphicsEngineD3DBase/include/DXGITypeConversions.hpp
@@ -38,4 +38,7 @@ namespace Diligent
DXGI_FORMAT TexFormatToDXGI_Format(TEXTURE_FORMAT TexFormat, Uint32 BindFlags = 0);
TEXTURE_FORMAT DXGI_FormatToTexFormat(DXGI_FORMAT DXGIFormat);
DXGI_FORMAT TypeToDXGI_Format(VALUE_TYPE ValType, Uint32 NumComponents, Bool bIsNormalized);
+
+GraphicsAdapterInfo DXGI_ADAPTER_DESC_To_GraphicsAdapterInfo(const DXGI_ADAPTER_DESC1& dxgiAdapterDesc);
+
} // namespace Diligent
diff --git a/Graphics/GraphicsEngineD3DBase/include/EngineFactoryD3DBase.hpp b/Graphics/GraphicsEngineD3DBase/include/EngineFactoryD3DBase.hpp
index 52948df2..2b54759b 100644
--- a/Graphics/GraphicsEngineD3DBase/include/EngineFactoryD3DBase.hpp
+++ b/Graphics/GraphicsEngineD3DBase/include/EngineFactoryD3DBase.hpp
@@ -49,7 +49,7 @@ public:
virtual void DILIGENT_CALL_TYPE EnumerateAdapters(DIRECT3D_FEATURE_LEVEL MinFeatureLevel,
Uint32& NumAdapters,
- AdapterAttribs* Adapters) override
+ GraphicsAdapterInfo* Adapters) override
{
auto DXGIAdapters = FindCompatibleAdapters(MinFeatureLevel);
@@ -66,13 +66,7 @@ public:
auto& Attribs = Adapters[adapter];
- Attribs.AdapterType = (AdapterDesc.Flags & DXGI_ADAPTER_FLAG_SOFTWARE) ? ADAPTER_TYPE_SOFTWARE : ADAPTER_TYPE_HARDWARE;
- WideCharToMultiByte(CP_ACP, 0, AdapterDesc.Description, -1, Attribs.Description, _countof(Attribs.Description), NULL, FALSE);
- Attribs.DedicatedVideoMemory = AdapterDesc.DedicatedVideoMemory;
- Attribs.DedicatedSystemMemory = AdapterDesc.DedicatedSystemMemory;
- Attribs.SharedSystemMemory = AdapterDesc.SharedSystemMemory;
- Attribs.VendorId = AdapterDesc.VendorId;
- Attribs.DeviceId = AdapterDesc.DeviceId;
+ Attribs = DXGI_ADAPTER_DESC_To_GraphicsAdapterInfo(AdapterDesc);
Attribs.NumOutputs = 0;
CComPtr<IDXGIOutput> pOutput;
diff --git a/Graphics/GraphicsEngineD3DBase/include/RenderDeviceD3DBase.hpp b/Graphics/GraphicsEngineD3DBase/include/RenderDeviceD3DBase.hpp
index 738a8efe..104533c9 100644
--- a/Graphics/GraphicsEngineD3DBase/include/RenderDeviceD3DBase.hpp
+++ b/Graphics/GraphicsEngineD3DBase/include/RenderDeviceD3DBase.hpp
@@ -33,7 +33,6 @@
#include <dxgi.h>
#include "RenderDeviceBase.hpp"
-#include "GraphicsAccessories.hpp"
namespace Diligent
{
@@ -190,13 +189,7 @@ protected:
auto hr = pdxgiAdapter->GetDesc1(&dxgiAdapterDesc);
if (SUCCEEDED(hr))
{
- auto& AdapterInfo = m_DeviceCaps.AdapterInfo;
-
- AdapterInfo.Type = (dxgiAdapterDesc.Flags & DXGI_ADAPTER_FLAG_SOFTWARE) ? ADAPTER_TYPE_SOFTWARE : ADAPTER_TYPE_HARDWARE;
- AdapterInfo.Vendor = VendorIdToAdapterVendor(dxgiAdapterDesc.VendorId);
- AdapterInfo.DeviceLocalMemory = dxgiAdapterDesc.DedicatedVideoMemory;
- AdapterInfo.HostVisibileMemory = dxgiAdapterDesc.SharedSystemMemory;
- AdapterInfo.UnifiedMemory = 0;
+ m_DeviceCaps.AdapterInfo = DXGI_ADAPTER_DESC_To_GraphicsAdapterInfo(dxgiAdapterDesc);
}
else
{
diff --git a/Graphics/GraphicsEngineD3DBase/src/DXGITypeConversions.cpp b/Graphics/GraphicsEngineD3DBase/src/DXGITypeConversions.cpp
index 2c9ba74e..36b5fc4e 100644
--- a/Graphics/GraphicsEngineD3DBase/src/DXGITypeConversions.cpp
+++ b/Graphics/GraphicsEngineD3DBase/src/DXGITypeConversions.cpp
@@ -28,6 +28,7 @@
#include "DXGITypeConversions.hpp"
#include "BasicTypes.h"
#include "DebugUtilities.hpp"
+#include "GraphicsAccessories.hpp"
namespace Diligent
{
@@ -453,4 +454,21 @@ TEXTURE_FORMAT DXGI_FormatToTexFormat(DXGI_FORMAT DXGIFormat)
}
}
+GraphicsAdapterInfo DXGI_ADAPTER_DESC_To_GraphicsAdapterInfo(const DXGI_ADAPTER_DESC1& dxgiAdapterDesc)
+{
+ GraphicsAdapterInfo AdapterInfo;
+
+ WideCharToMultiByte(CP_ACP, 0, dxgiAdapterDesc.Description, -1, AdapterInfo.Description, _countof(AdapterInfo.Description), NULL, FALSE);
+ AdapterInfo.Type = (dxgiAdapterDesc.Flags & DXGI_ADAPTER_FLAG_SOFTWARE) ? ADAPTER_TYPE_SOFTWARE : ADAPTER_TYPE_HARDWARE;
+ AdapterInfo.Vendor = VendorIdToAdapterVendor(dxgiAdapterDesc.VendorId);
+ AdapterInfo.VendorId = dxgiAdapterDesc.VendorId;
+ AdapterInfo.DeviceId = dxgiAdapterDesc.DeviceId;
+ AdapterInfo.NumOutputs = 0;
+ AdapterInfo.DeviceLocalMemory = dxgiAdapterDesc.DedicatedVideoMemory;
+ AdapterInfo.HostVisibileMemory = dxgiAdapterDesc.SharedSystemMemory;
+ AdapterInfo.UnifiedMemory = 0;
+
+ return AdapterInfo;
+}
+
} // namespace Diligent