好的,所以我以前从未创建过游戏,我正在尝试制作基于 2d 瓷砖的游戏。
所以我真的很困惑应该很简单的东西,坐标。
我有瓷砖坐标,比如
{0,0,0,0,0,1}
{0,0,1,0,0,1}
{0,0,0,0,0,1}
{0,0,1,1,1,1}
{0,0,0,0,0,1}
假设这是我的世界,我正在尝试渲染它,我无法渲染它,每个图块都需要一个宽度,这是我感到困惑的地方,所以你可以这样做,我对编码并不陌生
twidth = 100, theight = 100;
for(y = each row) {
for(x = each tile in each row) {
draw rect (
X1 = x*twidth,
Y1 = y*theight,
X2 = x*twidth+twidth,
X2 = y*theight+theight
)
}
}
我对此可能是错的,但是:现在实际上所有其他东西都需要乘以 twidth/height,如果你想要不同大小的瓷砖,这将更加困难,至少它让我感到困惑,其他游戏如何处理这样的事情?我不确定我是否很好地解释了我的问题,任何帮助将不胜感激
我正在使用opengl [legacy],我认为解决方案可能是一个以不同方式设置屏幕空间的函数,因此渲染glVertex2d(0,1)实际上是100px,这会产生碰撞,等等,更容易