开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

蛮牛译馆

关注:544

当前位置:游戏蛮牛 技术专区 蛮牛译馆

查看: 837|回复: 15

[Unreal教程] 创建支持多人的可使用道具交互系统

[复制链接]  [移动端链接]
排名
7598
昨日变化
2

187

主题

224

帖子

1275

积分

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

UID
159865
好友
9
蛮牛币
2915
威望
0
注册时间
2016-8-1
在线时间
586 小时
最后登录
2017-7-19

蛮牛译员

发表于 2017-4-18 15:20:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
创建支持多人的可使用道具交互系统

在本教程中,我们将实现一个框架,在这个框架中,我们可以与世界中的对象进行交互,而且在这个场景中支持多人同时在线,重点是你只需要使用蓝图就可以实现,本教程包括使用道具的事件hook以及处理对象冲突,我们一起来试试。


项目资源在如下网站
https://github.com/tomlooman/ue4-tutorials

01.gif


概念解释

人物每秒执行线性跟踪搜索从“UsableActor”中来的道具actor类,当跟踪到时,道具将会被标记。当我们看到或者是瞄准到道具的时候,可以实现一个例如突出对象或者是一个HUD的显示。最后,“E”键触发的责任事件触发某种反应蓝图,比如添加道具到你的库存。


BP_UsableActor
首先创建一个新的蓝图,将作为我们的项目被摧毁,从StaticMeshActor生成这样一个actor蓝图。确保你将一个mesh连接到蓝图,并拖放到你的关卡中。然后确保它是可见的,这样我们可以开始使用它了。从StaticMeshActor派生出来的任何子蓝图可以很容易地覆盖网格属性一旦你开始实施多种项目类型。



在您继续之前,确保你有一个网格碰撞。这是必需的,以防你不检查角色的线跟踪节点“Complex trace”(BP_Character GetUsableActor后来在本教程中)的一部分,您可以创建一个原始碰撞下的静态网格编辑器“碰撞”在顶部菜单。


以下简单EventGraph将从关卡中针对对象摧毁actor,当你按下“E”。没有花哨的动作,更有趣的行为我建议你查看本系列的第二部分,我们使用这个系统来创建一个基本的库存与传感器系统。

注意:开始和结束的焦点功能不会产生任何影响,除非你有一个轮廓的效果(效果可以在本系列的第二部分,你现在可以跳过这)



三个功能的实现
02.jpg

为了实现多人游戏BP_UseableActor中转到 Defaults-tab -> Replication category -> enable “Replicates”这样你就离实现多人游戏更近了一步,其余的就可以在蓝图中实现了。


设置你的角色的输入

重要的是要将“Use”绑定到一个键,这可以通过Unreal中的项目设置来实现。为了打开窗口转到 Edit > Project Settings

05.png



BP_Character


角色处理线跟踪来选择视野范围内的actor。Tick事件触发Start/End focus 事件,这些事件会嵌入到蓝图UsableActor中被实现,最后使用事件(映射在输入窗口)会触发pickup/activate/destroy或任何你决定在你的蓝图中实现的东西。


变量添加

MaxUseDistance – float (默认值: 800)
LastUsableActor – BP_UsableActor (默认值: none)
IsNewFocus – bool (默认值: false)

函数: GetUsableActor

函数输出: 添加一个类型为“BP_UsableActor”的新的输出 “UsableActor”.

06.jpg


如果你不知道如何创建一个“提升为变量”节点,看看下面的GIF:

07.gif


事件图表

要创建“ServerOnUsed”节点必须右键单击并选择“创建自定义事件…“我们需要执行这个函数复制输入在客户端,我们使用逻辑必须发送到服务器。确保事件匹配红色框中的属性。

08.jpg



在下面的事件图标中我们将处理 start & end focus 对于场景中的一个道具。在你的角色主要事件图表中加上下面的蓝图。Tick事件在服务器上运行所以我们需要复制到已有的client,这样我们可以突出我们的对象。


注意:我将这些蓝图复制到client是因为我们只是在本地做可视化更新,这样必须在client端运行,如果你处理在tick事件中处理游戏逻辑,你需要考虑改变蓝图来在服务器端运行(或者是一部分在服务器,一部分在client),现在像下面这样编写蓝图:

09.jpg




结语
如果你完成了教程的基本框架来构建自己的蓝图(如门、杠杆、皮卡项目等各种交互)在本教程系列的第二部分,我使用这个系统来创建一个基本的库存和传感器系统。第二部分是基于c++ UsableActor创建,但与本教程完全兼容。





原文标题:Multiplayer supported UsableActor System in Blueprint
原文链接:http://www.tomlooman.com/tutorial-multiplayer-supported-usableactor-system-in-blueprint/







       蛮牛译林军福利多多哦!

扫描下方二维码关注游戏蛮牛官方微信~每日都有精选干货与你分享呦~
155547iluo7umxezrb2ekr.png































回复

使用道具 举报

4四处流浪
310/500
排名
7215
昨日变化

0

主题

98

帖子

310

积分

Rank: 4

UID
207120
好友
0
蛮牛币
384
威望
0
注册时间
2017-2-18
在线时间
92 小时
最后登录
2017-7-21
发表于 2017-4-18 17:29:58 | 显示全部楼层
不错啊, 很好的,东西呀

回复 支持 反对

使用道具 举报

3偶尔光临
194/300
排名
8876
昨日变化
3

0

主题

59

帖子

194

积分

Rank: 3Rank: 3Rank: 3

UID
191961
好友
0
蛮牛币
56
威望
0
注册时间
2016-12-13
在线时间
51 小时
最后登录
2017-4-27
发表于 2017-4-18 22:25:35 | 显示全部楼层
666666666666666666666666666

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1248/1500
排名
4717
昨日变化
2

0

主题

827

帖子

1248

积分

Rank: 6Rank: 6Rank: 6

UID
189581
好友
0
蛮牛币
1669
威望
0
注册时间
2016-12-5
在线时间
205 小时
最后登录
2017-7-12
发表于 2017-4-19 08:47:18 | 显示全部楼层
不错给力啊啊啊

回复

使用道具 举报

3偶尔光临
248/300
排名
6549
昨日变化
2

0

主题

49

帖子

248

积分

Rank: 3Rank: 3Rank: 3

UID
134807
好友
0
蛮牛币
211
威望
0
注册时间
2016-1-15
在线时间
60 小时
最后登录
2017-6-16
发表于 2017-4-19 09:03:26 | 显示全部楼层
怎么看起来像是机器翻译的感觉

回复 支持 反对

使用道具 举报

7日久生情
1579/5000
排名
16285
昨日变化
5

2

主题

1340

帖子

1579

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
185807
好友
0
蛮牛币
1978
威望
0
注册时间
2016-11-22
在线时间
213 小时
最后登录
2017-7-23
发表于 2017-4-19 09:59:37 | 显示全部楼层
赞,学习了,谢谢分享

回复 支持 反对

使用道具 举报

排名
36174
昨日变化
27

0

主题

12

帖子

18

积分

Rank: 1

UID
216935
好友
0
蛮牛币
9
威望
0
注册时间
2017-4-9
在线时间
2 小时
最后登录
2017-4-19
发表于 2017-4-19 23:18:55 | 显示全部楼层
VCCVCVCCCCCCCC

回复

使用道具 举报

排名
36174
昨日变化
27

0

主题

12

帖子

18

积分

Rank: 1

UID
216935
好友
0
蛮牛币
9
威望
0
注册时间
2017-4-9
在线时间
2 小时
最后登录
2017-4-19
发表于 2017-4-19 23:25:48 | 显示全部楼层
FGJUGFJHKGDHHDFFSADDSAFGEFH
[发帖际遇]: 523727033 乐于助人,奖励 2 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

排名
36174
昨日变化
27

0

主题

12

帖子

18

积分

Rank: 1

UID
216935
好友
0
蛮牛币
9
威望
0
注册时间
2017-4-9
在线时间
2 小时
最后登录
2017-4-19
发表于 2017-4-19 23:29:14 | 显示全部楼层
WERGDSDFSDFDFDFDFF

回复 支持 反对

使用道具 举报

排名
36174
昨日变化
27

0

主题

12

帖子

18

积分

Rank: 1

UID
216935
好友
0
蛮牛币
9
威望
0
注册时间
2017-4-9
在线时间
2 小时
最后登录
2017-4-19
发表于 2017-4-19 23:32:44 | 显示全部楼层
CXVFVDFDDSDS

回复

使用道具 举报

6蛮牛粉丝
1440/1500
排名
2053
昨日变化

5

主题

527

帖子

1440

积分

Rank: 6Rank: 6Rank: 6

UID
68430
好友
1
蛮牛币
5971
威望
0
注册时间
2015-1-14
在线时间
370 小时
最后登录
2017-7-20
发表于 2017-4-20 16:25:56 | 显示全部楼层
66666666666

回复

使用道具 举报

4四处流浪
344/500
排名
5283
昨日变化
35

0

主题

76

帖子

344

积分

Rank: 4

UID
210517
好友
0
蛮牛币
1219
威望
0
注册时间
2017-3-7
在线时间
80 小时
最后登录
2017-7-23
发表于 2017-4-21 10:23:19 | 显示全部楼层
不错谢谢分享!

回复

使用道具 举报

排名
36174
昨日变化
27

0

主题

47

帖子

51

积分

Rank: 2Rank: 2

UID
218693
好友
0
蛮牛币
65
威望
0
注册时间
2017-4-20
在线时间
3 小时
最后登录
2017-4-22
发表于 2017-4-21 13:59:27 | 显示全部楼层
这个框架看起来很棒啊这个框架中,我们可以与世界中的对象进行交互!
[发帖际遇]: 工程师字头 乐于助人,奖励 1 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

3偶尔光临
236/300
排名
8993
昨日变化
1

3

主题

99

帖子

236

积分

Rank: 3Rank: 3Rank: 3

UID
214644
好友
0
蛮牛币
1173
威望
0
注册时间
2017-3-27
在线时间
48 小时
最后登录
2017-6-30
发表于 2017-4-27 09:18:53 | 显示全部楼层
看起來是個不錯的東西,值得學習

回复 支持 反对

使用道具 举报

5熟悉之中
732/1000
排名
4305
昨日变化
29

0

主题

376

帖子

732

积分

Rank: 5Rank: 5

UID
188049
好友
1
蛮牛币
406
威望
0
注册时间
2016-11-29
在线时间
114 小时
最后登录
2017-7-23
发表于 2017-5-27 09:22:20 | 显示全部楼层
66666666666666666666666666666666

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

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