糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > UE4 蓝图制作三维弹球学习笔记(一)

UE4 蓝图制作三维弹球学习笔记(一)

时间:2023-04-19 17:34:58

相关推荐

UE4 蓝图制作三维弹球学习笔记(一)

UE4 蓝图制作三维弹球学习笔记(一)

1、BP_PinBall

Viewport

给小球Static Mesh作为根节点并添加模型,选中Simulate Physics增加物理特性。添加声音组件Audio作为子组件。

Event Graph

(1)、防止小球飞起。使用LineTraceByChannel从小球位置发射射线到小球位置Z轴-500位置。触碰地面返回OutHit(射线命中的第一个物体),再选择Break Hit Result选取Impact Normal(射线碰撞物体切面的单位法向量)。Impact Normal取负 × StickKnes(自定义变量粘合力) × Delta Seconds(每一帧执行所花时间)将最后结果(Vector)赋给Add Impulse。

(2)、根据小球速度设置声音和音调。Get Velocity(小球当前速度) 使用VectorLength变为float÷小球的最大速度(游戏运行测试所得大约值)。获得一个0~1的float音量值,使用Clamp(float)限制最大值和最小值。将音量值传给Set Volume Multiplier(音量)和Set Pitch Multiplier(音调)。

2、BP_Bumper

Viewport

添加Static Mesh作为根组件使用BumperBase模型,再添加Static Mesh作为子组件使用BumperBot模型。添加Capsule Collision作为碰撞组件,选择OverlapAllDynamic(仅作为触发器不会有阻挡效果)。添加PointLight位于BumperBase中心。

Event Graph

(1)、与Bumper碰撞时为小球添加一个反弹速度(直接添加力的话效果不好)。add Custom Event命名为Bump,在Input中添加名字为Ball类型为BP_PinBall的变量。使用Set Physics Linear Velocity为小球添加速度。通过GetActorLocation获取小球位置和Bumper位置使用Get Unit Direction Vector创建方向的单位向量×变量,从而获得速度向量。将速度向量赋给Set Physics Linear Velocity。

(2)、与Bumper碰撞时在Bumper上添加声音。使用Spawn Sound Attached为Bumper Base添加一个声音。

(3)、与Bumper碰撞时BumperBot往下移动。使用SetRelativeLocation(设置相对距离)通Lerp(Vector)线性移动BumperBot。使用TimeLine根据时间将Alpha值赋予lerp(Vector)。

(4)、与Bumper碰撞时使Bumper表面材质变为发光质感。使用Set Scalar Parameter Value on Materials调节材质中Emissive变量值,同样通过Lerp和TimeLine提供的Alpha值完成线性变换。

(5)、与Bumper碰撞时使PointLight亮度提高。使用Set Intensity改变PointLight亮度,同样通过Lerp和TimeLine提供的Alpha值完成线性变换。。

如果觉得《UE4 蓝图制作三维弹球学习笔记(一)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。