|
@@ -519,30 +519,33 @@ namespace bgfx { namespace d3d11
|
|
|
|
|
|
|
|
static BX_NO_INLINE bool getIntelExtensions(ID3D11Device* _device)
|
|
static BX_NO_INLINE bool getIntelExtensions(ID3D11Device* _device)
|
|
|
{
|
|
{
|
|
|
- uint8_t temp[28];
|
|
|
|
|
|
|
+ if (windowsVersionIs(Condition::GreaterEqual, 0x0604) )
|
|
|
|
|
+ {
|
|
|
|
|
+ uint8_t temp[28];
|
|
|
|
|
|
|
|
- bx::StaticMemoryBlockWriter writer(&temp, sizeof(temp) );
|
|
|
|
|
- bx::write(&writer, "INTCEXTNCAPSFUNC", 16);
|
|
|
|
|
- bx::write(&writer, kIntelExtensionInterfaceVersion);
|
|
|
|
|
- bx::write(&writer, UINT32_C(0) );
|
|
|
|
|
- bx::write(&writer, UINT32_C(0) );
|
|
|
|
|
|
|
+ bx::StaticMemoryBlockWriter writer(&temp, sizeof(temp) );
|
|
|
|
|
+ bx::write(&writer, "INTCEXTNCAPSFUNC", 16);
|
|
|
|
|
+ bx::write(&writer, kIntelExtensionInterfaceVersion);
|
|
|
|
|
+ bx::write(&writer, UINT32_C(0) );
|
|
|
|
|
+ bx::write(&writer, UINT32_C(0) );
|
|
|
|
|
|
|
|
- if (SUCCEEDED(setIntelExtension(_device, temp, sizeof(temp) ) ) )
|
|
|
|
|
- {
|
|
|
|
|
- bx::MemoryReader reader(&temp, sizeof(temp) );
|
|
|
|
|
- bx::skip(&reader, 16);
|
|
|
|
|
|
|
+ if (SUCCEEDED(setIntelExtension(_device, temp, sizeof(temp) ) ) )
|
|
|
|
|
+ {
|
|
|
|
|
+ bx::MemoryReader reader(&temp, sizeof(temp) );
|
|
|
|
|
+ bx::skip(&reader, 16);
|
|
|
|
|
|
|
|
- uint32_t version;
|
|
|
|
|
- bx::read(&reader, version);
|
|
|
|
|
|
|
+ uint32_t version;
|
|
|
|
|
+ bx::read(&reader, version);
|
|
|
|
|
|
|
|
- uint32_t driverVersion;
|
|
|
|
|
- bx::read(&reader, driverVersion);
|
|
|
|
|
|
|
+ uint32_t driverVersion;
|
|
|
|
|
+ bx::read(&reader, driverVersion);
|
|
|
|
|
|
|
|
- return version <= driverVersion;
|
|
|
|
|
|
|
+ return version <= driverVersion;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
return false;
|
|
return false;
|
|
|
- };
|
|
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
void resume(ID3D11Device* _device)
|
|
void resume(ID3D11Device* _device)
|
|
|
{
|
|
{
|