我正在构建一个2d平台游戏,可能有一百个左右旋转的精灵(角色,火箭,子弹等),我想让它与墙面板碰撞。 目前正在使用Allegro 5,它不支持1位位图,因此可以自然地使用它。
我尝试创建自己的位图实现,做一些旋转(比如缓存旋转的精灵),或者使用https://www.allegro.cc/manual/5/allegro_pixel_format和Allegro的get_pixel()中的一个来更好吗?
对于碰撞测试本身,我是否应该使用某种方式将字符掩码插入到墙面遮光罩的alpha通道中以测试单个值,或者它是否更好
if (wallmask[x][y] && character_mask[x+o_x][y+o_y]) { collide(); }
对于所有相关的x和y?
谢谢。