12 第1页 | 共2 页下一页
返回列表 发新帖
查看: 2393|回复: 13
打印 上一主题 下一主题

3D游戏引擎技术剖析10.2

[复制链接]

5552

主题

2

听众

8万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
11

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-1-14 14:37:02 |只看该作者 |倒序浏览


关于这个主题,3D Realms的Jess Crable,现在为Duke Nukem Forever工作,如是说:
  "导航在许多方面是个巨大的挑战,主要是当游戏中有大量正在发生的事情和一些非计划性的东西,比如障碍。为了避免和(或)真实地对非计划性的障碍物导航(例如像另外的AI),AI需要很好地知道正在它周围发生的事情。比较而言另外一个巨大的挑战就是真实感。如果AI正在表现玩家在实际生活中看到的一些东西,比如说一个人,或者一条狗, 那么让它看上去真实可信就更加困难。"
  然后就是局部导航。我们可能有一条路径让我们的 NPC 从他在世界中的位置,移动到他认为听到声音的地方,但你不能盲目地按照这个执行并期望得到看起来不错的结果。这种性质的路径倾向于非常特定于一个给定的目的。当你沿着走廊从一个房间跑到另外一个房间时,它很好,但如果你试图指导他穿越一个巨大的房间时,路径结点方法容易最终得到一些看起来很奇怪的发现路径。这些路径也不是动态的。因为他们被预先建造,他们不容易考虑到世界的任何动态变化。桌子可能有被移动过了,椅子被破坏了,墙壁被摧残,当然,人们会移动。这就是局部导航不同于世界导航的地方。它必须考虑局部世界并导航NPC在里面穿越。它必须知道周围的环境,存在哪些可以选择的路径,并决定选择哪一条。
  在局部导航中最大的问题是其他的NPC。给定一个发现路径的具体例程,如果你在相同的一般区域中有不止一个NPC,他们都试图到达世界的同一地点,结果是他们都非常容易有相同的路径。然后他们试图沿着这个路径行进,结果彼此遇到一起,然后花费他们所有的时间试图将彼此分开,并且一旦成功地分开了,他们再次试图到达目标,然后我们又再次看到同样的事情发生。这一切看起来都是非常的愚蠢,这不是大多数人想要的效果。所以需要一些路径发现中的变化来避免这种情形,需要一些妥善处理避免的代码。有大量能够帮助解决这种情形的算法。
人工智能和角色动画问题

当然,当角色自己在世界中行走时你必须完全地决定你想要角色播放什么动画。听起来无足轻重?不是的。关于这个主题,Raven的 Chris Reed—Soldier of FortuneII使用名为LICH的AI系统的现在的负责人—如是说:
  "此刻我能告诉你,我们在平滑移动上正有着最大的困难。在一个多丘陵的长满草的丛林中试图让五个角色在彼此附近行走是一个非常困难的问题。让底层系统完美是重要的,因为除非角色在较低层次上(避免墙壁,适当的动画)看起来真实,他们不能够有效地表达任何较高层次决定的智能。由于这个单独的原因,动画和底层的移动是最重要的和最难实现的。它确实需要完美。"
  因此我们已经让我们的角色从A点到达了B点,他自己穿越世界,在途中避免障碍物,正确播放动画,现在到达了这里。他看见了你。接下来做什么呢?很明显更多的是作出决策。他将向你射击。太棒了。你回应射击。现在干什么?当他试着逃走的时候,现在你再次经历全部同样的事情。
  为了让这些情形看起来令人信服,你看见了这里必须要处理的大量问题。如果你建立你的AI使用没有动画的行为让NPC执行,这能被混合。一些Soldier of Fortune中的AI就是这样的例子。他们受到了指责,因为坏家伙没有以适当的方式对刺激作出反应。当他们明显应该这样做的时候,敌方NPC不扫射,或者不逃跑。部分问题是他们没有扫射敌人NPC的动画,或者让他们往回跑,因为空间的问题。因此世界上所有最伟大的AI代码都不能够解决这个问题。这是所有要考虑的重要事情。
  想知道隐藏的难点吗?看看我前面所有的描述,然后试着将它应用到一组NPC上,这些NPC彼此必须说话,设定目标,彼此沟通,但不妨碍彼此的方式。一旦你这么做了,试试那些代码,作为玩家的队友做上面所描述的这些,然而不要在枪战中妨碍他。现在这是复杂的。然后这成为乐趣。这是最困难的部分。Raven的 Chris Reed关于AI‘感觉’的一些评论:
  "我认为反馈是AI的一个极大的问题。如果角色对于他周围环境的变化不产生反应,游戏的真实感就被完全打破了。这有许多明显的例子(听见枪炮声,看见同伴被击中...),以及一些更加微妙的事情(当两个人通过门厅时看着彼此并点头致意)。玩家是乐意接受一些生硬和可预测性的,但是这些事物容易把游戏带到现实生活。"
  并且Jess Crable 赞同:
  "平衡是非常重要的… 对玩家将会有多大的乐趣至关重要,但还有其他的问题要平衡。游戏玩家时常说他们想在游戏中看见更加真实的人工智能。然而,太多的真实感开始把乐趣带走。在这两者之间必须要有一个好的平衡。变化和随机同样也很重要—行为的变化,和保持在可信范围内的一定程度的不可预测性。"
游戏规则与自然发生的游戏

在我们关于AI的所有描述中,我们采用的是Fps的方式。有不止一种的AI。我们已经描述的是处理3D世界一组规则。AI远远不止这些。时常最好的AI实际上非常的简单。它就是一组规则,玩家必须响应和处理的响应(或开始)动作的规则。
  这里应当处理一个被称为“自然发生的游戏”的专业术语。 自然发生的游戏本质上创造游戏将遵守的规则,那将会造成游戏程序员不能预见的情形。
  举例来说,象棋能被认为是自然发生的游戏。有一组规则,但游戏能够陷入各种程序员不能够以个别方式处理的情形。你不能为每一种可能的棋局情形编码规则。很清楚,游戏玩家每次不会总是面临相同的游戏情景。一定程度上,进行中的游戏情形会根据他的行动而发生变化。Black and White是这种情形的一个完美的例子,和The Sims一样—游戏有它自己的规则,但你如何运用和调和他们是你自己的事情。实际上,你在玩游戏的过程中创造着游戏,而不是照着游戏设计者/程序员已经为你定义的路线进行。
  有可能把基于规则的,自然发生的游戏方式和FPS环境混合在一起。Half Life中的一些海军陆战队士兵的行为就是这样做的—压制火力和侧翼攻击从设定的规则中动态完成。它看起来是动态的,而且一定程度上它是这样。然而,在FPS世界中仅仅有一组规则时常是不够的。几何和其他AI时常能够打败简单的规则,这让保持正确并依然有趣变得更加困难。所以对那些可怜的AI程序员有一些同情心吧。他们的工作不容易。
好吧,下面还有一个章节,仅仅还剩下一个章节了。在最后的章节里,我们将讨论头顶显示,菜单系统,游戏定制和配置,游戏引擎版权与建造,最后是游戏“mods”。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

   

671

主题

1

听众

3247

积分

中级设计师

Rank: 5Rank: 5

纳金币
324742
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2012-1-22 23:22:07 |只看该作者
今年过年不收礼,收礼只收你短信,祝福不分大小,只要真心我就要。条数越多我越高兴,手机越响我越开心,你可否提前把礼送,等礼等得我好心焦。
回复

使用道具 举报

1023

主题

3

听众

359

积分

设计实习生

Rank: 2

纳金币
335582
精华
0

最佳新人

板凳
发表于 2012-2-9 23:22:48 |只看该作者
我就看看,我不说话
回复

使用道具 举报

1023

主题

3

听众

359

积分

设计实习生

Rank: 2

纳金币
335582
精华
0

最佳新人

地板
发表于 2012-2-11 23:21:45 |只看该作者
我就看看,我不说话
回复

使用道具 举报

5969

主题

1

听众

39万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

5#
发表于 2012-2-17 23:28:11 |只看该作者
其实楼主所说的这些,俺支很少用!
回复

使用道具 举报

462

主题

1

听众

31万

积分

首席设计师

Rank: 8Rank: 8

纳金币
2
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

6#
发表于 2012-6-29 23:27:04 |只看该作者
都闪开,介个帖子,偶来顶
回复

使用道具 举报

462

主题

1

听众

31万

积分

首席设计师

Rank: 8Rank: 8

纳金币
2
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

7#
发表于 2012-7-15 23:18:36 |只看该作者
心中有爱,爱咋咋地
回复

使用道具 举报

tc    

5089

主题

1

听众

33万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

8#
发表于 2012-7-22 23:26:08 |只看该作者
佩服,好多阿 ,哈哈
回复

使用道具 举报

3795

主题

2

听众

5万

积分

版主

Rank: 7Rank: 7Rank: 7

纳金币
53202
精华
32

活跃会员 优秀版主 推广达人 突出贡献 荣誉管理 论坛元老

9#
发表于 2012-7-24 09:35:19 |只看该作者
高手速来赐教!kismet里面怎么加一个延迟DELAY??



unity特效大家PP_武功盖世呀








【严重分享】Unity3D_3.0破解版[安装包][下载]






高手请赐教!用模型做的特效动画材质丢失








antares_universe(vizio)可视化编辑
回复

使用道具 举报

1023

主题

3

听众

359

积分

设计实习生

Rank: 2

纳金币
335582
精华
0

最佳新人

10#
发表于 2012-8-13 23:55:28 |只看该作者
加精、加亮滴铁子,尤其要多丁页丁页
回复

使用道具 举报

12 第1页 | 共2 页下一页
返回列表 发新帖
您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2025-7-26 09:30 , Processed in 0.090314 second(s), 33 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部