在游戏中会存在许多事物。每个事物都会有自己逻辑。因此在进行逻辑更肠时。需要对每个事物进行运体。这就会带来一个问题:是整体的更新,还是单独更新?
    我们通过一个典型的例子来说明。《吃豆人》(队C一MAN》这款游戏是日本NAMCO公司的经典游戏如图,9-1所示。

                   吃豆人
    这欲游戏当中,有一个玩家擞作的主角和四个由人工智能控侧的鬼怪,总共五个角色。游戏当中需要检侧的物理碰撞有两种主角和鬼怪之间的碰撞,群体与迷宫墙璧之间的盛掩。如果你作为这个游戏的开发者,在逻辑模块中会怎么处理这两种盛撞呢?这就是个体与群体的问皿?从类型上来看,主角和鬼怪的碰掩应该单独处理,因为这是个体的碰掩。群体和迷宫坡壁的碰撞。应该整体处理。因为是需要群体检侧的。实际情况却正好相反。在游戏逻辑当中。处理了玩家输入和人工智能之后。首先,我们要让每一个角色去检侧自己是否碰到了墉壁。其次,再对主角与鬼怪们进行碰撞检侧。仔细思考一下。你会发现后面这种碰撞检侧的方式,更为商效和简洁。这枕是因为开发者对个体和整体的选择不同。前一种方式,将J.璧看作了个体与整体角色进行检侧,将鬼怪看作了群体与主角进行检侧。后一种则将整体角色看作个体与坡健进行检洲,将主角看作个体与见怪们进行检洲。从代码结构的角度来分析这两种情况,你就会更加清楚了。假设主角和鬼怪都是继承自角色类的对象,那么他们与绷壁的检侧方法只需写在角色类中就可以了,而不需要创建J.壁这个“奇怪”的类来进行检侧。主角与鬼怪们的检侧也只需写在主角类中,而不用写在每一个鬼怪类当中。
    将要成为开发者的你,需要一些实际经脸才能区分个体和群体的关系。在开发过程当中。
    虽然每种方式都可以实现其效果,但要尽盆选择合理高效的方式。最好的方式,就是用现实生活中的例子来思考。扭设自己就是游戏中的角色,会怎么样处理遇到的情况?这样很快你就会掌握这个技巧。

博雅棋牌博雅棋牌博雅棋牌博雅棋牌双赢彩票手机版

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注