HeightmapScene.h
上传用户:hkb425
上传日期:2007-06-16
资源大小:34191k
文件大小:2k
源码类别:

游戏引擎

开发平台:

Visual C++

  1. // HeightmapScene.h: interface for the CHeightmapScene class.
  2. //作者:吴雪平  2002-6-17日修改
  3. //管理整个场景
  4. //////////////////////////////////////////////////////////////////////
  5. #if !defined(AFX_HEIGHTMAPSCENE_H__B43693C1_4008_11D6_812C_5254AB37CDC9__INCLUDED_)
  6. #define AFX_HEIGHTMAPSCENE_H__B43693C1_4008_11D6_812C_5254AB37CDC9__INCLUDED_
  7. #if _MSC_VER > 1000
  8. #pragma once
  9. #endif // _MSC_VER > 1000
  10. #include "sprite.h"
  11. #include "3de.h"
  12. #include "Heightmap.h"
  13. #include "Terrain.h"
  14. #include "SkyBox.h"
  15. #include "text.h"
  16. #include "spritemanager.h"
  17. #include "lensflare.h"
  18. #include "house.h"
  19. class CHeightmapScene  
  20. {
  21. public:
  22. CHeightmapScene();
  23. virtual ~CHeightmapScene();
  24. //初始化场景,几乎每个类都有一个Init-开头的初始化函数
  25. bool    InitHeightmapScene(INPUT *pInput);
  26.     
  27. void    RenderHeightmapScene();
  28. private:
  29. INPUT         *m_pInput;       //保存键盘按键状态
  30. CTerrain       m_cTerrain;     //负责画地形三角形
  31. CSkyBox        m_cSkyBox;      //负责画天空盒
  32. CLensFlare     m_cLensFlare;   //负责画太阳光晕
  33. CSpriteManager m_cSprites;     //负责画动画模型(精灵、人物)
  34.     CHouse         m_cHouse;       //负责画建筑物(MS3D模型)
  35.     CText          m_cText;        //负责显示文字信息
  36. C3dE           m_3dExplorer;   //负责接受输入与视图变换
  37. //CHeightmap中有很多其他类都需要用到的静态数据成员
  38. CHeightmap     m_cHmap;
  39.  
  40.     //这两个成员用于调节画面亮度
  41.     float          m_gamma;      //用Blend模拟硬件Gamma调节
  42. float          m_brightness; //调节画面亮度
  43. };
  44. #endif // !defined(AFX_HEIGHTMAPSCENE_H__B43693C1_4008_11D6_812C_5254AB37CDC9__INCLUDED_)