• 【UE 粒子练习】03——创建一个GPU粒子


    目的

    为了实现创建非常多的粒子的需求,我们就需要使用到GPU

    效果

    步骤

    1. 复制一份上篇博文中创建的粒子,这里重命名为“P_Sparks_GPU”

    打开“P_Sparks_GPU”,将生成的粒子数量改为2000,可以看到发射器最多只能生成1000个粒子

    如果想生成足够多的粒子,我们就需要将CPU粒子改为GPU粒子,在发射器中添加“类型数据-》新建GPU Sprites”

    我们需要删除如下两个模块才能看到发射器生成粒子

     

    如果觉得粒子太亮了,可以通过“生命内颜色”模块减少粒子的自发光程度

    删除“初始位置”模块

    当我们移动相机视角直到发射器不在视口内时,可以看到发射器就会停止生成粒子

    对于这种问题的解决方法是创建固定范围区域在该粒子周围,点击“边界-》设置固定边界”

    然后点击“重新开始关卡”

    此时可以看到即使发射器不在视口边界内,粒子还是会正常生成

     

    接下来我们希望GPU粒子任然会有碰撞效果,需要添加一个“碰撞-》碰撞”模块

    如果希望粒子反弹的高度低一些,可以通过减少“回弹力”的数值实现

    如果希望粒子碰撞后滑出的距离短一些,可以通过增大摩擦力实现

    如果希望滑出的距离远一些,可以通过减少碰撞模块中的摩擦力增加回弹力,增加生命周期模块中的生命周期,增加初始速度模块中的起始速度等方式实现

    添加“向量场-》局部向量场”模块

     

    向量场设置为“Vel_219”

    在视图选项中勾选向量场

    调整向量场缩放为20,20,20

    我们可以通过视口中的坐标轴来移动向量场

    紧密度可以控制粒子如何直接跟随场中的向量。当紧密度设置为1时,粒子直接从场中读取其速度,从而准确地跟随场。

    增加生命周期

    为了让粒子跑更远,增大向量场的强度

    我们可以通过添加“向量场-》向量场旋转率”来让向量场不停旋转

    此时效果如下

  • 相关阅读:
    学习pytorch7 神经网络的基本骨架--nn,module的使用
    openStack:学习openStack的前提知识(1)虚拟化以及KVM简介
    python绘制三维图
    前端工程化面试题及答案【集合】
    一文讲透为Power Automate for Desktop (PAD) 实现自定义模块 - 附完整代码
    如何渲染最原始的yuv视频数据?
    GreenPlum DB向GBase迁移_TIME类型
    服务器迁移踩的坑
    架构师成神之路总结,你值得拥有,走起
    【C语言刷LeetCode】面试题 10.09. 排序矩阵查找(M)
  • 原文地址:https://blog.csdn.net/ChaoChao66666/article/details/133083105