D3DDDI_CREATEDEVICEFLAGS结构 (d3dumddi.h)

D3DDDI_CREATEDEVICEFLAGS结构描述如何创建设备。

语法

typedef struct _D3DDDI_CREATEDEVICEFLAGS {
  union {
    struct {
      UINT AllowMultithreading : 1;
      UINT AllowFlipBatching : 1;
      UINT Reserved : 30;
    };
    UINT Value;
  };
} D3DDDI_CREATEDEVICEFLAGS;

成员

AllowMultithreading

一个 UINT 值,该值指定用户模式显示驱动程序在处理从 Microsoft Direct3D 运行时调用其函数时是否可以同时运行多个线程。 如果驱动程序必须禁用多线程处理,即使设置了 allowMultithreading ,请参阅 支持多个处理器

设置此成员等效于设置 32 位 成员的第一位(0x00000001)。

AllowFlipBatching

一个 UINT 值,该值指定用户模式显示驱动程序是否可以将翻转作请求排队,以便驱动程序稍后可以在另一个线程上处理它们。 此标志仅适用于驱动程序实现自己的线程处理时。 在这种情况下,在调用 Present 函数时,驱动程序不需要立即调用 pfnPresentCb 函数。

Direct3D 运行时强制实施排队存在的限制(当前设置为 1),以确保帧延迟保持在合理的级别。 如果应用程序启动对驱动程序 Present 函数的调用,而另一个当前作已排队,则运行时的当前版本将刷新已排队的当前版本。 但是,驱动程序不应依赖此行为,因为排队存在的限制可能会在运行时的未来版本中更改。

设置此成员等效于设置 32 位 成员的第二位(0x00000002)。

Reserved

此成员是保留的,应设置为零。 将此成员设置为零相当于将 32 位 成员的剩余 30 位(0xFFFFFFFD)设置为零。

Value

包含在D3DDDI_CREATEDEVICEFLAGS中的成员,可以保存一个 32 位值,用于标识如何创建设备。

要求

要求 价值
最低支持的客户端 在 Windows Vista 和更高版本的 Windows作系统中可用。
标头 d3dumddi.h (包括 D3dumddi.h, D3dkmddi.h)

另请参阅

CreateDevice

D3DDDIARG_CREATEDEVICE