游戏开发论坛

 找回密码
 立即注册
搜索
查看: 9638|回复: 4

[教程] 动作游戏战斗系统简析、一(攻击、防御盒子)

[复制链接]

3

主题

5

帖子

25

积分

注册会员

Rank: 2

积分
25
发表于 2014-4-25 18:45:14 | 显示全部楼层 |阅读模式
    最近比较闲,抽空写一些关于动作游戏的简析文章,欢迎大家讨论。
   动作游戏战斗系统的最大特点就是加入了攻、防盒子,以攻、防盒子的碰撞来实现逼真的打击效果。
    举个例子:
    拳皇里面八神和库拉面对面站立,这时候八神用轻拳打了库拉一下,在八神挥手正好击中库拉的瞬间,库拉受击,播放了受击动作、打击特效、打击音效、受击音效(库拉的叫声)。
    这样一个简单的战斗过程,要如何实现的呢?

    首先,假设库拉的站立动作有10帧,那么就需要在10帧动画里,都为她配置上受击盒子,受击盒子的范围刚好囊括她的身形即可。(受击盒子可以每帧都根据动作的不同而有变化,并且每帧都可以配置多个受击盒子拼接。)
    然后,假设八神的轻拳有15帧,而出拳的动画是5~10帧,那么就需要在5~10帧配置攻击盒子,刚好囊括住八神挥出的手臂即可,配置方式同受击盒子,区别仅在于盒子的类型不同。
    攻击效果配置:我们需要为每一帧的攻击盒子配置一个ID,用以索引攻击效果,例如5~10帧配置的攻击ID都配置为1,然后在文档中配置如下内容:
    攻击1:攻击伤害、击退值、震动、打击特效、打击音效、受击动作、增加的怒气值等等。
    最后,配置好库拉的受击动作、受击音效,这样就完成了相关的主要配置。

    不过这里有个问题,那就是如果仅仅是这样的话,理论上八神轻拳的5~10帧很有可能会击中库拉6次(每帧都会击中1次)。因此还需要一个攻击分段:分段的方式有很多种,比如说为每帧的攻击盒子设定一个InitID,只要是该动作里相同InitID的攻击盒子,就只算做1次攻击。

    通过以上简析,相信各位即使对动作游戏并不了解,也能想象出一些复杂技能是如何实现的了。

    另:如果是3D模型动画的话,配置攻击盒子的方式可以和以上一样,也可以更简化一些:将受击、攻击盒子绑定到角色的骨骼上。(具体的配置方式可以有很多种,可以加群42558674讨论,新建的动作游戏制作群,欢迎加入)


    下一讲:除了攻击、受击盒子之外,动作游戏里常见的其它碰撞盒子:阻挡盒子、防御盒子、抱摔盒子。


    QQ群:42558674      新群欢迎加入讨论。


98

主题

784

帖子

4493

积分

版主

Rank: 7Rank: 7Rank: 7

积分
4493
发表于 2014-4-26 08:27:15 | 显示全部楼层
这个的深度已经低于这里的基础水平太多了,关于动作游戏开发技术交流这块,这里已经讨论的很深了,你可以尝试翻一些老帖(还只是普通交流,没有自称给别人上课)先看完再发掘是否有机会形成“讲座”。

102

主题

2443

帖子

7639

积分

论坛元老

Rank: 8Rank: 8

积分
7639
发表于 2014-4-26 09:38:31 来自手机 | 显示全部楼层
刚出拳的那几帧是没有攻击判定的,现实也一样。

3

主题

5

帖子

25

积分

注册会员

Rank: 2

积分
25
 楼主| 发表于 2014-4-26 10:01:54 | 显示全部楼层
一下子就讲太深的东西,未免太急躁了。

凡事由简到繁,才能让不熟悉的人也能看得懂啊。

之后我会抽空讲一些次时代动作游戏的制作了啦

0

主题

13

帖子

90

积分

注册会员

Rank: 2

积分
90
发表于 2014-9-15 10:12:12 | 显示全部楼层
感谢大神分享自己的经验
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-4-25 22:40

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表