模型与动画

模型与动画

智能巡逻兵

  • 提交要求:
  • 游戏设计要求:
    • 创建一个地图和若干巡逻兵(使用动画);
    • 每个巡逻兵走一个3~5个边的凸多边型,位置数据是相对地址。即每次确定下一个目标位置,用自己当前位置为原点计算;
    • 巡逻兵碰撞到障碍物,则会自动选下一个点为目标;
    • 巡逻兵在设定范围内感知到玩家,会自动追击玩家;
    • 失去玩家目标后,继续巡逻;
    • 计分:玩家每次甩掉一个巡逻兵计一分,与巡逻兵碰撞游戏结束;
  • 程序设计要求:
    • 必须使用订阅与发布模式传消息
      • subject:OnLostGoal
      • Publisher: ?
      • Subscriber: ?
    • 工厂模式生产巡逻兵
  • 友善提示1:生成 3~5个边的凸多边型
    • 随机生成矩形
    • 在矩形每个边上随机找点,可得到 3 - 4 的凸多边型
    • 5 ?
  • 友善提示2:参考以前博客,给出自己新玩法

游戏设计

游戏说明

游戏玩法

玩家可以通过键盘上的方向键或者 wsad 控制人物的移动,游戏场景是人物控制的第一视角,地图中会散落一些巡逻兵,碰到巡逻兵就会死亡,我们的目标是尽可能多的获取水晶

规则说明

游戏由玩家和若干个巡逻兵和水晶构成,每当玩家进入一个新的领域,该部分的巡逻兵就会监测到,然后跟踪玩家,玩家要尽可能地躲避跟踪来的巡逻兵,然后获取水晶,当获取5个水晶后游戏即为胜利;若被巡逻兵逮住就会游戏失败,可以重新开始。

游戏截图和视频

游戏的是第一人称视角,游戏的界面有左上角的时间,分数每躲开一个巡逻兵便加一以及收集到的宝石,每获取一个宝石,便加一;游戏胜利时会有退出游戏的按钮;游戏失败时,会有重新开始的按钮

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

游戏的运行视频:传送门

博客地址

传送门

游戏运行说明

Assets 文件夹下载到本地,然后直接通过unity打开该文件即可成功运行,或者新建个项目,用该 Assets 文件夹覆盖原有的,打开后即可正常运行

游戏 Assets 结构

项目的 Assets 结构如下所示:

在这里插入图片描述
  • AxeyWorks:该目录存储了本次项目的地图信息,该地图我是参考的学长的项目文件进行了一些修改,成为了本次游戏的地图场景

  • Fantasy Skybox FREE:该目录存储了本次实验的天空的颜色,我设置的天空是蓝色的,这也使得游戏界面看起来更加美观

  • Resources\Prefab:本目录结构是用于存放项目的预制资源,本游戏设计的资源如下:

    在这里插入图片描述
    • Camera :是本次实验的相机,用于查看场景信息,本次游戏设计的是第一视角,所以我将相机放到了 Player 上面实现了第一人称视角,并且在 Camera中也需要添加上代码组件实现场景的构建

      在这里插入图片描述 在这里插入图片描述
    • Ground:是本次游戏设计的地面,设计的方法是参照了往届制作的作品,包含了围栏和水晶等信息:

      在这里插入图片描述
    • Patrol :巡逻兵,模型是在网上的资源找到:

      在这里插入图片描述

      在项目中,需要为模型增加 RigidbodyBox Collider 的信息,使其实现碰撞,并且需要挂载代码 Player Control 实现对巡逻兵的控制:

      在这里插入图片描述
    • PatrolAnimator:动作控制器,实现了巡逻兵的动作的设置,以及状态转移

      在这里插入图片描述

      该人物主要有三种状态,普通的移进状态对应了图中的 Idle ,看到玩家后进入到 Run ,接触到玩家后实现攻击 Attack,之间的关系正如上图所示,所有的动作都是拖入了网上的资源

      在这里插入图片描述

      动作控制器实现后应当拖入到巡逻兵的组件中:

      在这里插入图片描述
    • Player:玩家即我们需要控制的模型,该模型来自于网上的资源</

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值