博客
关于我
Unity Crazyball复现
阅读量:369 次
发布时间:2019-03-04

本文共 1090 字,大约阅读时间需要 3 分钟。

实验4: Unity Asset Store游戏Crazyball复现

在 UE4 转向 Unity 的过程中,我逐渐被其灵活性和简洁性所吸引。这个实验主要记录了我学习 Crazyball 游戏代码结构以及 Unity 动画效果实现的过程。

一、实验要求

目的: 完全复刻 CrazyBall 游戏的内容及其功能,可添加内容但不能删减。

要求: 完全复刻指定游戏的内容及功能,确保核心玩法和用户体验保持一致。

拓展内容:

  • 球体具有生命值,多次碰撞后死亡
  • 碰撞时具有"弹性变形"特效
  • 二、软件核心代码

    在 UE4 转向 Unity 后,我参考了 Crazyball 的示例程序,尽量保持代码结构一致。并在此基础上添加了鼠标切换操作模式的功能。

  • 基础功能实现
    • GameController.cs: 用于控制游戏模式、关卡难度、敌方小球和障碍物的生成
    • PlayerManager.cs: 用于监测玩家与敌方小球、障碍物的碰撞,控制玩家分数和血量
    • PlayerController.cs: 用于控制玩家小球的移动和边界检测
    • EnemyBallController.cs: 用于控制敌方小球的移动和销毁
    • PauseManager.cs: 用于实现暂停功能和操作模式切换
    • MenuManager.cs: 用于控制主菜单界面和点击操作
    1. 附加功能实现
      • 球体生命值系统

        • 在代码中添加血量变量,并通过 UI 显示血量
        • 在碰撞时扣除血量,血量为0时触发游戏结束
      • 弹性动画特效

        • 使用 Animator 实现两段动画状态切换
        • 碰撞时切换到弹性形变状态,动画播放完毕后恢复正常状态
      • 操作模式切换

        • 在暂停界面添加 ChangeMode 按钮
        • 修改 PlayerController 中的操作模式变量
        • 在 PauseManager 中实现操作模式切换功能

      三、游戏运行效果

      目前已实现以下功能:

    2. 基础游戏流程
    3. 关卡难度控制
    4. 敌方小球和障碍物生成
    5. 球体碰撞检测
    6. 玩家血量系统
    7. 弹性动画特效
    8. 操作模式切换
    9. 四、实验心得

      从 UE4 转向 Unity 的过程中,我深刻体会到两大开发框架的不同。Unity 的语法简洁直观,项目迭代速度快,适合快速原型开发和优化。

      在开发过程中,我参考了 Crazyball 的代码结构,并结合自身需求进行了适当修改。通过实验,我掌握了 Unity 动画系统的使用方法,特别是在状态切换和特效实现方面积累了宝贵经验。

      尽管过程中遇到过不少技术难点,但通过查阅资料和不断调试,最终都能找到解决方案。这次实验让我对 Unity 的开发流程有了更深入的理解,也为后续项目积累了宝贵的开发经验。

    转载地址:http://wnyg.baihongyu.com/

    你可能感兴趣的文章
    Ploly:如何在Excel中嵌入完全交互的Ploly图形?
    查看>>
    plotloss记录
    查看>>
    Plotly (Python) 子图:填充构面和共享图例
    查看>>
    Plotly 中的行悬停文本
    查看>>
    Plotly 停用 x 轴排序
    查看>>
    Plotly 域变量解释(多图)
    查看>>
    Plotly 绘制表面 3D 未显示
    查看>>
    Plotly-Dash 存在未知问题并创建“加载依赖项时出错“;通过使用 Python-pandas.date_range
    查看>>
    Plotly-Dash:如何过滤具有多个数据框列的仪表板?
    查看>>
    Plotly:如何为 x 轴上的时间序列设置主要刻度线/网格线的值?
    查看>>
    Plotly:如何从 x 轴删除空日期?
    查看>>
    Plotly:如何从单条迹线制作堆积条形图?
    查看>>
    Plotly:如何以 Root 样式绘制直方图,仅显示直方图的轮廓?
    查看>>
    Plotly:如何使用 Plotly Express 组合散点图和线图?
    查看>>
    Plotly:如何使用 plotly.graph_objects 和 plotly.express 定义图形中的颜色?
    查看>>
    Plotly:如何使用 Python 对绘图对象条形图进行颜色编码?
    查看>>
    Plotly:如何使用 updatemenus 更新一个特定的跟踪?
    查看>>
    Plotly:如何使用长格式或宽格式的 pandas 数据框制作线图?
    查看>>
    Plotly:如何向烛台图添加交易量
    查看>>
    Plotly:如何在 plotly express 中找到趋势线的系数?
    查看>>