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;
};