UE4官方课程笔记(1)——游戏设计师的蓝图与游戏玩法

UE4官方课程笔记

前言,该笔记是 官方教材,游戏设计师的蓝图与游戏玩法 中的一些蓝图和实例。

课程地址:课程简介 (unrealengine.com)

包含:角色的移动:冲刺,蹲伏,声音粒子特效,事件互动开关门等,细致且全面,是非常好的教材。

在资料中,门没有碰撞,可以在静态网格体中,双击,添加简单盒体碰撞。(在后续课程中会说明,如何解决这个问题。)

在这里插入图片描述

一,玩家相关

1,设置移动。
  • 1,框选蓝图节点,按住c则可添加注释。
  • 2,要将更改应用到具体的角色上,需要事件开始运行actor。

在这里插入图片描述

2,使用鼠标滚轮设置不同的移动速度,并将其输出字符串。

在这里插入图片描述

结果输出:

在这里插入图片描述

3,添加冲刺

1,在设置——项目设置——输入——添加一个操作映射 Sprint

2, 绑定按键。

在这里插入图片描述

3,设置两个变量,一个是正常速度,另一个是冲刺速度,最后判断是否冲刺

在这里插入图片描述

4,添加蹲伏

1,添加动作映射Crouching

2,添加时间轴

3,设置时间轴的长度为0.5s【蹲伏过度时间】

4,添加浮点型轨道,使其曲线变得平滑。

在这里插入图片描述

5,设置相机高度,实现蹲伏视角(没有必要,相机在胶囊体下,只要设置胶囊体即可)。

6,设置胶囊体高度,进一步使其高度降低。

在这里插入图片描述

7,解决一些逻辑(使用分支)

  • 当蹲伏时不能冲刺,如果冲刺将自动解除蹲伏状态。
  • 当冲刺时,蹲伏,则自动解除冲刺状态。

在这里插入图片描述

在这里插入图片描述

5,加血条和伤害测试

1,添加一个浮点型变量,用来表示生命值。

2,按住P即可减少血量。

3,如果血量为0,则重启游戏。

在这里插入图片描述

6,使用插件蓝图(控件),添加血条显示。

1,在内容浏览器中右键——用户节目——控件蓝图,命名为(WB_Healtbar),双击打开即可编辑。

2,添加一个水平盒体,然后加入文本和进度条。

在这里插入图片描述

3,进入图表,添加自定义事件,设置百分比,如果血量低于50则进度条显示为红色,如果不是则显示为绿色。

在这里插入图片描述

4,在开始运行蓝图中,创建控件,制订class为我们之前船舰的WB_Healtbar,然后添加到试图。

5,应用Healthbar控件,在Create WB Healtbar Widget 返回值提升为变量,获得引用WB_Healthbar,即可设置更新。

在这里插入图片描述

6,回到调试生命值。更新生命值

在这里插入图片描述

7,效果

在这里插入图片描述

7,后期处理体积(PostProcessVolume)

当角色受伤时,场景变暗。

1,添加PostProcess(后期处理组建),优先级设置为1,混合权重设置为0(设置场景中应用的比例)

2,随着生命值的降低,场景中饱和度随之降低。混合权重到0时,饱和度也到0,设置PostProcess。

在这里插入图片描述

3,添加和生命值的互动。

在这里插入图片描述

4,限制映射范围,表示,当生命值高于70,则混合权重为1,当生命值低于20时,混合权重输出为0,此时饱和度为0

5,效果。

在这里插入图片描述

在这里插入图片描述

二,场景相关

1,创建大门父项。
  • 在蓝图文件夹,创建Actor蓝图类,BP_Door_Parent

  • 创建静态网格体组件,设置静态网格体。

在这里插入图片描述

  • 添加事件列表

  • 设置时间轴,开门时间0.75s。

在这里插入图片描述

  • 设置更新旋转角度,勾选最近path防止旋转。

在这里插入图片描述

2,创建门子蓝图,并添加盒体碰撞。

  • 调整门的宽度。在父蓝图上,右键创建子类、

  • 在子蓝图中,添加盒体碰撞,调整大小。设置重叠碰撞。

    在这里插入图片描述

  • 在事件中,创建重叠事件。

    在这里插入图片描述

  • 设置蓝图

    在这里插入图片描述

  • 将门子蓝图放入场景。

    在这里插入图片描述

3,与其它Actor互动开门。

目的:创建一个压力板Actor,当有东西在其上时,门会打开。

  • 创建Actor,和上面的几个步骤一致。

  • 获得Door的父引用,创建一个变量,设置可编辑性。

    在这里插入图片描述

  • 编辑重叠事件。

  • 当有actor与其重叠时,则开门。

  • 当玩家或者其他actor离开时关门。重叠对象返回的数组第一个actor为自身,故需要设置为1(其它actor).

    在这里插入图片描述

  • 加入场景,为堆积物设置重叠事件。

    在这里插入图片描述

  • 设置压力板引用。

  • 效果

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gASBlDUT-1628239111359)(C:\Users\FLanWu\AppData\Roaming\Typora\typora-user-images\image-20210806142035782.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wmACCaow-1628239111361)(C:\Users\FLanWu\AppData\Roaming\Typora\typora-user-images\image-20210806142157813.png)]

4,互动开门
  • 添加一个操作映射,绑定到E键
  • 获取玩家控制器,处理所有玩家输入。当玩家与门进行重叠时,则触发启用输入,离开时禁用输入。
  • 当用户输入时,则可以进行轮换开门和关门动作(Flip Flop)。
  • 在视口中,添加文本组件,用于提示。设置渲染为游戏中隐藏。

在这里插入图片描述

效果:

在这里插入图片描述

5,使用蓝图接口开门
  • 创建蓝图接口BPI_Interaction,创建一个函数,“Interact”

  • 创建一个子蓝图。

  • 设置接口,右键实现方法,实现和4中的互动方法。

    在这里插入图片描述

  • 回到第一人称视角蓝图中。

  • 将门加入。

  • 设置通道监测球体(从一个点,向向量方向,画出一条线,碰到actor则可监测。)整个流程如下:

在这里插入图片描述

三,在场景中放入音效和粒子效果。

1,放置声音和效果。

在StarterContext中,放置声音和效果。当靠的越近声音越大。

在这里插入图片描述

2,在蓝图中放置声音和效果。

当子弹射击到物体表面时,产生爆炸。

  • 打开BP_FirstPersonProjectile蓝图类,修改在碰撞配置之后添加音效和粒子系统,如果没有碰撞,则在延迟3s后,产生碰撞。

在这里插入图片描述

效果:

在这里插入图片描述

2,在蓝图中放置声音和效果。

当子弹射击到物体表面时,产生爆炸。

  • 打开BP_FirstPersonProjectile蓝图类,修改在碰撞配置之后添加音效和粒子系统,如果没有碰撞,则在延迟3s后,产生碰撞。

[外链图片转存中...(img-nQLIUWwE-1628239111372)]

效果:

[外链图片转存中...(img-doxw75ML-1628239111377)]

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值