Unity游戏编程-——迷宫巡逻兵

本文介绍了一个Unity游戏编程项目,涉及巡逻兵在迷宫中的行为设计。巡逻兵依据相对地址行走,遇到障碍物自动改变目标,感知到玩家则追击,玩家需躲避以得分。程序设计要求采用订阅发布模式、工厂模式,以及单例模式。文章讨论了游戏设计、架构设计、关键模块,如动画控制和寻路算法,同时也提到了在实现过程中遇到的碰撞检测问题。
摘要由CSDN通过智能技术生成

游戏设计要求:

  • 创建一个地图和若干巡逻兵(使用动画);
  • 每个巡逻兵走一个3~5个边的凸多边型,位置数据是相对地址。即每次确定下一个目标位置,用自己当前位置为原点计算;
  • 巡逻兵碰撞到障碍物,则会自动选下一个点为目标;
  • 巡逻兵在设定范围内感知到玩家,会自动追击玩家;
  • 失去玩家目标后,继续巡逻;
  • 计分:玩家每次甩掉一个巡逻兵计一分,与巡逻兵碰撞游戏结束;

程序设计要求:

  • 必须使用订阅与发布模式传消息
  • 工厂模式生产巡逻兵

基本思路分析:

模式基础
  • 订阅与发布模式:定义了一种一对多的依赖关系,让多个订阅者对象同时监听某一个主题对象。这个主题对象在自身状态变化时,会通知所有订阅者对象,使它们能够自动更新自己的状态。
  • 工厂模式:在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。明确地计划不同条件下创建不同实例。
  • 单例模式:单一的类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。
架构设计

使用正常的导演、场记、动作管理员、用户操作处理器、游戏对象工厂框架,添加游戏事件处理器(用于处理外设输入事件,提供玩家运动功能)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值