我是SFML的新手,我一直在玩我在网上找到的基本磁贴引擎。在平铺引擎中是一台相机并没有那么好用,所以我把它拿出去的意图是用我自己的替换它。在此之前,引擎将仅绘制屏幕上的瓷砖,并且由于某种原因无法将额外的瓷砖添加到需要绘制的瓷砖列表中。目前,我正在尝试绘制每个可能的图块,但在第一行之后接收到向量下标错误 - 。
以下是导致错误的代码:
int levelHeight = currentLevel->getHeight();
int levelWidth = currentLevel->getWidth();
for(int tileY = 1; tileY < levelHeight; tileY++)
{
for(int tileX = 1; tileY < levelWidth; tileX++)
{
tile = currentLevel->getTile(tileX, tileY);
std::cout << "Adding Tile X: " << tileX << ", Y: " << tileY << " to buffer." << std::endl;
if(tile)
tile->draw((tileX * tileSize), (tileY * tileSize), display);
}
}
如果我提供其他任何有用的信息,请随时提出
答案 0 :(得分:2)
我认为内部for
循环终止条件不正确:
for(int tileX = 1; tileY < levelWidth; tileX++)
应该是:
for(int tileX = 1; tileX < levelWidth; tileX++)
//^