Advertisement
Guest User

Untitled

a guest
Aug 17th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.57 KB | None | 0 0
  1. #pragma once
  2. #include "StdAfx.h"
  3. #include <vector>
  4. #include "float3.h"
  5. #include "LevelElement.h"
  6. #include "d3dutil.h"
  7. #include "vertex.h"
  8. #include "Light.h"
  9. #include "GraphCamera.h"
  10.  
  11. class Waves: public LevelElement
  12. {
  13. public:
  14.     Waves(Level* pLevel);
  15.     virtual ~Waves();
  16.  
  17.         void init(DWORD m, DWORD n, float dx, float dt, float speed, float damping,D3DXVECTOR3 pos);
  18.         void update (float dt);
  19.         void disturb();
  20.         void draw(GraphCamera *pGraphCamera);
  21.         void buildFX();
  22.         void buildVertexLayouts();
  23.         virtual void Initialize(ContentManager *pContentManager){};
  24.    
  25.         virtual void Tick(const InputState & refInputState){};
  26.    
  27.         virtual void Draw(const RenderContext* pRenderContext){};
  28. private:
  29.     DWORD m_NumRows;
  30.     DWORD m_NumCols;
  31.  
  32.     D3DXMATRIX mWavesWorld;
  33.  
  34.     DWORD m_NumVertices;
  35.     DWORD m_NumFaces;
  36.  
  37.     // simulatie constanten die we kunnen voorberekenen
  38.     GraphCamera* m_pGraphCamera;
  39.     float m_K1;
  40.     float m_K2;
  41.     float m_K3;
  42.  
  43.     float m_TimeStep;
  44.     float m_SpatialStep;
  45.  
  46.    
  47.  
  48.     D3DXVECTOR3* m_PrevSolution;
  49.     D3DXVECTOR3* m_CurrSolution;
  50.     D3DXVECTOR3* m_Normals;
  51.  
  52.     ID3D10Buffer* m_VB;
  53.     ID3D10Buffer* m_IB;
  54.  
  55.     Level* m_pLevel;
  56.  
  57.     ID3D10Effect* m_FX;
  58.     ID3D10EffectTechnique* m_Tech;
  59.  
  60.     ID3D10EffectMatrixVariable* mfxWVPVar;
  61.     ID3D10EffectMatrixVariable* mfxWorldVar;
  62.     ID3D10EffectVariable* mfxEyePosVar;
  63.     ID3D10EffectVariable* mfxLightVar;
  64.     ID3D10EffectScalarVariable* mfxLightType;
  65.  
  66.     int mLightType; // 0 (parallel), 1 (point), 2 (spot)
  67.  
  68.     ID3D10InputLayout* m_VertexLayout;
  69.  
  70.     D3DXMATRIX mView;
  71.     D3DXMATRIX mProj;
  72.     D3DXMATRIX mWVP;
  73.  
  74.     Light mLights[1];
  75.  
  76. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement