查看: 3117|回复: 7
打印 上一主题 下一主题

[教程] uScript 实作练习(二)使用按键解除控制台

[复制链接]

955

主题

164

听众

7万

积分

版主

Rank: 7Rank: 7Rank: 7

纳金币
59338
精华
28

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

跳转到指定楼层
楼主
发表于 2013-3-16 10:30:01 |只看该作者 |倒序浏览
uScript V 0.9.2236下载:

http://www.narkii.com/club/bbs_286674.shtml


初识uScript (一)程序安装与范例文件的使用

http://www.narkii.com/club/bbs_288802.shtml


初识uScript (二)小球吃钱币的设计逻辑与思路研究

http://www.narkii.com/club/bbs_289006.shtml



初识uScript (三)使用Trigger进行灯光颜色的变换

http://www.narkii.com/club/bbs_289351.shtml



实作练习(一)使用Trigger制作红色警示区域

http://www.narkii.com/club/bbs_289681.shtml



范例所在位置:Examples > AlarmGameplay (需安装uScript的范例资源包)



在第一个部分的教程里面,我们设定角色走向警示区后触发Trigger_Alarm事件,警报系统发出巨大的声响与红色警示灯并关闭大门



第二个部分的主要作用是角色靠近控制台时,系统提示按下H键关闭警示区域,然后角色就可顺利通过大门而进到内部的空间,在解除警示区的同时,控制台与大门上方的也会进行颜色的替换。



首先将Trigger Events的连接删除,然后新增两个Compare Bool来作为起始的比对,将第一个Compare Bool > False 连接到 Toggle Component > Turn On, 第二个Compare Bool > False 连接到 Toggle Component > Turn Off。




新增一个Comment的图框,修改名称为The In sockets, 然后增加一个External Connection,将这个节点更名为Alarm Start后与Compare Bool > In 进行连接。



继续新增一个External Connection,更名为Alarm Stop后连接到Compare Bool > In的节点。



将原来的Audio Clip > Alarm Audio的节点删除,新增一个Comment后更名为The Variables sockets, 然后增加一个External Connection连接到Audio Clip,并更名为Alarm Sound,如图所示。



在The Variables sockets里面继续添加External Connection,然后更名为Alarm Hacked?这个节点的目的在于比对警报声的开关作用,所以必须将两个Compare Bool > Bool 连接到 Alarm Hacked?的节点,如图所示。



接下来我们需要加入另一组 The Out sockets来作为The In sockets的对应关系,先增加Comment后更名,然后再加入两个External Connection,并分别更名为Out - Alarm Start与

Out - Alarm Stop。



设定好The Out sockets的节点后,将Toggle Component > Turned On 连接到 Out - Alarm Start, Toggle Component > Turned Off 连接到 Out - Alarm Stop, 然后将uScript的设置进行保存,使用File Menu > Save As.. 储存为AlarmGameplay_AlarmSetup.uscript



选择File Menu > New 打开一个空白的uScript文件,接着将Events > Game Events > uScript Events的节点添加到编辑视窗,添加Actions > Assets > Load Audio Clip与On Graph Start连接,然后在Asset Path里面指定Audio/alarm这个文件为加载的音效,再添加一个Audio Clip连接到Loaded Asset并更名为Alarm Audio,这个连接表示在uScript开始执行的时候会自动载入alarm的音效文件,并等待Alarm Audio的事件被触发后生效。




继续添加一个Load Audio Clip,Asset Path 里面选择Audio/hack_shutdown文件为加载的音效,添加一个Audio Clip连接到Loaded Asset并更名为Hack Audio,然后连接到前一个Load Audio Clip > Out,如图所示。



接着制作Trigger的触发事件,新增Trigger Events, 然后将Trigger_Alarm拖曳到Instance的栏位,然后增加Alarm Setup、Audio Clip与Bool的节点,分别对其更名后与Alarm Setup连接,如图所示。



Trigger Events > OnEnterTrigger 连接到Alarm Start,OnExitTrigger 连接到Alarm Stop,这个连接的作用与AlarmGameplay_AlarmSetup.uscript里面的设置对应,这里判断的是只要Trigger_Alarm被角色触发就执行Alarm Start里面的警报声,角色离开后就执行Alarm Stop进行关闭声音的动作。



接下来进行控制台提示文字的功能,这里只用了很简单的一个节点设置,先添加Tigger Events,将Trigger_Console拖曳到Instance栏位,然后再增加 Actions>GUI>rint Text的节点,在Text的栏位添加一个String的节点,输入Press 'H' to hack the console后进行连接。



将Trigger Events > WhileInsideTrigger 连接到Show Text,OnExitTrigger 连接到Hide Text,这个作用是角色在进入Trigger_Console的范围时,视窗内会显示Press 'H' to hack the console的文字。



接下来需要进行解除控制台的设置,添加Events > Input Events的输入事件到编辑视窗,然后再添加Actions > Events > Input Events Filter,这个节点主要是设定按下某个按键后触发事件的作用。



将On Input Events连接到Input Events Filter > In,然后在Key Code栏位里面选择H键,表示控制台在按下H键后将会解除警报声。



增加一个Compare Bool后连接到Input Down, 再加入一个Bool,勾选Value使其成为***e的状态,添加名称为Can Hack?后与Comapare Bool > Bool进行连接。



继续添加一个Compare Bool与Set Bool,然后加入一个Bool,将其名称设定为Alarm Haceked?与Compare Bool,Set Bool进行连接,同时将Compare > False 连接到Set Bool > ***e。这个设置里面是在H键按下后,经过两个Bool的判断与Set Bool进行动作的确认。



将Actions > Audio > Play Sound添加到编辑视窗后与Set Bool > Out 进行连接,在Audio Clip底下增加一个Audio Clip,将其名称设定为Hack Audio,Target 选择场景内的相机,Loop不需要勾选,因为这个解除控制台的音效只要执行一次即可。



将Variables > Color > Set Color添加进来,然后将颜色更换为绿色后与Play Sound > Out连接,接着将Hierarchy面板里的Door_PointLight拖曳进来与Set Color > Target连接,这个动作表示在解除控制台之后,门口的灯光也会转换成绿色。



将Actions > Variables > String > Set String 添加进来,在Value的栏目里面设定为Console hacked,Target 则是原来提示的文字讯息,表示在解除控制台的H键按下后,提示输入H键的文字会被替换成 Console hacked。



最后还需要将门口上方的红色面板与控制台的屏幕换成绿色,这里我们需要用到的是一个材质指定的节点。



将Actions > Game Object > Assign Material添加进来,Target里面选择Security_Screen的物件,接着再加入一个Variables > Material,里面的名称设定为Open MAT,然后将Open MAT连接到Assign Material > Material。使用复制方式复制出Assign Material,Target更换为Door_Frame,同样的也是将Material连接到Open MAT。



材质的指定完成后,将两个Assign Material连接到Set Color > Out,这个连接的目的是让控制台的屏幕与门口上方的面板在解除控制台后更换为绿色的表面。



回到uScript的节点,添加一个Actions > Assets > Load Material,在Asset Path里面选择Materials> Open MAT的绿色材质,然后将刚才设定的Material复制成另一个与Loaded Asset进行连接,这样就完成了场景里面所有的设定工作,最后将整个流程储存为AlarmGameplay_MainGame.uscript


进行Play测试,在角色靠近门口时会响起警报声与灯光的闪烁,同时大门会自动关闭,在移动到控制台时会出现提示按下H键来解除控制台,当我们按下H键后,屏幕与门口的灯光全部会换成绿色,并且会告诉我们已经解除了控制台。



在练习完成第二个部分的操作后,相信大家对于uScript已经有了更深入的了解,至于如何进一步发掘uScript的技术运用,我们仍希望有更多的朋友一起来研究可视化插件,并将使用的经验分享出来以促进圈子内的学习风气!

Alarm_Gameplay.zip

0 Bytes, 下载次数: 18

分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏1 支持支持0 反对反对0
回复

使用道具 举报

2722

主题

42

听众

3万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
38268
精华
111

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

沙发
发表于 2013-3-16 14:56:11 |只看该作者
支持一个,希望有更多的uScript教程!
回复

使用道具 举报

Zack    

459

主题

1

听众

5478

积分

高级设计师

Rank: 6Rank: 6

纳金币
5531
精华
0

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

板凳
发表于 2013-3-18 21:12:22 |只看该作者
希望有更多的uScript的相关教程!
回复

使用道具 举报

2

主题

6

听众

394

积分

设计实习生

Rank: 2

纳金币
109
精华
0

最佳新人

地板
发表于 2013-4-22 08:20:58 |只看该作者
非常感谢  插件的教程很少见啊  尤其是中文的
回复

使用道具 举报

2

主题

6

听众

394

积分

设计实习生

Rank: 2

纳金币
109
精华
0

最佳新人

5#
发表于 2013-5-20 09:41:54 |只看该作者
uScript系列的教程只有这个没图片了
回复

使用道具 举报

0

主题

1

听众

2517

积分

中级设计师

Rank: 5Rank: 5

纳金币
7
精华
0

最佳新人

6#
发表于 2013-5-20 10:38:00 |只看该作者
学习了 谢谢
回复

使用道具 举报

heise    

4

主题

3

听众

4249

积分

中级设计师

Rank: 5Rank: 5

纳金币
105
精华
0

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

7#
发表于 2013-5-20 11:23:13 |只看该作者
希望uScript越做越好!
回复

使用道具 举报

2

主题

6

听众

394

积分

设计实习生

Rank: 2

纳金币
109
精华
0

最佳新人

8#
发表于 2013-10-16 15:28:33 |只看该作者
图片貌似都显示不了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

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

GMT+8, 2024-11-11 10:27 , Processed in 0.169584 second(s), 31 queries .

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

© 2008-2019 Narkii Inc.

回顶部