DXGI_SWAP_CHAIN_FLAG
列挙型フラグメンバー 13
| 名前 | 10進 | 16進 | 説明 |
|---|---|---|---|
| DXGI_SWAP_CHAIN_FLAG_NONPREROTATED | 1 | 0x1 | 画像の自動回転をオフにするには、このフラグを設定します。つまり、フロントバッファーの内容をモニターに転送するときに回転を実行しません。 アプリケーション側で回転を処理する場合は、このフラグを使用して帯域幅の損失を回避します。このオプションは全画面モードでのみ有効です。 |
| DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH | 2 | 0x2 | アプリケーションが IDXGISwapChain::ResizeTarget を呼び出してモードを切り替えられるようにするには、このフラグを設定します。 ウィンドウモードから全画面モードに切り替えると、ディスプレイモード (またはモニターの解像度) がアプリケーションウィンドウの寸法に一致するように変更されます。 |
| DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE | 4 | 0x4 | アプリケーションがスワップチェーンまたはサーフェス上で GDI を使用して描画できるようにするには、このフラグを設定します。 これにより、アプリケーションは 0 番目のバックバッファーまたはサーフェスに対して IDXGISurface1::GetDC を呼び出せるようになります。 このフラグは Direct3D 12 には適用されません。 |
| DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT | 8 | 0x8 | スワップチェーンが保護されたコンテンツを含む可能性があることを示すには、このフラグを設定します。そのため、オペレーティングシステムは、ドライバーとハードウェアによる保護が使用される場合にのみスワップチェーンの作成をサポートします。ドライバーとハードウェアがコンテンツ保護をサポートしていない場合、スワップチェーン用のリソースを作成する呼び出しは失敗します。 Direct3D 11: この列挙値は Windows 8 以降でサポートされます。 |
| DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER | 16 | 0x10 | スワップチェーン内で作成される共有リソースを、共有サーフェスへのアクセスを制限するドライバーのメカニズムによって保護しなければならないことを示すには、このフラグを設定します。 Direct3D 11: この列挙値は Windows 8 以降でサポートされます。 |
| DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY | 32 | 0x20 | 表示するコンテンツをローカルのディスプレイに限定するには、このフラグを設定します。これにより、表示されたコンテンツにはリモートアクセスや デスクトップ複製 API を通じてアクセスできなくなります。 このフラグは Windows のウィンドウコンテンツ保護機能をサポートします。アプリケーションはこのフラグを使用して、自身の画面上のウィンドウコンテンツが、特定の一連の公開されたオペレーティングシステム機能や API を通じてキャプチャまたはコピーされるのを防ぐことができます。 別のプロセスが HWND を作成したウィンドウモード (HWND または IWindow) のスワップチェーンでこのフラグを使用する場合、IDXGISwapChain::Present または IDXGISwapChain1::Present1 の呼び出しを成功させるには、HWND の所有者が SetWindowDisplayAffinity 関数を適切に使用する必要があります。 Direct3D 11: この列挙値は Windows 8 以降でサポートされます。 |
| DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT | 64 | 0x40 | フレームの表示中に描画が開始されないようにするための待機可能オブジェクトを作成するには、このフラグを設定します。このフラグを使用する場合、スワップチェーンのレイテンシは IDXGISwapChain2::SetMaximumFrameLatency API で設定する必要があり、IDXGIDevice1::SetMaximumFrameLatency は使用しません。 このフラグは、描画 API が Direct3D 12 の場合を除き、全画面モードではサポートされません。 メモ この列挙値は Windows 8.1 以降でサポートされます。 |
| DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER | 128 | 0x80 | マルチプレーンレンダリング用に前景レイヤーへスワップチェーンを作成するには、このフラグを設定します。このフラグは、CreateSwapChainForCoreWindow で作成される CoreWindow スワップチェーンでのみ使用できます。IDXGIOutput2::SupportsOverlays がオーバーレイのハードウェアサポートを利用できないことを示している場合、アプリは前景スワップチェーンを作成しないでください。 なお、IDXGISwapChain::ResizeBuffers でこのフラグを追加または削除することはできません。 メモ この列挙値は Windows 8.1 以降でサポートされます。 |
| DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO | 256 | 0x100 | 全画面ビデオ用のスワップチェーンを作成するには、このフラグを設定します。 メモ この列挙値は Windows 8.1 以降でサポートされます。 |
| DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO | 512 | 0x200 | YUV ビデオ用のスワップチェーンを作成するには、このフラグを設定します。 メモ この列挙値は Windows 8.1 以降でサポートされます。 |
| DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED | 1024 | 0x400 | 基になるすべてのリソースをハードウェアで保護できるようにスワップチェーンを作成することを示します。ハードウェアによるコンテンツ保護がサポートされていない場合、リソースの作成は失敗します。 このフラグには次の制限があります。
メモ このフラグを使用してスワップチェーンを作成しても、基になる割り当てに対してハードウェア保護が有効になることが自動的に保証されるわけではありません。実装によっては、保護が保証される前に DRM コンポーネントを先に初期化しておく必要があります。
|
| DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING | 2048 | 0x800 | ティアリングのサポートは、アプリケーションが全画面のボーダーレスウィンドウに関連付けられたスワップチェーンを表示する際に、可変リフレッシュレートに対応したディスプレイが正しく機能するために必要です。Win32 アプリは SetFullscreenState(TRUE) を呼び出すことで、既に排他的全画面モードでティアリングを実現できますが、Win32 開発者には代わりにこのティアリングフラグを使用する方法が推奨されます。このフラグを使用するには DXGI_SWAP_EFFECT_FLIP_* スワップ効果が必要です。 この機能のハードウェアサポートを確認するには、IDXGIFactory5::CheckFeatureSupport を参照してください。使用方法については、IDXGISwapChain::Present および DXGI_PRESENT フラグを参照してください。 メモ
IDXGISwapChain::ResizeBuffers でこのフラグを追加または削除することはできません。 |
| DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS | 4096 | 0x1000 |
公式ドキュメント
スワップチェーンの動作に関するオプションです。
解説(Remarks)
この列挙型は DXGI_SWAP_CHAIN_DESC 構造体および IDXGISwapChain::ResizeTarget メソッドで使用されます。
この列挙型は DXGI_SWAP_CHAIN_DESC1 構造体でも使用されます。
IDXGIFactory::CreateSwapChain メソッドを使用して全画面モードで作成するスワップチェーンには、DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY を設定する必要はありません。これらのスワップチェーンは、既に DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY が設定されている場合と同様に動作するためです。つまり、表示されたコンテンツにはリモートアクセスや デスクトップ複製 API を通じてアクセスできません。
IDXGIFactory2::CreateSwapChainForHwnd、IDXGIFactory2::CreateSwapChainForCoreWindow、および IDXGIFactory2::CreateSwapChainForComposition の各メソッドで作成したスワップチェーンは、DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY が設定されていない場合は保護されず、設定されている場合は保護されます。スワップチェーンが保護されている場合、画面のスクレイピングが防止され、全画面モードでは、表示されたコンテンツに デスクトップ複製 API を通じてアクセスできません。
IDXGISwapChain::ResizeBuffers を呼び出してスワップチェーンのバックバッファーを変更するときに、すべての DXGI_SWAP_CHAIN_FLAG フラグをリセットまたは変更できます。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
各言語での定義
列挙メンバーの定義。HSP タブは #define global(値は16進)。
typedef enum DXGI_SWAP_CHAIN_FLAG : int {
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 1,
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 2,
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE = 4,
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT = 8,
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER = 16,
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY = 32,
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT = 64,
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER = 128,
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO = 256,
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO = 512,
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED = 1024,
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING = 2048,
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS = 4096
} DXGI_SWAP_CHAIN_FLAG;[Flags]
public enum DXGI_SWAP_CHAIN_FLAG : int
{
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 1,
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 2,
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE = 4,
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT = 8,
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER = 16,
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY = 32,
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT = 64,
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER = 128,
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO = 256,
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO = 512,
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED = 1024,
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING = 2048,
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS = 4096,
}<Flags>
Public Enum DXGI_SWAP_CHAIN_FLAG As Integer
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 1
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 2
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE = 4
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT = 8
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER = 16
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY = 32
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT = 64
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER = 128
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO = 256
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO = 512
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED = 1024
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING = 2048
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS = 4096
End Enumimport enum
class DXGI_SWAP_CHAIN_FLAG(enum.IntFlag):
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 1
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 2
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE = 4
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT = 8
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER = 16
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY = 32
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT = 64
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER = 128
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO = 256
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO = 512
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED = 1024
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING = 2048
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS = 4096// DXGI_SWAP_CHAIN_FLAG (flags)
pub const DXGI_SWAP_CHAIN_FLAG_NONPREROTATED: i32 = 1;
pub const DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH: i32 = 2;
pub const DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE: i32 = 4;
pub const DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT: i32 = 8;
pub const DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER: i32 = 16;
pub const DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY: i32 = 32;
pub const DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT: i32 = 64;
pub const DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER: i32 = 128;
pub const DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO: i32 = 256;
pub const DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO: i32 = 512;
pub const DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED: i32 = 1024;
pub const DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING: i32 = 2048;
pub const DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS: i32 = 4096;// DXGI_SWAP_CHAIN_FLAG
const (
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED int32 = 1
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH int32 = 2
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE int32 = 4
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT int32 = 8
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER int32 = 16
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY int32 = 32
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT int32 = 64
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER int32 = 128
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO int32 = 256
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO int32 = 512
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED int32 = 1024
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING int32 = 2048
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS int32 = 4096
)const
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 1;
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 2;
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE = 4;
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT = 8;
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER = 16;
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY = 32;
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT = 64;
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER = 128;
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO = 256;
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO = 512;
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED = 1024;
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING = 2048;
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS = 4096;// DXGI_SWAP_CHAIN_FLAG
pub const DXGI_SWAP_CHAIN_FLAG_NONPREROTATED: i32 = 1;
pub const DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH: i32 = 2;
pub const DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE: i32 = 4;
pub const DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT: i32 = 8;
pub const DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER: i32 = 16;
pub const DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY: i32 = 32;
pub const DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT: i32 = 64;
pub const DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER: i32 = 128;
pub const DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO: i32 = 256;
pub const DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO: i32 = 512;
pub const DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED: i32 = 1024;
pub const DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING: i32 = 2048;
pub const DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS: i32 = 4096;const
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED* = 1
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH* = 2
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE* = 4
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT* = 8
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER* = 16
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY* = 32
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT* = 64
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER* = 128
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO* = 256
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO* = 512
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED* = 1024
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING* = 2048
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS* = 4096enum DXGI_SWAP_CHAIN_FLAG : int {
DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 1,
DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 2,
DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE = 4,
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT = 8,
DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER = 16,
DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY = 32,
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT = 64,
DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER = 128,
DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO = 256,
DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO = 512,
DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED = 1024,
DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING = 2048,
DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS = 4096,
}#define global DXGI_SWAP_CHAIN_FLAG_NONPREROTATED 0x1
#define global DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH 0x2
#define global DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE 0x4
#define global DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT 0x8
#define global DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER 0x10
#define global DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY 0x20
#define global DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT 0x40
#define global DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER 0x80
#define global DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO 0x100
#define global DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO 0x200
#define global DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED 0x400
#define global DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING 0x800
#define global DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS 0x1000
; ※フラグ列挙型。ビットORで組み合わせ可(例: FOO|BAR)。