#pragma once
#include <Ogre.h>

using namespace Ogre;

class CTerrainScene
{
public:
	CTerrainScene(void);
	~CTerrainScene(void);

public:
	void SetSceneManager( SceneManager* pManager );

	void LoadScene( const char* strFileName, SceneNode* pRootNode );

	void LoadTerrain( const char* strFileName, SceneNode* pRootNode );

	void LoadGridInfo( const char* strFileName, void* pGridInfo, unsigned int* pWidth, unsigned int* pHeight );

	void LoadModelObject( const char* strFileName, SceneNode* pRootNode );

	void Update( const FrameEvent& evt );

	void ClearScene();

private:
	void TraverseBonesAndBuildSceneNodes( Node* pNode, SceneNode* pSceneNode, String suffix, bool bRoot = true );

private:
	SceneManager* m_pSceneManager;
	std::list<AnimationState*> m_AnimationStates;

	size_t	m_iTerrainWidth;
	size_t	m_iTerrainHeight;
	float*	m_pHeightMapData;
	float	m_fTerrainScale[3];
};

相关文章:

  • 2022-01-13
  • 2021-08-14
  • 2022-12-23
  • 2021-11-16
  • 2021-11-28
  • 2022-02-04
  • 2021-12-19
  • 2021-10-02
猜你喜欢
  • 2021-07-03
  • 2022-02-10
  • 2022-01-24
  • 2022-01-15
  • 2022-01-06
  • 2022-01-23
相关资源
相似解决方案