Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include "StdAfx.h"
- #include <vector>
- #include "float3.h"
- #include "LevelElement.h"
- #include "d3dutil.h"
- #include "vertex.h"
- #include "Light.h"
- #include "GraphCamera.h"
- class Waves: public LevelElement
- {
- public:
- Waves(Level* pLevel);
- virtual ~Waves();
- void init(DWORD m, DWORD n, float dx, float dt, float speed, float damping,D3DXVECTOR3 pos);
- void update (float dt);
- void disturb();
- void draw(GraphCamera *pGraphCamera);
- void buildFX();
- void buildVertexLayouts();
- virtual void Initialize(ContentManager *pContentManager){};
- virtual void Tick(const InputState & refInputState){};
- virtual void Draw(const RenderContext* pRenderContext){};
- private:
- DWORD m_NumRows;
- DWORD m_NumCols;
- D3DXMATRIX mWavesWorld;
- DWORD m_NumVertices;
- DWORD m_NumFaces;
- // simulatie constanten die we kunnen voorberekenen
- GraphCamera* m_pGraphCamera;
- float m_K1;
- float m_K2;
- float m_K3;
- float m_TimeStep;
- float m_SpatialStep;
- D3DXVECTOR3* m_PrevSolution;
- D3DXVECTOR3* m_CurrSolution;
- D3DXVECTOR3* m_Normals;
- ID3D10Buffer* m_VB;
- ID3D10Buffer* m_IB;
- Level* m_pLevel;
- ID3D10Effect* m_FX;
- ID3D10EffectTechnique* m_Tech;
- ID3D10EffectMatrixVariable* mfxWVPVar;
- ID3D10EffectMatrixVariable* mfxWorldVar;
- ID3D10EffectVariable* mfxEyePosVar;
- ID3D10EffectVariable* mfxLightVar;
- ID3D10EffectScalarVariable* mfxLightType;
- int mLightType; // 0 (parallel), 1 (point), 2 (spot)
- ID3D10InputLayout* m_VertexLayout;
- D3DXMATRIX mView;
- D3DXMATRIX mProj;
- D3DXMATRIX mWVP;
- Light mLights[1];
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement