今天给大家分享一个游戏开发中的下落处理
有个游戏开发经验的小伙伴肯定会遇到这样的问题,看下面的截图:
蓝色的方块代表没有被消除的方块,白色的方块代表被消除的方块。方块被消除后,没有被消除的方块需要左移或者下移,去填充整个网格。左移或者下移就是本篇文章需要解决的问题。
是不是有些抽象,再看一下具体一点的例子:】
上面两款是我开发的微信小游戏:精致消星星和回忆俄罗斯方块掌机。都是用到了本次分享的技巧。
那么这里的下落或者左移是怎么实现的呢?有的同学可能说,这不简单,直接移动不就好了,你想简单了。上面我给你的是比较特殊的,如果图形是这样你怎么移动。
蛮干肯定不行,得有方式方法的。直接告诉你答案,就是编号。下面我来具体讲讲如何编号,实现左移或者下落的。我们就拿第二幅图为例讲讲。
怎么去编号呢?如果我们想让所有的方块左移,我们就需要给每一行从左到右去编号,从0开始,遇到空白就跳过。下图就是我已经编好编号的截图。
最下方的红色数字是网格的列号。有了这些编号后,我们有没有发现规律。列号和编号之间有着千丝万缕的关系,所有编号为0的方块,移动后的位置就应该在列号为0的那一列上。编号为1的方块就应该在列号为1的那一列上,依次类推。这样我们就很容易知道,每一个方块移动后的位置应该在什么位置。是不是豁然开朗了。移动后的截图如下:
这样就实现了左移的功能。下落处理一样,就留给大家自己去画一画,加深一下理解。这就是今天的分享内容,希望对大家有所帮助。
想学习更多关于游戏开发的知识可以关注我公众好:会做游戏的小蜗牛