Weather.h
上传用户:henghua
上传日期:2007-11-14
资源大小:7655k
文件大小:1k
源码类别:

游戏引擎

开发平台:

Visual C++

  1. #ifndef WEATHER_H
  2. #define WEATHER_H
  3. #include "comman.h"
  4. #ifdef ENABLE_RAIN
  5. const int numofvtx = 2;
  6. class CRainParticle
  7. {
  8. public:
  9. D3DXVECTOR3 pos;
  10. float speed;
  11. };
  12. class CRain
  13. {
  14. public:
  15. CRain(LPDIRECT3DDEVICE9 device, CConfiguration *config, int particlenum, D3DXVECTOR3 &v, float radius = 50);
  16. ~CRain();
  17. bool Init();
  18. bool Update(float fElapsedTime = 0.05);
  19. bool Render();
  20. int particlenum;
  21. float radius;
  22. CConfiguration *config;
  23. CCamera **cam;
  24. CRainParticle *particlearray;
  25. D3DXVECTOR3 dir;
  26. LPDIRECT3DVERTEXBUFFER9 pRainVB;
  27. LPDIRECT3DDEVICE9 device;
  28. };
  29. #endif
  30. struct  CSnowParticle
  31. {
  32. float x, y, z;      //位置
  33. float fYaw;         //雪花绕自身Y周旋转角度
  34. float fPitch;       //雪花绕自身X周旋转角度
  35. float Dspeed;       //雪花下降速度
  36. float Rspeed;       //雪花旋转速度
  37. int   TexIndex;     //纹理
  38. };
  39. class CSnow
  40. {
  41. public:
  42. CSnow(LPDIRECT3DDEVICE9 device, CConfiguration *config, int particlenum, D3DXVECTOR3 &v, float radius = 50);
  43. ~CSnow();
  44. bool Init();
  45. void InitPos();
  46. bool Update(float fElapsedTime = 0.05);
  47. bool Render();
  48. int particlenum;
  49. float radius;
  50. bool inited;
  51. CConfiguration *config;
  52. CCamera **cam;
  53. CSnowParticle *particlearray;
  54. LPDIRECT3DTEXTURE9 pSnowTex[3];
  55. D3DXVECTOR3 dir;
  56. LPDIRECT3DVERTEXBUFFER9 pSnowVB;
  57. LPDIRECT3DDEVICE9 device;
  58. };
  59. #endif