• 蓝图类(Blueprint Class)
    蓝图类是创建门、开关、可收集物品、可摧毁场景等交互资源的理想类型,包括组件,数据,功能脚本,封装成蓝图类可实现在关卡蓝图中多次创建实例使用。可添加几何体,摄像机,灯光,碰撞,粒子,UI等多种组件,具备继承特性即父类数据、脚本可被子类继承。
    Construction Script构造脚本是在编辑器中创建蓝图类实例或对实例进行修改的时候会自动触发
    Set Active设置组件**状态
    Set Visibility设置组件是否可见
    修改文本:
    如需修改包含继承关系的每个蓝图实例的文本内容
    可创建String变量点击眼睛使其为公有变量 可在场景编辑器中直接修改
    Set Text设置文本内容
    ConstructionScript实时修改 更直观快速

⚠️蓝图类无法直接在图表右键引用场景中的实例,需使用公有变量在场景中拾取相应类型实例
⚠️在蓝图类图表调用关卡蓝图中事件用ConsoleCommand 反过来则无效

继承的意义:修改父类,子类随之发生变化;修改子类,父类不受影响

  • 发报机(Event Dispatcher)
    作用:把一个事件的逻辑拆开成多个或者在多个图表中实现
    途径:1.通过发报机实现蓝图类 关卡蓝图之间的事件绑定;2.关卡蓝图 蓝图类之间互相调用发报机
    Bind绑定事件到发报机
    Call调用发报机
    Unbind解绑定
    Unbind All
    Event创建事件
    Assign创建发报机并绑定事件
    Create Event 把函数转变成事件

  • 接口(Interface)
    作用:同一接口可经由不同蓝图类调用来实现不同功能
    案例:鼠标拾取
    LineTraceByChannel 射线检测
    ConvertMouseToWorldSpace 鼠标平面位置转换至世界三维空间
    Show Mouse Cursor 显示光标模式 Get和Set
    UMG 虚幻动态图形 UI 设计器
    Widget 界面控件
    Create Widget创建界面控件
    Add to Viewport显示到场景
    Set Input Mode UI Only输入模式仅支持UI不支持游戏(视角 按键等)控制
    Set Input Mode Game Only输入模式仅支持游戏控制
    Set Input Mode Game And UI输入同时支持UI和游戏控制
    鼠标拾取接口创建及实现:
    1 在内容浏览器创建接口Blueprint Interface,添加函数
    2 打开需要调用该接口的蓝图类编辑器-选中Class Settings-点击Interfaces下方Add添加刚创建的接口-在图表中添加相应接口函数事件并实现功能
    3 在实现鼠标拾取功能的蓝图类中调用接口,将拾取对象转换至接口并调用接口函数
    Cast to XXX 强制转化至指定类型
    Does Implement Interface判断拾取对象是否已经实现接口

鼠标拾取案例
1、点击物体打印Hello
UE4学习笔记 04

2、点击物体**粒子组件
Toggle Active 切换组件**状态
UE4学习笔记 04
⬇️
UE4学习笔记 04

相关文章: