www.pudn.com > DZY_Game.rar > Game_Terrain.h


#pragma once 
#include "stdafx.h" 
#include "Game_DisplayObject.h" 
 
class Game_Terrain:public Game_DisplayObject{ 
	public: 
		D3DXMATRIX m_matWorld; 
		LPD3DXMESH m_pMesh; 
 
		Game_Terrain(D3DXVECTOR3 pos, 
					LPCTSTR strTerrain,float cellWidth,float height,float nTile); 
		~Game_Terrain(); 
		virtual void Render(); 
		virtual void FrameMove(); 
		virtual	void InitObject(LPCTSTR strName); 
		 
		static const DWORD TYPEID = 0x00101000; 
 
		HRESULT GetTerrainVertex(D3DXVECTOR3 *cross,DWORD index,float u,float v); 
		FLOAT GetHeight(float x,float z); 
	protected: 
		struct TVertexBuffer{ 
			float	x,y,z;	 
			float	nx,ny,nz;	//坐标信息 
			float	tu,tv; 
		}; 
		const static DWORD D3DFVF_TERRAIN = D3DFVF_XYZ|D3DFVF_NORMAL|D3DFVF_TEX1;	//坐标信息 
 
		LPDIRECT3DTEXTURE9		m_pTexture;				//材质 
 
		DWORD m_dwNumOfVertices;	 
		DWORD m_dwNumOfIndices; 
		DWORD m_dwNumOfPolygons;  
		 
		long	m_nCol,m_nRow; 
		float	m_nTile; 
		float	m_maxHeight; 
		float	m_CellWidth; 
		LPCTSTR m_cStrTerrain; 
		BYTE	*m_pHeightData; 
 
		D3DVECTOR m_v3; 
};