Godot 2D 粒子笔记

作者:godog
2019-03-18
10 6 0

Particles2D 面板属性

  • Emitting 发射粒子。默认值:true。
  • Amount 在一个发射周期内发射的粒子数量
  • Time
    • Lifetime 每个粒子将存在的时间量。默认值:1
    • One Shot 是否只发射一次。默认是:1
    • Preprocess 粒子系统一开始就好像它已经运行了这么多秒。
    • Speed Scale 粒子系统的运行速度缩放比例。默认值:1。
    • Explosiveness 粒子的发射周期内的发射时间。如果等于0,则周期内均匀发射,如果等于1,则周期一开始就全部发射,可以是小数。默认值:0。
    • Randomness 发射寿命随机比。默认值:0。
    • Fixed Fps
    • Fract Delta
  • Drawing
    • Visibility Rect
    • Local Coords 粒子是否使用父节点的坐标空间。如果为 false,则使用全局坐标。默认值:true。
    • Draw Order 粒子绘制顺序。使用 DRAW_ORDER_ *值。缺省值:DRAW_ORDER_INDEX
  • Process Material
    • Material 用于处理颗粒的材料。可以是 ParticlesMaterial 或 ShaderMaterial。
  • Texures
    • Texture 粒子纹理。如果 null 粒子将是正方形
    • Normal Map
    • H Frames 纹理中的水平框架的数量。(精灵图水平方向的图片数量)
    • V Frames 纹理中的垂直帧数。(精灵图垂直方向的图片数量)

ParticlesMaterial 面板

  • Trail(线索)
    • Divisor(除数) 发射器将发射除以 trail_divisor 粒子的量。剩余的粒子将被用作踪迹。
    • Size Modifile 轨迹粒子的大小将沿着这个 CurveTexture 变化。
    • Color Modifile 轨迹粒子的颜色会随着这个 GradientTexture 而变化
  • Emission Shape
    • Shape 粒子将从一个区域内产生并发射出去。使用 EMISSION_SHAPE_ *常量作为值。默认值:EMISSION_SHAPE_POINT。
  • Flags
    • Align Y
    • Rotate Y
    • Disable Z 如果真,粒子不会在 z 轴上移动。默认值:对于 Particles2D 为 true,对于粒子为 false。
  • Spread(扩散)
    • Spread 每个粒子发射时的初始方向范围从 +spread 到 -spread。默认值:45。
    • Flatness
  • Gravity(重力)
    • Gravity
  • Initial(初始) Velocity(速度)
    • Velocity 每个粒子的初始速度。
    • Velocity Random
    • Velocity Curve(曲线)
  • Angular(角度) Velocity
    • Velocity 应用于每个粒子的初始角速度。
    • Velocity Random
    • Velocity Curve(曲线)
  • Orbit(轨道的) Velocity
    • Velocity 应用于每个粒子的轨道速度
    • Velocity Random
    • Velocity Curve(曲线)
  • Linear Accel(加速度)
    • Accel 应用于每个粒子的线性加速度。
    • Accel Random
    • Accel Curve
  • Radial(径向) Accel
    • Accel 应用于每个粒子的线性加速度。
    • Accel Random 径向加速度随机比。默认值:0。
    • Accel Curve(曲线)
  • Tangential(切) Accel
    • Accel 切向加速度应用于每个粒子。切向加速度垂直于粒子的速度。
    • Accel Random 切向加速度随机比。默认值:0。
    • Accel Curve 每个粒子的切向加速度将沿着这个 CurveTexture 变化。
  • Damping(阻尼)
    • Damping 粒子失速的速率。
    • Damping Random 阻尼随机比。默认值:0。
    • Damping Curve 这个 CurveTexture 上的阻尼会有所不同。
  • Angle(角度)
    • Angle 应用于每个粒子的初始角度。
    • Angle Random 旋转随机比。默认值:0。
    • Angle Curve 每个粒子的旋转将沿着这个 CurveTexture 进行动画处理。
  • Scale
    • Scale 应用于每个粒子的初始缩放。
    • Scale Random
    • Scale Curve(曲线) 每个粒子的比例将沿着这个 CurveTexture 变化。
  • Color
    • Color 每个粒子的初始颜色。如果定义了 Particle2D 的纹理,它将乘以该颜色。
    • Color Random 每个粒子的颜色将沿着这个 GradientTexture 变化。
  • Hue(色调) Variation(变动)
    • Variation 应用于每个粒子的初始色调变化。
    • Variation Random 色调变化随机比。默认值:0。
    • Variation Curve(曲线) 每个粒子的色调将沿着这个 CurveTexture 变化。
  • Animation
    • Speed 粒子动画速度。
    • Speed Random
    • Speed Curve 每个粒子的动画偏移将沿着此 CurveTexture 变化。
    • Offset 粒子动画偏移。
    • Offset Random 动画偏移随机比例。默认值:0。
    • Offset Curve
    • Loop 动画是否循环。默认值:false。

制作火炬

新建 scene,根添加 Sprite,将火炬把手添加为 Sprite 的纹理,Sprite 下添加 Particles2D,在 Particles2D>Process Material>Material 新建 ParticlesMaterial,此时界面如下,红色圈出的白色点就是粒子(此时粒子是很小的白色方块,受重力影响方向为竖直向下,Particles2D 中的纹理为空的话,粒子会是正方形)

去掉重力影响,如下图

增加粒子射出速度,粒子自左向右射出,可以看到是从同一个点生成粒子向右朝不同方向分散发射,如下图 

使粒子从一块区域随机生成,修改扩散角度使粒子朝同一方向发射,而不是扇形,粒子默认是水平射出的,需将 Particles2D 旋转方向,操作后如下图

将粒子存活时间加长,显示到 Sprite 的后边,粒子放大,操作后如下图

修改缩放曲线,使粒子逐渐减小,如下图

修改颜色由白色渐变到橙色再渐变到红色,如下图

增加粒子数量,放大粒子所有速度属性,修改随机旋转速度,增加粒子加速度,如下图 

本文为用户投稿,不代表 indienova 观点。

近期点赞的会员

 分享这篇文章

您可能还会对这些文章感兴趣

参与此文章的讨论

暂无关于此文章的评论。

您需要登录或者注册后才能发表评论

登录/注册