我是 cocos2d 的新手,我在 java 的 eclipse 中使用 cocos2d lib 来制作游戏。我想做一个像素碰撞。我的游戏是一个 2d 游戏,一个在迷宫中运行的球,我想检测两者之间的碰撞迷宫墙和球,我不能在 CCSprite 中使用 getpixel。那么我该怎么做呢?CCSprite.getpixel 不存在。我只能检查两个精灵之间的边界框碰撞..但不知道如何逐点比较像素..
public boolean isCollisionDetected(CCSprite maze,CCSprite ball)
{
CGRect bounds1 = maze.getBoundingBox();
CGRect bounds2 = ball.getBoundingBox();
if( CGRect.intersects(bounds1, bounds2) ){
/* i want to do pixel detection in here,actually i want to do something like this
for (int i = collisionBounds.left; i < collisionBounds.right; i++) {
for (int j = collisionBounds.top; j < collisionBounds.bottom; j++) {
int sprite1Pixel = getBitmapPixel(sprite1, i, j);
int sprite2Pixel = getBitmapPixel(sprite2, i, j);
if( isFilled(sprite1Pixel) && isFilled(sprite2Pixel)) {
return true;
}*/
return true;
}
return false;
}
但是 Cocos2d, sprite 不支持这种方式。