百科问答小站 logo
百科问答小站 font logo



unity怎么去实现act战斗? 第1页

  

user avatar   gqy-22 网友的相关建议: 
      



这是我下班时间做的,有时间就做,没时间就放着,感觉我这个小游戏已经具备一个act游戏的一些基本元素,在此本渣我就大言不惭的扯一扯做一个简单的act游戏需要具备哪些知识。


1.基础知识。向量,欧拉角(四元数),贝塞尔曲线,unity的物理引擎,动画系统,2d的spine,龙骨等等吧,总之做战斗系统就是各种坐标,动画,旋转,这些知识是必备的。

2.ai系统。状态机,行为树,goap导向型决策方案等等。

3.算法。除了了解一些常用的基本算法(主要指排序)其他的感觉研究一下AStar也就够用了。

4.抽象能力。战斗系统归根结底还是GamePlay的一部分,必须具有一定的架构能力,否则这玩意越写你越想删库跑路。没事可以研究下框架,设计模式之类的提高抽象思维。设计模式就看看那几本经典的书,框架推荐看看gameframework。



接着我来再扯扯具体的实现过程。(这个范围太广,只能把我掌握的东西说说)

做一个act游戏,其实百分之99的时间就是在实现技能。

如果把技能抽象,那就是选择目标,产生结果。

因此我们需要选择器,需要释放器,需要效果器。

以我这个视频为例,主角的连击是不打到怪就保持第一击,打到怪才会进行接下来的连击,而跳跃攻击是从上升到下落,只要有怪接触就要使其受到伤害,可以说这两种释放方式都不同于一般的技能。

因此我把释放器分为,普通攻击释放器和跳跃攻击释放器和一般技能释放器。

每个技能对应一个释放器,每个释放器会管理若干个效果器,而上面也说到技能的本质是选择目标产生效果,因此每个效果器要有一个选择器来为其提供对应的目标。

技能又分为主动和被动

主动技能的效果一般有几种触发方式:

1.由动画关键帧触发,就是把上面说的那些选择目标产生结果的逻辑绑定到这个动画的关键帧来执行 ,每一个关键帧对应一个效果器。

2.一定时间内一直触发,就是update一定时间

3.产生另一个或多个对象,并在它们的动画关键帧或者一定时间内触发,也是基于前两个的,只不过把效果器的持有者换给产生的对象。(子弹系统)

被动技能就是一堆buff,把效果付给某个目标。


最后,有时间也可以多看看知乎老哥分享的技能编辑器,也是很受启发的。






  

相关话题

  个人独立开发游戏(已决心入坑,求教育)都有哪些需要提前规避的? 
  看如何评价单机游戏《侠之道》(原名《侠隐阁》)第二年的游戏内容? 
  中文作为全球使用人数最多的语言,中文配音的游戏却很少有,为什么? 
  近年来,游戏行业有哪些提高制作效率的新技术? 
  中国游戏行业为何流行「抄」? 
  如何用unity做出可以装mod的游戏? 
  为什么多数日式Rpg游戏中酒馆被作为打听情报和接任务的地方? 
  游戏开发在向去编程化发展吗? 
  同为2015年发布的游戏,为什么《仙剑奇侠传6》跟《血源诅咒》看起来差了10年? 
  今年25了,之前一直做cocos棋牌,我该不该降薪去转ue4? 

前一个讨论
有哪些 Galgame 本身是神作级别,而且其改编动画也很优秀?
下一个讨论
如何评价漫画《别对映像研出手!》?





© 2024-11-21 - tinynew.org. All Rights Reserved.
© 2024-11-21 - tinynew.org. 保留所有权利