`
yiyeqinghuasoon
  • 浏览: 641710 次
文章分类
社区版块
存档分类
最新评论

DirectX9函数:IDirect3D9::CreateDevice 方法

 
阅读更多

创建一个设备以代表显示适配器.

语法

HRESULTCreateDevice(

UINTAdapter, D3DDEVTYPEDeviceType, HWNDhFocusWindow, DWORDBehaviorFlags, D3DPRESENT_PARAMETERS*pPresentationParameters, IDirect3DDevice9**ppReturnedDeviceInterface );

参数

Adapter
[in]指出显卡的序列号. D3DADAPTER_DEFAULT 代表默认主显卡.
DeviceType
[in] D3DDEVTYPE 枚举类型成员,指出期望的设备类型. 如果该参数无效则函数执行失败.
hFocusWindow
[in]窗口句柄指明此设备的归属. 全屏模式时该窗口必须为顶级窗口.
BehaviorFlags
[in]结合一个或更多参数控制设备的创建.详细信息见 D3DCREATE.
pPresentationParameters
[in, out] D3DPRESENT_PARAMETERS 结构指针, 描述要创建的设备的表达参数.

对于Microsoft Windows® 2000 and Windows XP,全屏模式的设备刷新比率按以下顺序设定.

  1. User-specified nonzero ForcedRefreshRate registry key, if supported by the device.
  2. Application-specified nonzero refresh rate value in the presentation parameter.
  3. Refresh rate of the latest desktop mode, if supported by the device.
  4. 75 hertz if supported by the device.
  5. 60 hertz if supported by the device.
  6. Device default.

一个不支持的刷新率将转为最接近的小于它的刷新率.

ppReturnedDeviceInterface
[out, retval]要返回的 IDirect3DDevice9 接口的指针的地址, 代表创建的设备.

返回值

如果执行成功,返回值是D3D_OK.

如果执行失败,返回下列值中的一个.

D3DERR_INVALIDCALL 方法调用无效. 比如方法的一个参数是无效值.
D3DERR_NOTAVAILABLE 设备不支持检验技术(queried technique).
D3DERR_OUTOFVIDEOMEMORY Direct3D 没有足够显存来完成操作.


备注

该方法返回完整的工作设备接口, 设置想要的显示模式(或窗口模式), 分配适当的离屏缓存. 要开始渲染, 程序只需创建和设置深度缓冲(假如 D3DPRESENT_PARAMETERS的EnableAutoDepthStencil为 FALSE)...

分享到:
评论

相关推荐

    E_D3D9 Beta3模块源码

    资源介绍:。以下更改相对于 E_D3D9 1.0正式版:。1:[!]"E_D3D9" 改名为“E_...9:[+]IDirect3DDevice9Video。10:[+]IDirect3DAuthenticatedChannel9。11:[+]IDirect3DCryptoSession9。12:[+]IDirectInput8。13:[+]IDi

    拉伸IDirect3DSurface9

    我如何将一个IDirect3DSurface9拉伸到另一个?功能IDirect3DDevice9 :: StretchRect无法在屏幕外的表面上使用。

    idirect卫星通信系统 产品及技术优势介绍

    3. iDirect 全球网络管理系统(NMS) 4. iDirect 虚拟网络运营商(VNO)、用户网络检察员(CNO) 5. iDirect 与移动通信 6. iDirect 系统其它方面的优势 6.1 小站安装容易 6.2 Rx CRC 关联 6.3 自动波束(网络)切换...

    易语言D3D模块源码

    9:[+]IDirect3DDevice9Video 10:[+]IDirect3DAuthenticatedChannel9 11:[+]IDirect3DCryptoSession9 12:[+]IDirectInput8 13:[+]IDirectInputDevice8 其中DIDATAFORMAT参考了Delphi的JEDI后处理的.若有更好的方法...

    DIRECTX.9.0.3D游戏开发编程基础.pdf

    3.4.2 IDirect3DDevice9::DrawIndexedPrimitive 3.4.3 Begin/End Scene 3.5 D3DX几何体 3.6 例程:三角形、立方体、茶壶、D3DXCreate* 3.7 小结 第4章 颜色 4.1 颜色表示 4.2 顶点颜色 4.3 着色 4.4 例程:...

    Introduction to 3D Game Programming with DirectX 9.0

    3.4.2 IDirect3DDevice9::DrawIndexedPrimitive 80 3.4.3 Begin/End Scene 81 3.5 D3DX几何体 81 3.6 例程:三角形、立方体、茶壶、D3DXCreate* 83 3.7 小结 87 第4章 颜色 89 4.1 颜色表示 89 4.2 顶点颜色...

    Direct3D中实现图元的鼠标拾取

    Direct3D中实现图元的鼠标拾取

    Hook D3D9.dll代码

    Hook D3d9.dll 中的IDirect3D9 IDirect3DTexture9等接口

    NVIDIA Cg 2.2 February 2010

    IDirect3DDevice9 pDev 然后Initialization CG(参考initCG函数定义) Step2 1:注册CgFX状态 从固定管线接管纹理状态 根据cgfx文件名创建Effect对象 cgD3D9RegisterStates myCgContext ; CGcontext myCgContext ...

    directx3d hlslSurface Effects.

    directx hlsl Surface Effects.this effect is easy sample.

    Direct3D中的绘制

    一.顶点缓存与索引缓存 一个顶点缓存是一个包含顶点数据的连续内存空间. 一个索引缓存是一个包含索引数据的连续内在空间. 我们之所以用顶点缓存和索引缓存而非数组来存储数据,是因为顶点...IDirect3DIndexBuffer9

    D3D游戏程序设计入门

    Direct3D 的IDirect3DDevice9::Clear 方法。图1.1 显示了应用程序、Direct3D 和图形设备之间的关 系。 图1.1 图1.1中Direct3D所表示的是Direct3D中已定义的,供程序员使用的Direct3D接口和函数的集合。 这些接口和...

    Ex_DUI开源

    现在开源下里面有部分代码我把留了下来没发上来应该说里面应该角全了吧!

    DX绘制一个三角形的流程

    一、 初始化Direct3D 1. 获得IDirect3D9 接口 获得一个IDirect3D9接口指针

    directx 3d 实例

    IDirect3D9 *g_pD3D = NULL; IDirect3DDevice9 *g_pD3DDevice = NULL; // Sky vertex structure, fvf, vertex buffer, and texture typedef struct { float x, y, z, rhw; float u, v; } sSkyVertex; #define ...

    易语言-E_D3D9 Beta3模块

    9:[+]IDirect3DDevice9Video 10:[+]IDirect3DAuthenticatedChannel9 11:[+]IDirect3DCryptoSession9 12:[+]IDirectInput8 13:[+]IDirectInputDevice8 其中DIDATAFORMAT参考了Delphi的JEDI后处理的.若有更好的方法...

    《Programming Role Playing Games with DirectX》第二版chap 2的Draw3D代码更新版

    用的是IDirect3DVertexDeclaration9对象结合D3DVERTEXELEMENT9数组、而非使用传统的FVF声明。此外用的是着色器方法,而非固定管道渲染。

    用Direct3D设计淡入淡出的效果(演示程序)

    在纹理和顶点混合的初期,我们可以调用IDirect3DDevice9::SetTextureStageState函数来进行操作。下面是这个函数的声明: HRESULT SetTextureStageState( DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD ...

    d3d8to9:D3D8伪驱动程序,可将API调用和字节码着色器转换为等效的D3D9

    关于某些源代码文件包含的内容的快速概述: 文件描述 主要D3D8入口点Direct3DCreate8定义 IDirect3D8接口的实现,包括设备创建 IDirect3DDevice8接口的实现,包括着色器转换 否则将在d3d8.h中找到所有使用过的D3D8...

Global site tag (gtag.js) - Google Analytics