C++ 将图像加载到数组中

C++ 将图像加载到数组中,c++,playstation-portable,C++,Playstation Portable,如何将某些图像加载到数组集中,如 Map = ( ( 1, 1, 1 ), ( 2, 2, 2 ), ( 3, 3, 3 ) ) 我可以放 像这样把图像转换成变量 一个=oslLoadImageFile(“one.png”,OSL_IN_RAM,OSL_PF_5551) 那么我能做些什么,比如Map=((一,一,一)) 如果每个图像是32x32,它是否能够并排而不是前面的皮克斯 抱歉,我仍在学习并尝试复习我的hea中的一些基础知识。听起来你好像想为2D游戏制作一张平铺地图。在这种情况下,您需

如何将某些图像加载到数组集中,如

Map = ( ( 1, 1, 1 ), ( 2, 2, 2 ), ( 3, 3, 3 ) ) 
我可以放

像这样把图像转换成变量

一个=oslLoadImageFile(“one.png”,OSL_IN_RAM,OSL_PF_5551)

那么我能做些什么,比如Map=((一,一,一))

如果每个图像是32x32,它是否能够并排而不是前面的皮克斯


抱歉,我仍在学习并尝试复习我的hea中的一些基础知识。听起来你好像想为2D游戏制作一张平铺地图。在这种情况下,您需要一个包含所有瓷砖的单个精灵。然后,地图将包含特定分幅的索引

在绘制平铺时,您需要根据平铺索引复制部分精灵

如果您有一个分幅索引如下的精灵图像:

+---+---+---+---+
| 0 | 1 | 2 | 3 |
+---+---+---+---+
| 4 | 5 | 6 | 7 |
+---+---+---+---+
| 8 | 9 |
+---+---+
您可以使用类似的方法来计算每个磁贴索引要复制的矩形:

const int TILE_SIZE = 32;
const int TILES_PER_ROW = 10;

int xCoordinate = TILE_SIZE * (tileIndex % TILES_PER_ROW);
int yCoordinate = TILE_SIZE * (tileIndex / 10);

Draw(tileSet, xCoordinate, yCoordinate, TILE_SIZE, TILE_SIZE);

似乎是你用C++来处理PSP。根据它,你应该创建一个图像文件,其中应该包含一组图像,然后你就可以用它创建地图

//definition of the pointers towards our image
OSL_IMAGE *Zora_tileset;

//definition of the pointers towards our map
OSL_MAP *zora;


 Zora_tileset = oslLoadImageFile("tileset.png", OSL_IN_RAM, OSL_PF_5551);

 //check
 if (!Zora_tileset)
  oslDebug("Check if all the files are copied in the game folder.");

 //configuration of the map
 zora = oslCreateMap(
  Zora_tileset,     //Tileset
  Zora_map,     //Map
  16,16,      //Size of tiles
  64,65,      //Size of Map
  OSL_MF_U16);     //Format of Map

看起来这个库的使用非常有限,最好就它提问。

你的问题不是很清楚你在说什么语言,你的应用程序是什么?您可以将图像存储在字节数组中,但这并不能提供有关像素的详细信息。但是,如果您对查看图像中的单个像素、裁剪或其他感兴趣,则必须查看特定于您所使用语言的库。