欢迎光临散文网 会员登陆 & 注册

UE5.1_Niagara基础_官方内容示例_2.5

2023-03-14 11:46 作者:Winter惜曦  | 我要投稿
  • 2.5 Expressions【表达式】

    注:函数名、变量名、命名空间均区分大小写,命名空间为首字母大写

  • 正弦函数:sin()

    sin(0)=0

    sin(π/2)=1

    sin(π)=0

    sin(3π/2)=-1

    sin(2π)=0

  • 浮点函数:float()  【将里面的整数或字符串转换成浮点数】

  • 随机函数:rand() 

    rand(0)=0

    rand(1)=0或1

    rand(1.0f)=≥0且≤1的随机浮点数

  • 标准化函数:normalize()  【向量标准化后为单位长度=1的向量】

    normalize(0,1.0,1.0)=(0,0.707,0.707)

  • 向量积函数:cross(a,b)  【模长|c|=|a×b|=|a||b|sin<a,b>,UE中采用左手坐标系,因此使用左手螺旋法则确定向量积方向:当左手的四指从a能以不超过180度转向b时,竖起的大拇指方向为向量积的方向】

    cross(Particles.RandomVector, float3(0,8,0))

  • 判断语句: condition ? Ture : False  【问号前面为判断条件,判定为真时执行问号与冒号之间的语句,判定为假时执行冒号后面的语句

    Particles.NormalizedAge < 0.333 ? float4(1,0.1,0.1,1) : Particles.NormalizedAge < 0.575 ? float4(0.1,1,0.1,1) : float4(0.1,0.1,1,1)

  • 绝对值函数:abs()

    abs(Particles.NormalizedAge * 2.0f -1.0f)

  • 长度函数:length()

    length(Particles.Position - Emitter.InitialPosition)

  • 单取向量某一坐标:Particles.Position.x, Particles.Position.y,Particles.Position.z

  • Emitter.Age:发射器年龄,发射器生成时开始从零计时,不会随循环而归零

  • Engine.Time:游戏引擎启动时开始从零计时,重启引擎时归零


  • (此专栏为视频对应的文本知识,详细内容讲解请看对应视频,有疑问请到对应视频下方评论区寻找答案,无法找到答案时再在该评论区提出问题,勿在此专栏下方的评论区提出问题)


UE5.1_Niagara基础_官方内容示例_2.5的评论 (共 条)

分享到微博请遵守国家法律