游戏开发论坛

 找回密码
 立即注册
搜索
查看: 10014|回复: 25

[讨论] 聊聊休闲射击网游的弹道问题

[复制链接]

83

主题

281

帖子

349

积分

中级会员

Rank: 3Rank: 3

积分
349
发表于 2007-8-1 12:25:00 | 显示全部楼层 |阅读模式
这几天在玩《炮炮火枪手》的时候,很多同事提出这样的疑问:为什么游戏中的射击要采用类似《血腥大地》那种点鼠标指哪打哪的方式,而不用类似《魂斗罗》《合金弹头》那种控制面朝方向来决定攻击方向的方式?

其实就两种射击方式而言,玩家自然更容易接受《魂斗罗》《合金弹头》的那种方式,一方面是操作习惯,更重要是的这样玩起来更轻松更容易上手。

可是我们却很惊奇地发现,就目前已经上市的几款休闲射击网游而言,几乎所有讲究速度和紧张刺激的都采用了这种“点鼠标指哪打哪”的方式,例如《炮炮火枪手》《特勤队》等,这又是为什么呢?

其实答案很简单,我们随便拿款采用“控制面朝方向来决定攻击方向”作为射击方式的网游,比如《GO!GO!GO!》。在这款3D的休闲射击网游中,我们发现枪械发射出来的子弹飞行速度惊人的慢,玩家能清楚地看到子弹的弹道轨迹——虽然这在《魂斗罗》《合金弹头》等经典单机射击游戏中就已经很常见,但是我们必须承认网游中的速度更慢,而且每次射击动作的硬直时间都特别地长,大大影响了游戏中的流畅度和刺激感,感觉子弹就象扔出去的而不是射出去的。

为什么会有这样的问题呢?做游戏的都知道,采用“控制面朝方向来决定攻击方向”作为射击方式,无疑子弹在射出去以后在弹道轨迹过程中要与角色模型做即时的碰撞检测,而不是子弹射出就计算轨迹中是否有目标会被击中,这样才能确保如果敌人在子弹射出以后才突然出现在弹道轨迹中也会被击中,或者原来在弹道轨迹中的敌人能及时躲避子弹。

如果大家对这个概念比较模糊,可以回忆一下那段牛人“除了BOSS不开一枪通关《魂斗罗》”的经典视频,那位牛人所操作的角色之所以能极其灵敏地躲避所有子弹,靠的就是计算弹道轨迹的提前量,知道什么时候要采用什么动作来躲避子弹。

而大家都知道,这种子弹在飞行过程中要与角色模型做即时碰撞检测的计算量是相当大的,尤其是对网络游戏而言,所有碰撞检测都要服务器端做计算的话,子弹一多速度一快服务器肯定会挂掉。可是如果减少子弹的数量,放慢子弹的飞行速度,整个战斗过程就会象是在播放慢动作一样,毫无游戏乐趣可言。

所以“聪明”的韩国人才采取了这种取巧的实现手法,用“点鼠标指哪打哪”的方式,当鼠标点中目标后服务器即刻进行检测能否命中,中间有没有阻挡,根本不用考虑弹道轨迹过程中是否有其他目标,所以细心的玩家就会发现,当你饶过前面的敌人而点后面的时,只有被点中的敌人会受击而前面的会没事,因为弹道轨迹在游戏中只不过是一个特效。


这样做虽然有点“穿绑”,但是对于追求紧张刺激爽快感的玩家而言,根本不会在意这种小事情,只要打得爽够刺激画面炫,谁还理那些?

同时,我们还可以发现,在《炮炮火枪手》中这种实现方式只限于玩家发射的子弹,由NPC敌人射出的子弹还是有弹道轨迹,玩家可以及时躲避的,但是子弹的数量和飞行的速度控制得非常死,这也在很多程度上提高了游戏的紧张刺激感。

在我们面对一些技术无法克服的问题时,如果选用一些取巧方便的解决方式是相当重要的。尤其是对策划而言,当程序团队面临无法突破的技术瓶颈时,如何想出一些替代方案来回避或解决问题也是我们份内的工作~~~~

个人blog:http://blog.sina.com.cn/gamerwolf

14

主题

269

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
发表于 2007-8-1 12:54:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

沙发

76

主题

1100

帖子

1107

积分

金牌会员

Rank: 6Rank: 6

积分
1107
发表于 2007-8-1 14:02:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

向量?

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2007-8-1 16:54:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

cs采用的就是这种方法。

6

主题

471

帖子

1047

积分

金牌会员

Rank: 6Rank: 6

积分
1047
发表于 2007-8-2 09:31:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

子弹碰撞都是球体或者BOX检测,没多少计算量的.

1

主题

30

帖子

30

积分

注册会员

Rank: 2

积分
30
发表于 2007-8-3 11:30:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

并不仅仅是计算量呀,各个客户端网络延时都不同,服务器即使做了运算发出了消息,玩家们看到的结果也不一定一样,我这里明明看的没有打到,运算结果却是我挂了,只是因为消息没来得及发过来或者丢掉了,算谁的……

这种游戏,还有格斗游戏等要求时间差较为精确的游戏类型,一但放到网络上,即使只有一点延时,也是很不爽的,所以都不会采用真正的物理运算。

22

主题

355

帖子

360

积分

中级会员

Rank: 3Rank: 3

积分
360
发表于 2007-8-3 11:35:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

剑侠系列貌用了大量碰撞,结果。。。

10

主题

75

帖子

86

积分

注册会员

Rank: 2

积分
86
发表于 2007-8-3 12:29:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

感觉对子弹进行碰检测试在网游里还是有可能实现的,毕竟属于这种类型的quake等游戏在联网对战时也有很良好的表现,但确实其实现难度应该是要复杂不少,不过我认为如果技术过关的话实现这种方式还是很有好处的,战斗的感觉应该能好上不少。

8

主题

237

帖子

247

积分

中级会员

Rank: 3Rank: 3

积分
247
QQ
发表于 2007-8-6 09:05:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

楼主必然没有参与过类似游戏的制作,提出的几个观点非常幼稚,建议楼主找几个程序聊聊天,应该会了解到底命中和躲避是如何计算的。。。

而为什么采用鼠标这种模式,也绝非你想想的那般,包括楼主说的火枪手,鼠标瞄准的攻击,同样是可以躲避的。。。

预期去猜测程序为何这样制作,还是好好思考一下,策划为何如此设计吧

6

主题

471

帖子

1047

积分

金牌会员

Rank: 6Rank: 6

积分
1047
发表于 2007-8-6 09:45:00 | 显示全部楼层

Re:聊聊休闲射击网游的弹道问题

同上.
韩国人这样设计是为了降低玩家操作难度,不是避免计算量.
而且曲线弹道计算比直线更耗费CPU.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-7-18 09:32

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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