15#pragma comment(lib, "d3d9.lib")
19#define RELEASE(o) if (o){o->Release();o=NULL;}
20#define PI (3.1415926f)
21#define DEGtoRAD(deg) ((float)deg * 0.017453292f)
22#define RADtoDEG(rad) ((float)rad * 57.29578049f)
23#define SAFE_DELETE(p) { if(p){ delete (p); (p)=NULL; } }
24#define SAFE_DELETE_ARRAY(p) { if(p){ delete [](p); (p)=NULL; } }
25#define SAFE_RELEASE(p) { if(p){ (p)->Release(); (p)=NULL; } }
36 virtual BOOL Dispose() = 0;
37 virtual BOOL Restore() = 0;
38 virtual BOOL Release() = 0;
42class CDirectDraw_RenderState
45 DWORD m_valuePrevious[300];
46 DWORD m_valueNew[300];
49 void SetRenderState(D3DRENDERSTATETYPE State, DWORD Value)
51 m_valueNew[(int)State] = Value;
58 for(
int i=0; i<300; i++)
60 valueNew = m_valueNew[i];
61 if((DWORD)0x7fffffff != valueNow)
63 if(m_valuePrevious[i] != valueNew)
68 m_valuePrevious[i] = valueNew;
73 for(
int i=0; i<300; i++)
75 m_valuePrevious[i] = (DWORD)0x7fffffff;
76 m_valueNew[i] = (DWORD)0x7fffffff;
80 CDirectDraw_RenderState()
84 ~CDirectDraw_RenderState()
107 DWORD m_VertexShaderVersion;
108 DWORD m_PixelShaderVersion;
110 D3DPRESENT_PARAMETERS m_d3dParam_current;
111 D3DPRESENT_PARAMETERS m_d3dParam_window;
112 D3DPRESENT_PARAMETERS m_d3dParam_full;
114 LPDIRECT3DDEVICE9 m_pd3dDev;
115 LPDIRECT3DSURFACE9 m_pBackBuffer;
116 LPDIRECT3DSURFACE9 m_currentRenderTarget;
120 static bool m_DeviceLost;
137 BOOL Create(
void* HWND ,
int ScreenWidth ,
int ScreenHeight );
152 m_DeviceLost =
false;
153 m_current_displaymode = displaymode;
154 Create( HWND , ScreenWidth , ScreenHeight );
190 m_currentRenderTarget = surface;
191 m_pd3dDev->SetRenderTarget(
index , surface );
194 m_pd3dDev->SetDepthStencilSurface( depath );
200 return m_currentRenderTarget;
Definition d3dsimple.h:91
int GetScreenHeight()
Definition d3dsimple.h:180
void SetRestoreDeviceCallBackFunc(CDirectDrawCALLBACK func)
Definition d3dsimple.h:223
void SetScreenHeight(int h)
Definition d3dsimple.h:182
virtual HRESULT BeginScene()
Definition d3dsimple.cpp:351
DISPLAYMODE
Definition d3dsimple.h:94
@ DISPLAYMODE_WINDOW
ウインドウモード
Definition d3dsimple.h:96
@ DISPLAYMODE_NONE
よくわからない
Definition d3dsimple.h:95
@ DISPLAYMODE_FULL
フルスクリーンモード
Definition d3dsimple.h:97
virtual HRESULT EndScene()
Definition d3dsimple.cpp:381
~CDirectDrawSimple()
Definition d3dsimple.h:161
virtual void ChangeDisplayMode(DISPLAYMODE mode)
Definition d3dsimple.cpp:124
HWND GetHWnd()
Definition d3dsimple.h:172
BOOL Cleanup()
DirectDrawを初期化
Definition d3dsimple.cpp:19
CDirectDrawSimple()
Definition d3dsimple.h:140
static CDirectDrawSimple * GetInstance()
Definition d3dsimple.h:176
void SetBackGroundColor(BYTE r, BYTE g, BYTE b)
Definition d3dsimple.h:212
LPDIRECT3DDEVICE9 GetDevice()
Definition d3dsimple.h:174
void SetPause(bool flag)
Definition d3dsimple.h:203
void SetReleaseDeviceCallBackFunc(CDirectDrawCALLBACK func)
Definition d3dsimple.h:222
LPDIRECT3DSURFACE9 getBackBuffer()
Definition d3dsimple.cpp:315
DWORD GetPSVersion()
Definition d3dsimple.h:221
void SetScreenWidth(int w)
Definition d3dsimple.h:181
LPDIRECT3D9 GetD3D()
Definition d3dsimple.h:173
LPDIRECT3DSURFACE9 GetRenderTarget()
Definition d3dsimple.h:198
virtual BOOL DeviceChk()
Definition d3dsimple.cpp:325
int GetScreenWidth()
Definition d3dsimple.h:179
void SetRenderTarget(int index, LPDIRECT3DSURFACE9 surface, LPDIRECT3DSURFACE9 depath=0)
Definition d3dsimple.h:188
void DeviceReset()
Definition d3dsimple.cpp:69
CDirectDrawSimple(HWND HWND, int ScreenWidth, int ScreenHeight, CDirectDrawSimple::DISPLAYMODE displaymode=DISPLAYMODE_WINDOW)
Definition d3dsimple.h:145
DISPLAYMODE GetCurrentDisplayMode()
Definition d3dsimple.h:209
DWORD GetVSVersion()
Definition d3dsimple.h:220
Definition d3dsimple.h:35
void(* CDirectDrawCALLBACK)()
Definition d3dsimple.h:32
GLenum func
Definition glad.h:3336
GLenum mode
Definition glad.h:1953
GLboolean GLboolean GLboolean b
Definition glad.h:3632
typedef void(APIENTRYP PFNGLCULLFACEPROC)(GLenum mode)
GLboolean GLboolean g
Definition glad.h:3632
GLuint index
Definition glad.h:3345
GLdouble GLdouble r
Definition glad.h:2421
GLfloat GLfloat GLfloat GLfloat h
Definition glad.h:4546
GLdouble GLdouble GLdouble w
Definition glad.h:2325