forked from YunHsiao/tetris
/
Direct3D.h
35 lines (29 loc) · 805 Bytes
/
Direct3D.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef CDirect3D_H_
#define CDirect3D_H_
#include <d3d9.h>
#pragma comment(lib,"d3d9.lib")
#include <d3dx9.h>
#pragma comment(lib,"d3dx9.lib")
#include "Renderer.h"
class CDirect3D : public CRenderer
{
public:
CDirect3D();
~CDirect3D();
bool onInit();
void PreRender();
void PostRender();
void SpriteDrawText(const char* strText, SRect* rect, int Format, unsigned long color);
void SpriteDraw(size_t pTexture, const SVector* pPosition, unsigned long color);
size_t CreateTexture(const char* pSrcFile);
private:
size_t CreateTexture(unsigned char *image, unsigned w, unsigned h);
IDirect3D9* m_pDirect3D9;
IDirect3DDevice9* m_pD3D9Device;
ID3DXSprite* m_pSprite;
ID3DXFont* m_pFont;
bool m_bD3DFont;
std::vector<IDirect3DTexture9*> m_vTextures;
std::vector<SPoint> m_vSize;
};
#endif