(0人评价)
零基础学虚幻4(UE4)第二季:用UE4蓝图制作FPS
价格 ¥ 98.00
该课程属于 零基础学虚幻4(UE4)全系列 请加入后再学习

动画蒙太奇

1. 什么是蒙太奇??

多个镜头的拼接。用在UE4里面就是多个动画的拼接。

同一个镜头拼接多次也是蒙太奇。

 

2. 怎么创建动画蒙太奇?

新建Animation Montage

将动画拖入编辑栏

如果想循环播放某个动画,在defautl中选中动画,再点击动画即可。

[展开全文]
Nico · 2020-11-04 · 动画蒙太奇 0

怎么使用混合动画 blend Space?

 

在动画蓝图中直接拖出 blendSpace ,然后修改相应的参数

 

得到角色的移动速度

TryGetPawn(拿到角色)-->GetVelocity(拿到速度)-->VectorLength(速度的值)

 

[展开全文]

动画合并 Blend Space 把两个动作合并

 

拖入两个动画,进入混合界面。

比如一个idle动画,一个run动画,在这两者之间混合。使用一个变量来控制他,是偏向idle还是偏向run。

[展开全文]
Nico · 2020-11-04 · 动画blendspace 0

使用挂点挂载枪械

 

在人物模型的Mesh上新加一个骨骼模型。

将骨骼模型的Parent Socket 挂载到相应的骨骼节点上。

将新加骨骼模型的旋转,位置都置为

[展开全文]
Nico · 2020-11-04 · 增加枪 0

挂载枪:

Animation Sequence

来源:3d软件,制作出的模型动作文件

 

挂载点加载:

1. 打开一个需要挂载模型的动画文件格式为Animation Sequence

2. 点开Skeleton Tree ,在骨骼上加一个挂点。

Add Socket --》 Add Preview Assert(加一个枪的模型来看效果)

[展开全文]
Nico · 2020-11-03 · 增加挂点 0

上下看

 

AddControllerPitchInput

 

整体不跟着移动:

玩家蓝图 :User Controller Rotation Pitch 勾选

 

摄像机不跟着移动:

新加一个相机在蓝图中,把相机和模型放在同一级。

[展开全文]
Nico · 2020-11-03 · 上下看 0

GetControlRotation 得到控制角色的旋转向量

CombineRotators 合并两个旋转向量

 

Add Conroller Yaw Input

增加绕Z轴旋转量

[展开全文]
Nico · 2020-11-03 · 转向 0

 

Roll --> X   飞机倾斜

Pitch --> Y 飞机拉升

Yaw --> Z 飞机拐弯

 

 

Rotator(Roll, Pitch, Yaw)

 

MakeRotator(Roll, Pitch, Yaw) 

GetForwardVector 从旋转量中得到正向方向 ,如果旋转量都为0,正方向就是X轴的正方向

[展开全文]
Nico · 2020-11-03 · roll·pitch·yaw 0

角色移动

 

1. 绑定键盘操作

Project Setting --> Engine Input

Axis Mapping 中是设置运动方向,上下左右的

给操作取个名字,绑定相应的键位,比如向前Forward绑定W键

 

2. 在人物蓝图中,绑定操作

到达Event Graph ,选择 MoveForward Action

调用位移函数 Add Movement Input

[展开全文]
Nico · 2020-11-03 · 向前移动 0

动画蓝图

 

动画蓝图基于骨骼

 

在人物蓝图中,设置Mesh的 Animation BluePrint为 Use Animation Blueprint ,选择制作好的动画蓝图。

 

 

[展开全文]
Nico · 2020-11-03 · 动画蓝图 0

开始游戏

 

进入游戏,鼠标可以进入游戏界面

Play In Editor:

Game Gets Mouse Control 勾上

 

自动控制玩家

选中玩家角色,Auto Possess Player 选中Player 0

 

[展开全文]
Nico · 2020-11-02 · 开始游戏 0

蓝图初探

 

蓝图类默认打开是新开一个窗口和主窗口不同。

可以通过 Editor Preference --> Assert Editor Open Location 中去修改。

[展开全文]
Nico · 2020-11-02 · 蓝图类 0

资源转移:

 

右键点击要转移的资源 --> Asset Actions --> Mirgrate 转移到新建工程的Contents目录中

 

 

[展开全文]
Nico · 2020-11-02 · 工程准备 0

linetracebychannel射 线追踪

 

get world location

获取方向是:get control rotation,然后转换成VECTOR,然后把这个数据归一化,即变成一个单位向量是用:normalize,用这个单位向量代表方向。

向量数乘的概念

方向 X 射程=终点的位置

乘法:vector*float

起点是坐标的原点,是射击的起点,所以需要将向量起点平移,所以用+节点,vector+vector, 叠加上方的getworldlocation 

 以上的数据做为end,终点

 

 

[展开全文]
bbsister · 2018-11-05 · 直线追踪 0
  • 怎么在虚幻4里面制作UI。 就是用户界面的意思

导入准心资源。输入Cross导入到Shooter工程去。

  • 双击进去把方框拖过去。

  • 在白色方框里填准心 鼠标按住别动然后输入cross然后会发现准心太小勾选下Size to content就可以了


 

然后准心怎么用呢。 双击打开新建节点就好了。


  • 怎么调整准心 把菊花调到最中间

  • 准心菊花跟矛点不对齐 点Aligbnebt 对齐XY 设置0.5这里调整0准心就可以了。出现的问题是准心的左上角跑最中间去把这个对齐改成0.5 0.5就好了。

  • Anchots这里可以设置 不懂角度的UI这个是菊花锚点选择的位置 各种位置都有。

 

[展开全文]
持之以很 · 2018-05-02 · UI 0
  • 做的就是状态。

  • 转换布尔只有一个转换的条件 是还是否。

  • 谁知道血量呢, 你创造的RobotShooter知道的血量、然后建立个函数为GetShooter

  • 在加一个返回变量这样转换结果返回了。让外面可以拿到结果。

  • Return Node 这个是返回节点,设置好说明外面的Shooter可以拿到这个数据

  • 一定要记得点GetShooter 然后打钩Pure

  • 想知道的是 这个角色有没有死, 最好的方式是提供一个函数叫 ISDead (是否已经死了)

  • 打开IsDead 我们怎么判断机器人死了呢。 就是Health(血量)小于等于0  >=0  如果填写小于0 那么要多打一下才会死.

  1.  

    按下B加鼠标左键(这个条件是是否死亡)然后调用IsDead 

  2.  

    那怎么解决这个问题呢

     

  3. 在这里面点击右边会出现个Loop Animation 动画循环。把打钩去了就不会一直播放死亡动画了。这个问题就解决了

  4. 那么第二个死亡的就是。当他们死亡后我们建立的个函数,让他们死亡后不在受到控制

  5.  

     

    会出现问题。

  6. 一个是进入死亡状态。 一直播放死亡状态

  7. 第二个  死亡了还是会跟着人物走。

  8.  

              是否死了是有一个返回值的。

    建立个返回值名字为Dead 布尔类型。只要判断死还是不死。

    还是切记要打钩Pure


    这样血量等于0的时候 就直接进入死亡状态了。

     

     

     

    容易忘记的,忘记勾选死亡播放重复动作, 尸体的跟随 切换来切换去执行线要连接好,否则会chuxi

[展开全文]

 

  • 动画状态机的作用是什么?

  1. 描述一个角色处于处于不同的状态。播放不同的状态。

  1. 加一个死亡的动作。 死亡也是有时间的。

  • addNew state machine 新建个状态机Locomotion  连接到  点击Locomotion这里面建立两个状态Alive跟Dead

  • 把这些剪切到Alive里面去

  • Dead 很简单把拖过去就可以了。

 

编辑会出现警告。说这个不能为空。

 

addNew state machine(动画状态机)

 

Alive和Dead分别作用是什么

 

 

[展开全文]
  • 在Take Damage 打印下字符串。 看下有没有效果。新建个节点Print String

  • 然后执行点链接起来 Health 链接过去会做个自动转换当调用Take Damgge那么就会打印出来 

  1. 链接过去是的话走True 不是的话走False

  • 然后在做个类型转换 

  • 如果机器人不掉血就是Take Danage里面没设置伤害值。 TakeDanage是受伤的意思

[展开全文]

 

 

 那怎么让机器人受伤呢。 还有那些用到前面学的概念

 

  •  机器人要受伤需要一个血量。

  1. 变量那新建个Health 选择浮点数

  • 然后编译下在最下面设置机器人的血量

  1. 还要写个函数,名字叫 机器人受伤的值减去伤害。 选择SET 设置伤害 

还要加个参数 

  •  GET获得当前 SHT是设置

  1. 在把health拖过来设置Get Health 输入-号有个

 

 

  • 然后怎么被使用, 编译下,然后打开FPPShooter

  • 然后就用到Branch  快捷是B+鼠标左键

  1. 最后涉及到类型判断,怎么判断你射击的是机器人跟墙?从OutHittuo一条线出来就有Break Hit Result 

[展开全文]

睡了,一个通宵才学到这里,深度理解很废精力。zhe

[展开全文]

授课教师

老师

课程特色

视频(46)
下载资料(1)

学员动态