游侠NETSHOW论坛

标题: 孤岛危机Flow Graph运用6: 士兵聊天敬礼抓机枪等行为的实现! [打印本页]

作者: tiger520wmr    时间: 2008-4-14 18:57:56     标题: 孤岛危机Flow Graph运用6: 士兵聊天敬礼抓机枪等行为的实现!

不知道大家还记得在第一关的海边栈桥上那个撒尿的士兵没有(见图一)。经过一番研究,发现实现这个效果非常简单。今天,我和大家探讨的是采用同一种原理来实现的士兵聊天的场景!
    [attach]1162704[/attach]
    在下面的流程图里,我用两种不同的方法实现了同一种士兵聊天的情形。其中第一组聊天士兵是用的AIAnim节点技术来实现的。在该节点中我们可以实现近百个不同的生活动作,这些动作可以极大的丰富你做的地图中的士兵在活动中的行为真实性,看起来更形象生动些。
    另一组方法是用的专门实现聊天情况的PlayDialoy节点,该节点在官方地图中被广泛应用,最近见到的地方就是第一关海边大石头后的三个士兵聊天的情景,有坐着的,有抽烟的,还有一个在滔滔不绝的聊天说话(把通讯雷达站炸掉后往前顺着海滩走就可以看见,也就是接近下一个海边有栈桥据点的前面)。我们使用简单的方法实现了官方的这种士兵聊天情景的运用,当然,在最下面我附上了整理过的那张官方实现其三个士兵聊天行为所用的流程图图片,大家可以去研究下。

    现在,我们来简单探讨我们的实现方法。

见图二:
    [attach]1162705[/attach]

   首先,我们放两批人在你选定的地点。在我的地图上,我的第一组人员共两个,而且一个放在栈桥的起始位置,一个放在栈桥的中间转角处。第一组的士兵将实现如下效果:从栈桥一端走来,到达中间时转向,相另一个士兵互相行军礼后就开始聊天,一个说,一个听。所以在两个士兵间还特别做了一个行走路径(AIPath)。另一组放了三个士兵,并在
他们旁边放了一把机枪。

    其次,创建流程图,选中一个士兵,然后点击Flow Graph栏中的Create(创建)按钮来给这个士兵创建一个流程图,然后指定一个这个流程图将被保存的组,名称随你,这时出现FG窗口,就是图上方的那个创建流程图的工具单。然后在该流程图任意中间区域单击右键打开添加流程图窗口,在弹出的菜单中选择第一项Add Nods并添加如下几个窗口,如果添加的节点窗口看起来是个点,就使用鼠标滚轮来缩放,或者点击Fit Graph to View,那个节点窗口会自动调整到适合窗口宽度并可见的。(具体方法请参考其他图文教程):

在Add Nods项下分别添加:

\Misc\star 节点,
\AI\AIFollowPath 节点,用来联系一个士兵的行走路径。
\AI\AIAnim 节点,四个,分别付给第一组的两个士兵。
\Dialog\PlayDialog  节点,这个节点用来控制另一组士兵的聊天行为,这里要特别强调下,这个节点不好找,请将FG的View\Components\..下所有选项勾选后
                              才会在Add Nods项下发现该节点选项,切记!!
\Entity\EntitID 节点,四个,分别用来赋给另一组的三个士兵和一把机枪.
\AI\AIUseObject 节点,一个,用来赋给第二组其中一个士兵在聊天后去使用机枪.
\Time\Delay 节点,用来适当延迟一个动作.
    添加完节点后,先在地图上选中我们刚才放置的士兵,然后回到流程图里选中相关的AI节点或EntitID节点,在节点上右击,在弹出菜单上点击第一项Assign selected entity,即把选中的士兵赋给这个节点,用同样的方法把对应的节点赋给士兵们.
  
    在AIAmin节点里设置相关参数:name用来设置你需要的动作,例如:salute(军礼),talk(说话),listen(听),在这个参数里,你可以仔细研究各种动作,当然也包括那个撒尿动作在内了!同时,把Method(方法)参数设置成Action.在AIFollowPath节点里,不要忘记把要行走过来行礼的士兵赋给它,并在PathName(路径名)设置成你创建的AIpath,这个名称是区别大小写的,不要写错了,而且请把路径ROAD属性设为False。
   
    在第二组运用里,Dialog:PlayDialog节点里,将三个士兵作为聊天主角(Actor)连接到该节点.而且在Dialog参数里要设置你的聊天内容,在选单里选一个聊天声音给它就更形象了.我选的是Island.Idle_Talk_2文件.我的这个文件正好实现士兵中的三个不同动作:说话,听和抽烟.剩下的参数对照图上所示设置就可以了.
    最后,按照图上的方法连线。

    如果你做完上面的设置.就应该可以通过设计窗口下的AI\Physic按钮来测试效果了。也可以直接切换到游戏来体验自己的成果。

效果图:
[attach]1162706[/attach]
    FG流程图的大体意思为:当流程激发(output)后,第一组的士兵Heavy_Rifle_LAM2从栈桥一端按照线路AIPath行走,到达路途终点后(succeed),双方行军礼,然后一个说话一个听.
       第二组的士兵在流程激发后,三个士兵,一个坐下,一个说话(纯正的韩语),一个还在吸烟.交谈完后(finished),间隔一会(Time:Delay),坐下的士兵站起来,跑到旁边抓住机枪.(ShiTen1).

官方实现方法图:
[attach]1162707[/attach]
老话一句:对你有用莫忘支持!

补上其他FG后续教程(以下系列教程会不断改进和更新):
http://game.ali213.net/thread-2018581-1-1.html   孤岛危机Flow Graph运用1:控制汽车行驶及停车的实现!
http://game.ali213.net/thread-2020207-1-1.html   孤岛危机Flow Graph运用2:士兵在多个路点间的巡逻过程!
http://game.ali213.net/thread-2021314-1-1.html   孤岛危机Flow Graph运用3:小团队士兵集体巡逻的实现方法!
http://game.ali213.net/thread-2023371-1-1.html   孤岛危机Flow Graph运用4: 北韩士兵驾驶直升机巡逻攻击方法!
http://game.ali213.net/thread-2025235-1-1.html   孤岛危机Flow Graph运用5: 如何实现士兵驾驶船舶和坦克的效果!
http://game.ali213.net/thread-2028651-1-2.html   孤岛危机Flow Graph运用6: 士兵聊天敬礼抓机枪等行为的实现!
http://game.ali213.net/thread-2030606-1-1.html   孤岛危机Flow Graph运用7:北韩士兵呼叫支援方法的实现!
http://game.ali213.net/thread-2032149-1-1.html   孤岛危机Flow Graph运用8: 如何为自己配几个随身支援的伙伴!
http://game.ali213.net/thread-2033705-1-1.html   孤岛危机Flow Graph运用9: 用触发器实现感应地雷效果!
http://game.ali213.net/thread-2038502-1-1.html   孤岛危机Flow Graph运用10:异形总动员!

其他文章:
http://game.ali213.net/thread-2049528-1-1.html    孤岛危机SandBox2使用教程:如何添加航空母舰!

如果你还有其他地方不明白,请参考本论坛其他教程:
http://game.ali213.net/thread-1723210-1-1.html   Crysis Sandbox2 Editor 教程合集 Enforcer
http://game.ali213.net/thread-1677571-1-1.html   孤岛危机精华索引
http://game.ali213.net/thread-2038780-1-1.html  孤岛危机(Crysis)Flow Graph运用汇总贴!

[ 本帖最后由 tiger520wmr 于 2009-2-1 15:49 编辑 ]
作者: 萧萧风兮    时间: 2008-4-14 18:59:42

LZ你太强了。。。。。。。。。。。。
作者: seals9121    时间: 2008-4-14 19:02:55

      肯定支持
作者: tsuichiwong    时间: 2008-4-15 22:32:08

强烈支持!!!

虽然技术我不是很懂,但还是要顶!!!!!
作者: renlzrz    时间: 2008-4-15 23:17:43

哇啊 好复杂                         
作者: snakeLK2    时间: 2008-4-16 00:16:27

其实FG一点也不复杂,很直观的,就是一个个逻辑连接,比如完成了什么同时触发什么等等,LS朋友多研究下就很清楚了,更本不需要什么编程的知识,主要是多试,一定有收获的,再加上像LZ一样的热心的研究者帮忙,大家一定能把sb2弄的比较懂的,支持LZ!!!!!!!!!!!!!!!!!!!!!!!!!!等待LZ把教程弄完后,和Enforcer兄以前的教程一起整合成一本电子sandbox2宝典!!!!!!!!!!!!!!!!!!!!!!!!!!
作者: ronanljy2    时间: 2008-4-21 02:51:01

支持楼主!!!!!!!!!!!!国内的地图MODer的前辈!
作者: vistabeta2    时间: 2008-4-21 09:04:10

谁弄个一排人撒尿的。
作者: snakeLK2    时间: 2008-4-21 09:14:15     标题: 回复 #10 vistabeta2 的帖子

回头我弄!!!!!!!!!!!!!!!!!!!!!!!!
作者: smokyrain    时间: 2008-4-21 11:28:23

技术贴绝对支持!

问一个:士兵聊天的语言可以自己替换否?
作者: tiger520wmr    时间: 2008-4-21 13:02:23     标题: 回复 #12 smokyrain 的帖子

可以替换的
作者: 1805374238    时间: 2021-2-14 19:05:33

有没有单独的使用机枪的教程。。




欢迎光临 游侠NETSHOW论坛 (https://game.ali213.net/) Powered by Discuz! X2