作为一名程序员,我唯一感兴趣的是制作游戏,因为精灵碰撞是绝对必要的,我已经知道我的精灵周围需要一个矩形,但我该如何不让用户看到它?我是考虑在背景之前绘制它,但还有其他方法让你们知道吗?
答案 0 :(得分:0)
碰撞框不是绘制到屏幕的物理矩形。它们是通过一系列检查精灵边界的条件语句构造的。如果没有代码,很难给出一个例子,但是你可以在YouTube上的许多教程中找到这个过程的例子。
例如,从DesignsByZepher's Tutorials获取此代码:
public boolean hasCollided(int xa,int ya) {
int xMin = 0;
int xMax = 7;
int yMin = 3;
int yMax = 7;
for (int x = xMin; x < xMax; x++) {
if (isSolidTile(xa,ya,x,yMin)) {
return true;
}
}
for (int x = xMin; x < xMax; x++) {
if (isSolidTile(xa,ya,x,yMax)) {
return true;
}
}
for (int y = yMin; y < xMax; y++) {
if (isSolidTile(xa,ya,xMin,y)) {
return true;
}
}
for (int y = yMin; y < xMax; y++) {
if (isSolidTile(xa,ya,xMax,y)) {
return true;
}
}
return false;
}