
Unity动作实战开发
文章平均质量分 56
韩天衣
热爱游戏开发,希望能有所成就
展开
-
【Unity】动作游戏开发实战详细分析-26-组合攻击
在游戏中,有些攻击方法必须要等待条件触发后才可以执行,并且根据情况的不同会发挥不同的效果,这是一种有前置条件要求的组合攻击方式。原创 2022-07-25 16:55:29 · 998 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-25-角色残影效果的实现
Unity中的蒙皮网格组件提供了一个接口BakeMesh,允许我们拿到当前动画帧的网格数据,借此可对烘焙网格使用半透明的边缘泛光Shader,以达到残影效果。原创 2022-07-24 16:23:07 · 978 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-24-流血喷溅程序
利用对象池的代码设计思路,通过随机性来实现随机的溅落血迹效果。原创 2022-07-24 15:53:53 · 1105 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-17-滑轨相机
使用插件可以帮助构建贝塞尔曲线,我们通过它来构建相机滑轨路径,我们这里主要使用UnityExtensions开源工具包。原创 2022-07-20 17:36:45 · 650 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-16-敌人AI设计
本文来实现简单的敌人AI,使用协程来开发AI。如果想要使用行为树插件可自行学习使用。原创 2022-07-19 18:04:54 · 1853 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-15-可扩展的战斗系统
通常情况下,伤害、属性、判定都会被封装到类中,在触发动画事件后将战斗信息发送给受击者。我们可以结合Unity碰撞/触发,在发生事件后获取对应信息,而非主动将战斗信息发送给目标,这有利于后期受击判定的调试。...原创 2022-07-18 20:13:31 · 2902 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-14-动画事件
我们可以在动画组件中为动画添加事件,事件函数名会调用在该游戏对象下所有脚本中的同名同参数的无返回值函数,本篇主要介绍通过资源配置来对动画的事件资源进行生成控制。原创 2022-07-17 16:57:11 · 492 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-11-关卡的序列化
对关卡内容进行序列化是一项十分有必要的操作。关卡的检查点重置,存档等功能都依赖于序列化接口。在游戏中可通过外部模块主动调用关卡模块序列化、反序列化接口,以完成关卡部分存档、读档功能的实现。关卡序列化的主要问题是如何控制场景内不同组件的序列化顺序,因为有些游戏对象会在编辑器内被不断的删改,而另一些游戏对象则被动态创建。...原创 2022-07-16 16:08:49 · 461 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-10-对象池编写
对象池,常用于缓存一定数量实例对象,并进行简单的隐藏操作,当需要它使用时显示即可。它可以避免频繁的创建与销毁对象。相信大多数开发者对其都不会陌生。由于它涉及对象的创建逻辑,因此会与其他模块产生相当程度的耦合。单个池可以管理对象的取出及取回状态不同类型的对象需要不同类型的池,但它们的共有逻辑是可以提炼的,我们可以给池赋予ID号,并在池管理器中注册与获取他们。进入关卡后,首先会进行脚本配置,用以配置当前关卡中对不同池的缓存数量及不同策略,这样的脚本配置在每个关卡中都会出现。存放在池中的对象在放回和取出时,需要得原创 2022-07-14 18:16:57 · 337 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-09-SpawnPoint
在关卡编辑时,我们通常不会将敌人或者NPC直接放在场景中,为了能够循环使用角色对象,为了能够便于管理,我们可以使用SpawnPoint作为创建点来动态的创建他们。对于创建对象,我们需要考虑几个比较重要的问题第一个问题可以使用一个枚举字段来进行选择,第二个时序问题也一样。不过主角的SpawnPoint应当优先创建;第三个场景依赖问题可以给SpawnPoint提供一个获取对象的接口,这样场景中的脚本就能通过它来获取已创建完成的对象。根据上述几点,开始编写脚本基本字段首先就是最基本的层级,实例化源,时序然后就是对原创 2022-07-14 16:06:32 · 967 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-08-场景互动
在游戏场景中操控机关,物件,进行攀爬,使用钩索等等行为,都是与环境的互动行为,这些都被归纳为场景交互的范畴。我们需要对这些重复性和操控性较强的部分进行系统设计角色冻结逻辑比较简单,禁用动画状态机,并设置刚体属性,停用动画状态机的瞬间角色会瞬间停止在动作的瞬间可以起到冻结的作用。其次,可以根据需要进行角色冻结外观的修改场景互动组件场景可交互组件接口ID属性初始化函数获得控制权柄强制退出组件该接口的作用是,所有可交互的场景组件都需要实现它我们列举一个例子来更好的理解这个接口,现在我们有一个可交互组件:La原创 2022-07-13 19:05:38 · 940 阅读 · 0 评论 -
【Unity】动作游戏开发实战详细分析-07-连续技与组合技功能设计
在一些动作游戏中,存在着连续技这一功能,具体来说就是连续按下规定的按键会触发能力的功能,或者是长按触发等等。这是命令结构体,它代表单个连续技命令我们来逐一分析他的代码,首先,我们要明确,我们对于命令的监听基于协程,因此该命令类需要有最基本的两个方法,那就是重置和更新。重置方法很简单,就是重置长按倒计时与限制倒计时我们通过委托从外部输入检测条件以及时间帧长我们来看重点的更新函数首先他会输出一个整形变量state,用于表示当前的命令状况每次更新时,默认初始值为等待值。如果监听条件成立,则进行时间判定,并减少长原创 2022-07-13 10:20:50 · 898 阅读 · 1 评论 -
【Unity】动作游戏开发实战详细分析-06-技能系统设计
不同的技能可以设计为技能模版,当角色释放技能时,会通过模版ID将它进行实例化,这个实例技能类可以是一个挂载的MonoBehaviour组件或者通过上下文传入的独立对象其次,考虑技能是否共用的问题,如果一个技能,玩家和敌人都可以使用,是否需要设计更为严谨的上下文接口?在动作游戏中,真正需要共用技能的情况相对比价多见。我们首先设计技能基本接口它包含了:其中序列化恢复需要传入技能上下文,它是一个结构体,定义如下,它存储了该技能的技能释放者以及使用按键然后,我们继续设计技能接口新增接口包含:最后,定义我们的抽原创 2022-07-12 15:59:32 · 1686 阅读 · 0 评论