source: GTP/trunk/App/Demos/Illum/explosion_DX/Explosion.h @ 1484

Revision 1484, 1.2 KB checked in by szirmay, 18 years ago (diff)
Line 
1#pragma once
2#include "Mesh.h"
3#include "Parameters.h"
4#include "DXTexture.h"
5#include "ParticleSystem.h"
6
7class Explosion
8{
9        IDirect3DDevice9*               pd3dDevice;
10       
11        ID3DXEffect*            g_pEffect;
12        IDirect3DTexture9*              ColorTexture;
13        CDXTexture*                             FrameBufferTexture;
14        CDXTexture*                             ParticleTexture;
15        CDXTexture*                             HeatTexture;
16        CDXTexture*                             PhaseTexture;
17
18        IDirect3DVertexBuffer9*         FullScreenQuad;
19
20        UINT m_ScreenWidth;
21        UINT m_ScreenHeight;
22        int particleTexRatio;
23        int lastRatio;
24       
25        Mesh* mesh;
26       
27        HRESULT                                 hr;                             // return codes
28        ParticleSystem                  pSys;
29
30        void destroyParticleTex();
31        void createParticleTex();
32        void renderPhaseTexture();
33        bool phaseCreated;
34
35public:
36        CModelViewerCamera* camera;     //!!
37        Parameters* params;
38       
39        D3DXVECTOR3* LightPos;
40
41public:
42
43        Explosion(void);
44        ~Explosion(void);
45       
46        void OnFrameRender( D3DXMATRIXA16& mView, D3DXMATRIXA16& mProj );
47
48
49        void OnCreateDevice( IDirect3DDevice9* pd3dDevice);
50        void OnDestroyDevice();
51        void OnResetDevice(const D3DSURFACE_DESC* pBackBufferDesc);
52        void OnLostDevice();
53        void SetWorldViewProj(D3DXMATRIXA16& mWorld, D3DXMATRIXA16& mView, D3DXMATRIXA16& mProj );
54       
55        void addUiParams(Parameters& p);
56        void slidersChanged();
57
58};
Note: See TracBrowser for help on using the repository browser.