Direct3D对象


Microsoft® Direct3D®是通过组件对象模型(COM)对象和接口实现的。C++应用程序可以直接访问这些接口和对象,而Microsoft Visual Basic®应用程序则与一层被称为Microsoft DirectX® for Visual Basic Classes的代码进行交互,它们为Visual Basic应用程序组织数据并传送给DirectX运行库(run time)。

Direct3D对象是应用程序第一个创建并最后一个释放的对象。可以通过Direct3D对象访问一些函数,用它们枚举并取得Direct3D设备的能力,这允许应用程序选择设备而无需创建它们。

当一个C++应用程序启动时,它必须取得一个指向IDirect3D9接口的指针以使用Direct3D的功能。

以下示例代码显示了如何用Direct3DCreate9函数取得一个指向Direct3D接口的指针。

LPDIRECT3D9 g_pD3D = NULL;

 

if( NULL == (g_pD3D = Direct3DCreate9(D3D_SDK_VERSION)))

    return E_FAIL;

要从Direct3DDevice对象取得创建它的Direct3D对象,可以用IDirect3DDevice9::GetDirect3D方法。