|
学生最近在做地形,用到了256的高度图,读取RAW文件并显示时发现地图的大小和高度图的信息不一致,好像比高度图少了很多,只读取了高度图中间的一部分,一下是读取RAW文件的函数,请各位高手看看是哪里错了,谢谢了:
void Terrain::ReadRawFile(const char *filename)
{
m_fHeightMap.resize(m_iSideVerNum * m_iSideVerNum);
//m_fWater.resize(m_iSideVerNum * m_iSideVerNum);
m_iMap.resize(m_iSideVerNum * m_iSideVerNum);
m_fDHMap.resize(m_iSideVerNum * m_iSideVerNum);
m_AabbMap.resize(m_iSideVerNum * m_iSideVerNum);
ifstream hFile;
hFile.open(filename, ios::binary);
for(int i=0; i<= m_iSideLength; i++)
{
for(int j=0; j<=m_iSideLength; j++)
{
int index = i*m_iSideLength+j;
m_fHeightMap[index] = hFile.get();
}
}
}
|
|