raSystem  1.0 bata
raRain.cpp
Go to the documentation of this file.
1 #include "..\include\raMain.h"
2 
3 namespace System
4 {
5  raRain::raRain(raSmartPointer<raDirectX> dx, raCamera *Cam, LPCSTR EffectFile, LPCSTR Texture) : m_cam(Cam)
6  {
7  raRain(dx.get(), Cam, new System::raTexturedMaterial(dx.get(), EffectFile, "RenderParticle", Texture));
8  }
10  {
11  m_pParticleSystem = new raParticleSystem(dx, mat, false, 0.05f, -0.0981f, 15.0f);
12  }
13  void raRain::OnRender(float fTime, float fRunTime)
14  {
16  {
17  static float t = 0;
18  t += fTime;
19  if( t > 1.0f)
20  {
21  makeParticles();
22  t = 0.0f;
23  }
24  }
25  }
27  {
28  const raVector3* p = m_cam->GetEyePt();
29  for(int i = -50; i <= 50; i+= 5)
30  {
31  for(int j = -50; j <= 50; j+= 5)
32  {
34  (float)p->x + i + (((float)rand() / (float)RAND_MAX) - 0.5f) * 5.0f,
35  (float)p->y + 5 + (((float)rand() / (float)RAND_MAX) - 0.5f) * 5.0f,
36  (float)p->z + j + (((float)rand() / (float)RAND_MAX) - 0.5f) * 5.0f,
37  (((float)rand() / (float)RAND_MAX) - 0.5f) * 0.1f,
38  (((float)rand() / (float)RAND_MAX) - 0.5f) * 0.1f,
39  (((float)rand() / (float)RAND_MAX) - 0.5f) * 0.1f);
40  }
41  }
42  }
43 
45  {
46  }
47 };
raFloat y
Definition: raVector3.h:13
raFloat x
Definition: raVector3.h:12
raCamera * m_cam
Definition: raRain.h:20
virtual raVector3 * GetEyePt()
Definition: raCamera.h:116
raFloat z
Definition: raVector3.h:14
void makeParticles(void)
Definition: raRain.cpp:26
raRain(raSmartPointer< raDirectX > dx, raCamera *Cam, LPCSTR EffectFile="raEffects\articleEffect.fx", LPCSTR Texture="raGrafik\nowflake1.png")
Definition: raRain.cpp:5
void AddParticle(float x=0, float y=0, float z=0, float vx=0, float vy=0, float vz=0)
~raRain(void)
Definition: raRain.cpp:44
raParticleSystem * m_pParticleSystem
Definition: raRain.h:19
void OnRender(float fTime, float fRunTime)
Definition: raRain.cpp:13
T * get() const