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

扫一扫,访问微社区

蛮牛译馆

关注:480

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

查看: 696|回复: 7

[Unreal教程] UE4教程-狙击枪瞄准器(2)

[复制链接]  [移动端链接]
排名
7280
昨日变化
7

99

主题

128

帖子

794

积分

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

UID
159865
好友
9
蛮牛币
972
威望
0
注册时间
2016-8-1
在线时间
387 小时
最后登录
2017-1-17

蛮牛译员

发表于 2016-12-8 14:23:42 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 manew_JR 于 2016-12-8 16:55 编辑

制作瞄准器效果方法1-RenderToTexture

这是最难实现的类型,所以我会先做。这里有很好的基础教程,在这里 here。使用这种方法你需要知道一些3d的知识来方便使用这个类型。
对于军事武器装备里面的狙击步枪,有一个大的问题。它只有一个材质。Scope使用的材质是和其他枪支是一样的。要想用rendertoTexture实现瞄准器的效果你需要对于相同的玻璃镜头设置不同的材质。如果你擅长blender/3ds/maya你可以使用这些软件来完成,并导入到这个瞄准器材质上,这就是我们的一种思路,RendertoTexture就是在贴图上添加新的材质来完成瞄准,狙击的效果。这就需要有一定的美术基础,所以这对于程序猿来说有点儿难,我们就先来聊聊最难得方法。
我在3D程序中做了什么:
scope玻璃从皮肤与网格中分离出来
scope创建UV
分离的scope玻璃作为不同的网格
作为骨骼网格导入
所以现在就有了三个网格
从背包中分离出来的Sniper rifle网格,只有一个material
不包含多边形scope玻璃的Sniper rifle网格,这个网格在武器蓝图中被添加到WeaponMesh
Sniper rifle scope glass mesh。这个将作为新的骨骼网络被添加到SniperRifle蓝图中,然后放在scope应该在的位置。
大体上,如果你想要自己创建一个游戏,至少你需要学习3D图形的基础知识。创建UV,修改几何形状,导出数据,编辑骨骼。网上有很多的教程,这将需要几周时间来学习基础知识,但这是必要的,如果你真的想要制作一个自己的游戏。
创建一个新的2D渲染目标。我的分辨率是512*512,分辨率越高性能越低。
001.jpg
接下来创建新的材质,这个材质将使用渲染目标纹理贴图,刚才创建的名字为M98b的纹理贴图。
002.jpg

将这个新的材质连接到你的scope glass
打开你的没有镜头玻璃多边形或者有不同材质ID的玻璃的sniper网格并创建新的socket命名为“Scope”

003.jpg
它将用来放置捕获组件
现在在你的Sniper Weapon蓝图中。将scope放置在之前scope所在的位置。创建新的组件—Scene Capture Component
Field Of View 设定为7
连接你的Render Target texture
添加另一个组件camera,然后放置在场景中那么它会能从左侧看到一个武器
begin play组件中将capture component连接到Scope socket
004.jpg
现在在OnSecondaryEnter / OnSecondaryLeave调度器上,我们来设置位置缩放,这一点我们之前已经设定好了。
005.jpg

现在在Tick中,我们需要变换 Scene Capture Component 2d来确保它指向的是玩家正在看着的地方。
006.jpg

剩余部分如图所示:

007.jpg
没有上面的蓝图,当从纹理渲染观察关卡的时候你将会产生不同的视角
现在我们需要开火,所以创建Fire事件

008.jpg
如果你想设置上膛时间效果(作者也不知道具体怎么描述,就是不能连发,要一颗一颗的打枪),就将这个事件添加到你的Fire事件中。

009.jpg

Tick蓝图中,我们可以知道是否我们指向敌人头部,这个时候我们可以通过混合时间以及将时间拖长来调整摄像机
这样就完成了一种方法,你的scope将使用RendertoTexture的方法会充分起作用。
010.jpg

第二种方法-HUD Overlay
这种方法创建狙击瞄准器就相对简单多了。我已经在整个网上找了很多免费的sniper镜头纹理贴图,但是还没有找到最好的。
你们试试这个怎么样
将这个纹理贴图导入到内容浏览器中。创建新的UI widget蓝图>UI_Debug_SniperScope ,然后将导入到内容浏览器中的贴图放在widget中。确保整个屏幕都被覆盖了
011.jpg
现在需要回到你的BP_Weapon_SniperRifle蓝图中。在最开始的时候我要确保scope以及rendertitexture是被隐藏的。我将连接新的武器网格(从上一节建立在武器包中的武器里)
012.jpg
现在做如下连接,OnZoomln事件将确保你将widget添加到了屏幕上

013.jpg
OnZoomOut将会把Widget从玩家屏幕上移除

014.jpg

最后的事情就是在tick中驱动fov

015.jpg
效果就是这样啦
016.jpg

第三种方法-Postprocess
我们现在有一些基础工作要做,这个地址可以下载示例图片
打开GameplayCharacter以及变量:

PostProcessReference (Post Process Volume),

添加这三个函数

SetPostProcessSettings (input Post Process Volume)
017.jpg

ShowSniperOverlay
018.jpg
HideSniperOverlay
019.jpg

这三个函数是在Weapon Sniper OnZoomInOnZoomOut中丢失的三个功能,现在应该重新调用它们
导入纹理贴图然后创建新的材质
020.jpg
确保你的材质类型为PostProcess
021.jpg
现在在你的关卡中放置Post Process Volume
022.jpg

在这个设置中:
Unbound 应该设置为True
这就意味着即使你在volume范围外它也将会起作用
现在回到关卡蓝图图表中,然后创建事件开始。我们需要将volume和我们的GameplayCharacter参数连接在一起。
023.jpg

就是这样的效果
024.jpg


原文链接:http://shootertutorial.com/2015/06/22/creating-sniper-rifle/


     蛮牛译林军福利多多哦!
155547iluo7umxezrb2ekr.png


回复

使用道具 举报

5熟悉之中
629/1000
排名
3846
昨日变化
19

0

主题

248

帖子

629

积分

Rank: 5Rank: 5

UID
89942
好友
1
蛮牛币
34
威望
0
注册时间
2015-4-7
在线时间
143 小时
最后登录
2017-1-17
发表于 2016-12-8 18:06:14 | 显示全部楼层
谢谢楼主分享

回复

使用道具 举报

3偶尔光临
289/300
排名
9304
昨日变化
9

9

主题

76

帖子

289

积分

Rank: 3Rank: 3Rank: 3

UID
182565
好友
1
蛮牛币
87
威望
0
注册时间
2016-11-10
在线时间
140 小时
最后登录
2017-1-9
发表于 2016-12-9 09:24:36 | 显示全部楼层
厉害了大神
[发帖际遇]: 夏有乔木 在网吧通宵,花了 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

排名
10284
昨日变化
187

0

主题

11

帖子

79

积分

Rank: 2Rank: 2

UID
190199
好友
0
蛮牛币
348
威望
0
注册时间
2016-12-7
在线时间
18 小时
最后登录
2017-1-17
QQ
发表于 2016-12-9 09:29:27 | 显示全部楼层
666666666666666666666666666

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1179/1500
排名
1152
昨日变化
6

0

主题

320

帖子

1179

积分

Rank: 6Rank: 6Rank: 6

UID
111260
好友
0
蛮牛币
3790
威望
0
注册时间
2015-6-30
在线时间
185 小时
最后登录
2017-1-17
发表于 2016-12-22 14:19:08 | 显示全部楼层
非常喜欢!谢谢分享!!!
[发帖际遇]: 漫无边际 发帖时在路边捡到 1 蛮牛币,偷偷放进了口袋. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

2初来乍到
102/150
排名
8764
昨日变化
12

0

主题

6

帖子

102

积分

Rank: 2Rank: 2

UID
188779
好友
0
蛮牛币
188
威望
0
注册时间
2016-12-2
在线时间
26 小时
最后登录
2017-1-13
发表于 2016-12-26 11:19:22 | 显示全部楼层
6的飞起

回复

使用道具 举报

排名
13627
昨日变化
413

0

主题

19

帖子

61

积分

Rank: 2Rank: 2

UID
195928
好友
0
蛮牛币
118
威望
0
注册时间
2016-12-24
在线时间
16 小时
最后登录
2017-1-16
发表于 2016-12-27 17:10:16 | 显示全部楼层
好高级,学习了
[发帖际遇]: HID530 捡了钱没交公 蛮牛币 降了 3 . 幸运榜 / 衰神榜

回复

使用道具 举报

排名
13627
昨日变化
413

0

主题

19

帖子

61

积分

Rank: 2Rank: 2

UID
195928
好友
0
蛮牛币
118
威望
0
注册时间
2016-12-24
在线时间
16 小时
最后登录
2017-1-16
发表于 2016-12-27 17:11:31 | 显示全部楼层
伤心,扣金币

回复

使用道具 举报

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

本版积分规则

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