首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

SDL,opengl制作地形的有关问题

2012-05-05 
SDL,opengl制作地形的问题大家好。我在用2d的灰度图制作3D地形图。遇到了不少问题。步骤如下:1.读取图像:C/C+

SDL,opengl制作地形的问题
大家好。
我在用2d的灰度图制作3D地形图。
遇到了不少问题。
步骤如下:
1.读取图像:

C/C++ code
SDL_surface *terrainHeightMap=IMG_Load("heightMap_sand.png");

2.用这个图像创建一个高度图(height map array)float数组
3.……
问题做到第二步就卡住了。
怎么才能把这个图像的不同的灰度值赋给我的高度图数组?
假设我的灰度图是一个256 * 256的png图像。那么这256×256的每一个点都有一个灰度值,然后赋给我的array,问题就在于我怎么把这个灰度值从我的terrainHeightMap中调出来?还是我的理论方法就不对?
谢谢大伙!劳动节快乐!


[解决办法]
load_image 函数如下:
SDL_Surface *load_image( std::string filename )
{
 
SDL_Surface* loadedImage = NULL;

 
SDL_Surface* optimizedImage = NULL;

 
loadedImage = IMG_Load( filename.c_str() );

if(!loadedImage) {
printf("IMG_Load: %s\n", IMG_GetError());
 
}

 
if( loadedImage != NULL )
{

optimizedImage = SDL_DisplayFormat( loadedImage );


SDL_FreeSurface( loadedImage );
}


return optimizedImage;
}

热点排行