2018-05-24 12:31:04 +02:00
|
|
|
#pragma once
|
|
|
|
|
2018-08-07 14:47:06 +02:00
|
|
|
#include "../util/config/config.h"
|
|
|
|
|
2018-05-24 12:31:04 +02:00
|
|
|
#include "dxgi_include.h"
|
|
|
|
|
|
|
|
namespace dxvk {
|
|
|
|
|
|
|
|
/**
|
|
|
|
* \brief DXGI options
|
|
|
|
*
|
|
|
|
* Per-app options that control the
|
|
|
|
* behaviour of some DXGI classes.
|
|
|
|
*/
|
2018-08-07 14:47:06 +02:00
|
|
|
struct DxgiOptions {
|
|
|
|
DxgiOptions(const Config& config);
|
|
|
|
|
2018-05-24 12:31:04 +02:00
|
|
|
/// Defer surface creation until first present call. This
|
|
|
|
/// fixes issues with games that create multiple swap chains
|
|
|
|
/// for a single window that may interfere with each other.
|
2018-08-07 14:47:06 +02:00
|
|
|
bool deferSurfaceCreation;
|
2018-07-20 13:49:07 +02:00
|
|
|
|
2018-08-07 14:47:06 +02:00
|
|
|
/// Override maximum frame latency if the app specifies
|
|
|
|
/// a higher value. May help with frame timing issues.
|
|
|
|
int32_t maxFrameLatency;
|
2018-08-07 17:33:19 +02:00
|
|
|
|
|
|
|
/// Override PCI vendor and device IDs reported to the
|
|
|
|
/// application. This may make apps think they are running
|
|
|
|
/// on a different GPU than they do and behave differently.
|
|
|
|
int32_t customVendorId;
|
|
|
|
int32_t customDeviceId;
|
2018-05-24 12:31:04 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|