游戏开发中的人工智能——移动模式

转载至  阅读笔记-游戏开发中的人工智能-第3章-移动模式

1. 标准算法
    移动模式,实际上就是控制角色移动的方式。比如:可以建立圆形、方形、蛇形、曲线以及其他类型的模式。
    标准移动模式算法使用控制指令,指示计算机控制的角色,在每一轮游戏循环中如何移动。
    下以一个蛇形的移动模式为例,进行说明:
    下面就是一组控制指令 :
                     (turn_right, turn_left, step_forward, step_backward)
                     (0, 0, 2, 0) 
                     (0, 0, 2, 0)
                     (10, 0, 0, 0)
                     (10, 0, 0, 0)
                     (0, 0, 2, 0)
                     (0, 0, 2, 0)
                     (0, 10, 0, 0)    
    有了上面这些控制指令,只有重复依次调用这些指令,就能让角色进行蛇形移动了。
    准备多个模式,选择使用可以让角色更加智能。

2. 砖块环境中的移动模式

    对于砖块环境,可以指定一系列要移动到的点的相对位置(相对于起始点)。
    比如一个方形的移动模式可以表示为:
                     (10,  3, 18,  3)
                     (18,  3, 18,  12)
                     (18, 12, 10, 12)
                     (10, 12, 10, 3)
    对于这四个点,就能得到要移动的四条线段,然后利用第二章中的视线移动方法,算出这四条线段的路径,通过这些路径就能很好的控制角色的移动了。书中给出了具体使用Bresenham进行计算移动模式路径的实际代码。
    有的时候希望角色的移动更加难以预测,以方形移动模式为例,要么顺时针移动,要么逆时针移动,这太容易被玩家发现了,可以建立一个数组,将所有可以移动到的位置置为1,其他置为0,这样,每走到一个位置时,随即选择可以走的位置,这样就可能顺时针走几下就回头了。还可以更加精细控制,比如:限制只能在拐角处,作出随即选择,或者玩家角色和控制角色在一条直线时(认为此时角色可能看到玩家角色了),向玩家角色的方向移动等等。

3. 仿真物理环境中的移动模式

    这部分主要是和仿真物理引擎打交道,比如:前进和移动的速度和最大速度,转动的角度和最大角度,等等,移动模式的设置,需要考虑到仿真环境的情况。通过分析物理引擎的情况,给出若干条指令来完成一个模式,感觉和第一节中的情况很类似。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值