目 录CONTENT

文章目录

虚幻引擎-蓝图可视化编程基础

hananww
2024-12-15 / 0 评论 / 0 点赞 / 14 阅读 / 0 字
温馨提示:
本文最后更新于2026-01-15,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

数据类型

  • Boolean

    • 布尔
  • Byte

    • 字节
    • 0-255之间的值
  • Integer

    • 整型
    • -2147483648与2147483647之间的值
  • integer64

    • 长整型
    • -9223372036854775808与-9223372036854775807之间
  • Float

    • 浮点
    • 带小数的值
  • Name

    • 命名(一段文本)
    • 识别事物的一段文本
  • String

    • 字符串
    • 字母和数字表示的字符串
  • Text

    • 文本
    • 向用户显示的文本,针对本地化文本采用此类型
  • Vector

    • 三维向量(矢量)
    • 由三个数字组成的向量,坐标(X,Y,Z)或 颜色(R,G,B)均是向量类型
  • Rotator

    • 三维旋转向量
    • 定义绕X,Y,Z轴旋转的一组数字
    • 对应的旋转量Roll,Pitch,Yaw
  • Transform

    • 三维变换向量
    • 定义位置、旋转、缩放
  • 其他

    • 结构体
    • 接口
    • 对象类型
    • 枚举

容器及容器方法(各种数据结构)

数组

  • 数组相关操作
    • 工具
      • MakeArray(创建数组)
      • For Each Loop
      • For Rach Loop with Braek
      • Get(A copy):
      • Get(A ref):
      • Reverse for Each Loop
    • 工具集
      Contains Item(包含项目)
      Insert(插入)
      Find Item(查找项目)
      Reverse(颠倒)
      Append Array(附加阵列)
      Filter Array(过滤器阵列)
      Swap Array Elements(交换阵列元素)
      Random Array Item from Stream (流送中的随机数组项目)
      Clear(清除)
      Last Index(上一索引)
      Set Array Elem(设置阵列元素)
      Shuffle(随机)
      Random Array Item(随机数组项目)
      Add(添加)
      Add Unique(添加唯一)
      Is valid Index(为有效索引)
      Identical(相同)
      Remove Index(移除索引)
      Remove Item(移除项目)
      Length(长度)
      Resize(重设大小)

集合

  • 集合相关操作
    • 工具集
      • Contains Item(包含项目)
      • Difference(差异)
      • To Array(到数组)
      • Intersection(交集)
      • Union(联合)
      • Clear(清除)
      • Add(添加)
      • Add Items(添加项目)
      • Remove(移除)
      • Remove Items(移除项目)
      • Length(长度)

映射

  • 相关操作
    • 工具
      • Make Map(创建映射)
    • 工具集
      • Contains(包含)
      • Find(查找)
      • Keys(关键帧)
      • Clear(清除)
      • Add(添加)
      • Remove(移除)
      • Length(长度)
      • Values(值)

程序流程节点

  • Branch
  • Switch
    • 接受参数类型
      • Int
      • String
      • Name
      • Enum
  • Do N
    • Reset 执行后会在执行N次
  • Do Once
    • Reset执行后会再执行一次
  • FlipFlop
    • 在A、B之间切换执行
  • ForLoop
    • 从First Index 到 Last Index
  • ForLoopWithBreak
    • 带有Break的For循环,它可以在循环过程中外部结束
  • Gate
    • 用来开启或关闭执行流,
      • 如果当前是Open则正常执行
      • 如果当前是Closed则阻断执行
      • Toggle是用来反转Open和Close状态的
      • StartClosed是用来标记起始是否为关闭状态
  • MultiGate
    • 有多个执行出口
    • Start Index 可以设置第一个出口的索引是哪一个
    • Loop 可以指定是否循环
    • Is Random 可以指定是否随机不按顺序执行
  • Sequence
    • 循序执行一系列事情
    • 不会等待上一节点执行完毕
  • WhileLoop
    • 相当于While循环
    • 每执行一次检查一下条件(Condition)是否为True,为True则继续,为False就跳出循环执行Complete

什么是蓝图宏库、蓝图函数库

蓝图函数库中可以定义若干个函数,这些函数都是全局函数,可以在任何蓝图中使用
创建蓝图宏库需要选择一个“基类”,这样蓝图宏库中就可以使用基类的成员

函数、宏

函数内无法调用delay节点,因为函数的调用时立即执行,等待结束
在宏内可以调用

函数与宏的区别

  • 宏本质是替换操作,但函数是逻辑单元。
  • 宏支持多逻辑针脚输入,并支持多逻辑针脚输出(宏不会被编译为逻辑单元)。
  • 过多使用宏将导致蓝图中节点膨胀,函数由于被编译诚逻辑单元,所有调用的地方均使用一个逻辑单元,因此不会膨胀。
  • 宏支持通配符传入传出,使类型传递更加灵活。
  • 在函数中调用宏,宏的 Local Variable 将变成函数的局部变量,在时间图表中调用宏, Local Variable 将变成成员变量。
  • 宏无法被重写,函数可以被重写(宏是无形的,函数是有形的)。
  • 类内部宏无法在外部通过成员对象调用,函数可以。
  • 复杂逻辑在函数中编写,结组宏的特点(支持多执行针脚输入)编写灵活的分支流程控制。

函数与事件的区别

  • 函数无法使用 Delay(函数调用完后就销毁,Delay 的异步逻辑则无法被通知到),事件可以。
  • 函数可以有返回值,事件没有。
  • 函数有局部变量,事件没有。
  • 事件可以被标记为网络同步,函数无法被标记网络同步。
  • 事件可以被绑定到调度器上,函数不行。
  • 事件只能是 Public 的,不能进行修饰。
  • 事件不能构建成常事件,函数可以定义为常函数

函数重载

通常我们会将一些通用函数,写在父类中。再继承到子类,以供子类使用。
比如我们6-7个子类会使用到同一函数,则该函数可以定义在父类中。

如果,父类的函数不满足子类的需求,那么子类就需要扩展、修改父类的函数。
这个过程就叫函数重载
我们可以在函数里选择要重载的函数
还可以在重载函数的同时,调用父类的原函数,

0

评论区