Win32 API 日本語リファレンス
ホームGraphics.Direct3D10 › D3D10_RESOURCE_MISC_FLAG

D3D10_RESOURCE_MISC_FLAG

列挙型
基底型i4

メンバー 5

名前10進16進説明
D3D10_RESOURCE_MISC_GENERATE_MIPS10x1アプリケーションが テクスチャリソース に対して ID3D10Device::GenerateMips を呼び出せるようにします。そのリソースは、レンダーターゲットかつシェーダーリソースであることを指定する バインドフラグ を使用して作成しなければなりません。
D3D10_RESOURCE_MISC_SHARED20x2

2 つ以上の Direct3D デバイス間でリソースデータを共有できるようにします。共有できるリソースは、ミップマップを持たない 2D テクスチャのみです。

WARP デバイスおよび REF デバイスは共有リソースをサポートしていません。WARP または REF デバイス上でこのフラグを指定してリソースを作成しようとすると、 作成メソッドは E_OUTOFMEMORY エラーコードを返します。

D3D10_RESOURCE_MISC_TEXTURECUBE40x4アプリケーションが、6 つのテクスチャを含む Texture2DArray からキューブテクスチャを作成できるようにします。
D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX160x10

作成されたリソースを IDXGIKeyedMutex::AcquireSync および ReleaseSync API を使用して同期できるようにします。 D3D10_RESOURCE_MISC_FLAG パラメーターを受け取る次のリソース作成 D3D10 API は、いずれもこの新しいフラグをサポートするように拡張されています。

  • ID3D10Device1::CreateTexture1D
  • ID3D10Device1::CreateTexture2D
  • ID3D10Device1::CreateTexture3D
  • ID3D10Device1::CreateBuffer
ここに挙げた関数のいずれかが D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX フラグを設定して呼び出された場合、返されるインターフェイスから IDXGIKeyedMutex インターフェイスをクエリできます。このインターフェイスは、サーフェスへのアクセスを同期するための AcquireSync および ReleaseSync API を実装しています。 サーフェスを作成したデバイス、および (OpenSharedResource を使用して) そのサーフェスを開く他のデバイスは、 サーフェスに対するレンダリングコマンドの前に IDXGIKeyedMutex::AcquireSync を呼び出し、レンダリングが完了したときに IDXGIKeyedMutex::ReleaseSync を呼び出す必要があります。

WARP デバイスおよび REF デバイスは共有リソースをサポートしていません。WARP または REF デバイス上でこのフラグを指定してリソースを作成しようとすると、 作成メソッドは E_OUTOFMEMORY エラーコードを返します。

D3D10_RESOURCE_MISC_GDI_COMPATIBLE320x20サーフェスを GDI との相互運用に使用できるようにします。このフラグを設定すると、IDXGISurface1::GetDC を介した サーフェスへのレンダリングが可能になります。

公式ドキュメント

リソースに関する、その他のあまり一般的でないオプションを識別します。

解説(Remarks)

この列挙型は D3D10_BUFFER_DESCD3D10_TEXTURE1D_DESCD3D10_TEXTURE2D_DESCD3D10_TEXTURE3D_DESCD3DX10_IMAGE_INFO、および D3DX10_IMAGE_LOAD_INFO で使用されます。

これらのフラグはビット単位の OR で組み合わせることができます。

D3D10_RESOURCE_MISC_SHAREDD3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX は相互に排他的なフラグです。 リソース作成の呼び出しではどちらか一方を設定できますが、両方を同時に設定することはできません。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum D3D10_RESOURCE_MISC_FLAG : int {
    D3D10_RESOURCE_MISC_GENERATE_MIPS = 1,
    D3D10_RESOURCE_MISC_SHARED = 2,
    D3D10_RESOURCE_MISC_TEXTURECUBE = 4,
    D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 16,
    D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 32
} D3D10_RESOURCE_MISC_FLAG;
public enum D3D10_RESOURCE_MISC_FLAG : int
{
    D3D10_RESOURCE_MISC_GENERATE_MIPS = 1,
    D3D10_RESOURCE_MISC_SHARED = 2,
    D3D10_RESOURCE_MISC_TEXTURECUBE = 4,
    D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 16,
    D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 32,
}
Public Enum D3D10_RESOURCE_MISC_FLAG As Integer
    D3D10_RESOURCE_MISC_GENERATE_MIPS = 1
    D3D10_RESOURCE_MISC_SHARED = 2
    D3D10_RESOURCE_MISC_TEXTURECUBE = 4
    D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 16
    D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 32
End Enum
import enum

class D3D10_RESOURCE_MISC_FLAG(enum.IntEnum):
    D3D10_RESOURCE_MISC_GENERATE_MIPS = 1
    D3D10_RESOURCE_MISC_SHARED = 2
    D3D10_RESOURCE_MISC_TEXTURECUBE = 4
    D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 16
    D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 32
// D3D10_RESOURCE_MISC_FLAG
pub const D3D10_RESOURCE_MISC_GENERATE_MIPS: i32 = 1;
pub const D3D10_RESOURCE_MISC_SHARED: i32 = 2;
pub const D3D10_RESOURCE_MISC_TEXTURECUBE: i32 = 4;
pub const D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX: i32 = 16;
pub const D3D10_RESOURCE_MISC_GDI_COMPATIBLE: i32 = 32;
// D3D10_RESOURCE_MISC_FLAG
const (
	D3D10_RESOURCE_MISC_GENERATE_MIPS int32 = 1
	D3D10_RESOURCE_MISC_SHARED int32 = 2
	D3D10_RESOURCE_MISC_TEXTURECUBE int32 = 4
	D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX int32 = 16
	D3D10_RESOURCE_MISC_GDI_COMPATIBLE int32 = 32
)
const
  D3D10_RESOURCE_MISC_GENERATE_MIPS = 1;
  D3D10_RESOURCE_MISC_SHARED = 2;
  D3D10_RESOURCE_MISC_TEXTURECUBE = 4;
  D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 16;
  D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 32;
// D3D10_RESOURCE_MISC_FLAG
pub const D3D10_RESOURCE_MISC_GENERATE_MIPS: i32 = 1;
pub const D3D10_RESOURCE_MISC_SHARED: i32 = 2;
pub const D3D10_RESOURCE_MISC_TEXTURECUBE: i32 = 4;
pub const D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX: i32 = 16;
pub const D3D10_RESOURCE_MISC_GDI_COMPATIBLE: i32 = 32;
const
  D3D10_RESOURCE_MISC_GENERATE_MIPS* = 1
  D3D10_RESOURCE_MISC_SHARED* = 2
  D3D10_RESOURCE_MISC_TEXTURECUBE* = 4
  D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX* = 16
  D3D10_RESOURCE_MISC_GDI_COMPATIBLE* = 32
enum D3D10_RESOURCE_MISC_FLAG : int {
    D3D10_RESOURCE_MISC_GENERATE_MIPS = 1,
    D3D10_RESOURCE_MISC_SHARED = 2,
    D3D10_RESOURCE_MISC_TEXTURECUBE = 4,
    D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 16,
    D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 32,
}
#define global D3D10_RESOURCE_MISC_GENERATE_MIPS     0x1
#define global D3D10_RESOURCE_MISC_SHARED            0x2
#define global D3D10_RESOURCE_MISC_TEXTURECUBE       0x4
#define global D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX 0x10
#define global D3D10_RESOURCE_MISC_GDI_COMPATIBLE    0x20