CSDN博客

img lsl707

第一章:Direct3D的初始化

发表于2004/7/1 13:52:00  662人阅读

现在开始,directx9.0的帖子。第一章,directX的初始化。

1,项目准备

需要插入的.lib文件

d3dxof.lib dxguid.lib d3dx9dt.lib d3d9.lib winmm.lib

总共5个

2代码构成

1个工程文件,2个头文件,2个.cpp文件。其中头文件

stdafx.h

工程的最上层文件。

d3dsetup9.h

CD3DSetup9类的定义文件

.cpp文件:

main.cpp

WinMain()函数和WindProc()函数。简而言之,只是调用CD3DSetup9类

d3dsetup.cpp

CD3DSetup类的成员函数实现文件,初始化以及render()等

3详细实现

//stdafx.h

#pragma once

#include <windows.h>

 

//d3dsetup9.h

#include "stdafx.h" #include <d3d9.h>
//memory release #define SAFE_DELETE(p) { if(p) { delete (p); (p)=NULL; } } #define SAFE_DELETE_ARRAY(p) { if(p) { delete[] (p); (p)=NULL; } } #define SAFE_RELEASE(p) { if(p) { (p)->Release(); (p)=NULL; } }
//Direct3D9 class class CD3DSetup9 { LPDIRECT3D9 m_pD3D; LPDIRECT3DDEVICE9 m_pd3dDevice; D3DPRESENT_PARAMETERS param;
 int m_iwidth, m_iheight; //windows width and height int m_iloop;
 HRESULT InitD3D(HWND hWnd, BOOL bWin); //Direct3D9
 HRESULT AppLoop(); //
public: CD3DSetup9(); 
 ~CD3DSetup9(); 
 HRESULT Run(HINSTANCE hInst, char szWinName[], int width, int height, BOOL bWin); //
 LRESULT MsgProc(HWND hwnd, UINT uMsg,  WPARAM wParam, LPARAM lParam); 
 HRESULT Render(); //
 HRESULT Cleanup(); //
};

 

........(continu..

0 0

相关博文

我的热门文章

img
取 消
img