[UE5蓝图基础一]16.开关互动(类似使用开关开门效果)

思路:做出门把手上下坂动效果来代表开门或者关门 利用时间轴 转动X轴即可实现效果

创建蓝图类加入静态网格体 添加时间轴 添加浮点数轨道 添加2个关键帧 一个0,0 0.5,1

在人物的蓝图下写以下代码
在这里插入图片描述
然后回到开关蓝图

添加”点击时”事件
在这里插入图片描述
超出一定距离不允许使用开关 需要用到一个gate(门)的概念 利用盒体触发器 进入到盒体内(组件开始重叠时) gate打开 离开盒体触发器 gate关闭
在这里插入图片描述

### 如何在 Unreal Engine 5使用蓝图实现可控制开关键的风机 #### 创建基础 Actor 类 为了创建个可以开关的风机,首先需要新建个基于 `Actor` 的蓝图类。这允许自定义行为并将其放置到关卡中。 1. 打开 UE5 编辑器,在内容浏览器中右键点击选择“蓝图类”,然后选择“Actor”作为父类[^4]。 2. 将新创建的蓝图命名为 `BP_FanController` 或其他有意义的名字。 #### 添加组件 接下来向这个新的蓝图类添加必要的视觉和功能性组件: - **Static Mesh Component**: 表示风机外观模型。 - **Spot Light Component**(可选): 如果希望模拟风流动的效果光斑。 - **Box Collision Component**: 定义触发区域用于检测玩家接近。 ```cpp // BP_FanController Blueprint Class Components Setup AddComponent(StaticMesh); SetRelativeLocation(FVector(0, 0, 80)); // Adjust position as needed AddComponent(BoxCollision); SetGenerateOverlapEvents(true); // Enable collision events ``` #### 实现逻辑控制 利用事件图表(Event Graph),通过拖拽节点来建立交互逻辑链路,比如当玩家靠近时激活或关闭风机。 ##### 自动开启/关闭机制 假设想要实现种方式使得玩家进入特定范围后自动启动风机,并在玩家离开该区域之后停止它,则可以在 Box Collision 上绑定相应的输入处理函数。 ```blueprint Event BeginPlay -> Set Fan Off (Initial State) OnComponentBeginOverlap (BoxCollision) -> If Player Detected -> Turn On Fan & Play Sound Effect OnComponentEndOverlap (BoxCollision) -> Delay for a few seconds before turning off fan again. ``` ##### 键盘或鼠标按键操作 对于更灵活的手动控制系统来说,应该监听用户的输入指令,例如按下某个指定按钮即可切换当前状态(on/off)。 ```blueprint InputAction ToggleFanState Bound to Key 'F' or Mouse Button Function ToggleFanState() { Switch Node based on current state of the fan: Case IsOff -> Turn On Fan and update UI feedback; Case IsOn -> Turn Off Fan and provide visual/audio cues indicating action completed. } ``` #### 测试与调整 最后步是在编辑模式下调用预览功能测试整个过程是否按预期工作;必要时返回修改参数直到满意为止。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值