深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html

group添加modifier的方式:

modifier

An abstract class that allows to modify the behaviour of a group of particles over time.

调节器是为了给粒子生命周期过程提供外力的功能,给粒子加上物理功能

它有以下几种:

碰撞弹力设置 Collider

附加喷射器 EmitterAttacher

阻力系数 Friction

引力 Gravity

磁石 PointMass

随机力 RandomForce

旋转 Rotator

旋涡 Vortex

销毁区域  Destroyer

方向力区域 LinearForce

障碍物区域  Obstacle

Collider

Creates and registers a new collider.

Collider::create(float elasticity = 1.0f)

设置粒子的碰撞弹性系数

EmitterAttacher

附加喷射器,其实是附加了一个新的粒子group

需要将另加的这个group和group下面的emitter都传入,有一点要注意。这个group需要手动加入system

Friction

摩擦力,阻力系数

SPK::Friction::create(float value = 0.0f)

阻力范围0~1

Gravity

万向引力,重力

Gravity::create(const Vector3D & value = Vector3D())

重力大小由value的长度决定

PointMass

磁石

Modifier defining a point with a mass that attracts or repels particles.

在某个位置顶一个吸引或者排斥粒子的磁石

引力的大小是粒子到点质量的距离的平方的函数。

offset 的存在是防止距离为0时,出现无穷大的力

mass 为正数是引力  为负数是排斥力

RandomForce

随机力

minVector    最小的方向与力

maxVector   最大的方向与力

minPeriod    最小的受力时长

maxPeriod   最大的受力时长

Rotator

Modifier allowing to rotate particle with their rotation speed.

该修改器不是直接控制粒子角度,而是允许控制粒子旋转速度。

For this modifier to work, the PARAM_ANGLE must be enabled (and can be random in addition but not mutable or interpolated) and the PARAM_ROTATION_SPEED must be at least enabled in the model of the group of particles that are modified

注意这个不是单独使用的modifier需要加插值器interpolator,必须启用PARAM_ANGLE(并且可以是随机的,但不是可变的或插值的),并且必须至少在修改的粒子组的模型中启用PARAM_ROTATION_SPEED

Vortex

A modifier defining a vortex in the universe.

涡旋是围绕中心的旋转流动。 它的中心(涡旋眼)被定义为空间中的一条线

除了它的中心线,涡流由2个速度定义:
•旋转速度,定义涡旋眼周围的旋转速度。      rotationSpeed
•吸引速度,定义了粒子被涡旋眼吸引的速度。    attractionSpeed

ZonedModifier

与区域有关的调节器

An abstract modifier with a zone attached to it.

Destroyer

A Modifier that destroy particles.

进出此区域会销毁

LinearForce

A modifier applying a generic linear force on particles.

进出此区域会给一个方向力

Obstacle

一个障碍区域

bouncingRatio 反弹力

friction 摩檫力

[原][粒子特效][spark]调节器modifier的更多相关文章

  1. [原][粒子特效][spark]粒子系统system、主节点group、渲染器render

    深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html system: A class defining a complete sy ...

  2. [原][粒子特效][spark]事件action

    深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html group调用action的地方: 可以看到使用action的可以是出生一次 ...

  3. [原][粒子特效][spark]插值器interpolator

    深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html 插值器是体现粒子生命周期变化的功能 group使用到插值器的方式: 可以看到 ...

  4. [原][粒子特效][spark]发射器emitter

    深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html group添加emitter的方式: eimtter: 上图是spark源码 ...

  5. [原][粒子特效][spark]深入浅出osgSpark

    背景: 目前我使用的spark粒子特效库是2.0 这个库好像是原来鬼火引擎的一部分,需要从github上找 现在我要将其使用到我自己开发的基于osgearth开的三维地图引擎中 步骤: 1.编译spa ...

  6. [原][osg][粒子特效]spark粒子特效生成流程

  7. Qt移动应用开发(四):应用粒子特效

    Qt移动应用开发(四):应用粒子特效 上一篇文章介绍了Qt Quick是如何对帧动画进行支持的.帧动画的实现离不开状态机.而状态机.动画和状态切换(transitions)则是Qt框架的核心内容.也就 ...

  8. 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL

    周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...

  9. Mask裁切UI粒子特效或者3D模型

    刚好前几天有人问我这个问题,再加上新项目也可能用,所以这两天就研究了一下.其实如果粒子特效 和3D模型 都用RenderTexture来做的话就不会有裁切的问题,但是粒子特效用RenderTextur ...

随机推荐

  1. CXF+Spring+Hibernate实现RESTful webservice服务端实例

    1.RESTful API接口定义 /* * Copyright 2016-2017 WitPool.org All Rights Reserved. * * You may not use this ...

  2. maven编译项目报错,提示找不到符号或程序包XXX不存在

    我的原因是maven依赖的jar包都下载了,但是引用的同一个项目下其他模块jar包找不到 解决方法: 把需要的jar包在pom里添加依赖 再次运行项目,Maven Dependencies下就会多了几 ...

  3. Docker学习笔记之运行和管理容器

    0x00 概述 容器是基于容器技术所建立和运行的轻量级应用运行环境,它是 Docker 封装和管理应用程序或微服务的“集装箱”.在 Docker 中,容器算是最核心的部分了,掌握容器的操作也是 Doc ...

  4. php打乱数组二维数组、多维数组

    //这个是针对二维数组的!下面针对多维数组的乱序方法<?php function shuffle_assoc($list) { if (!is_array($list)) return $lis ...

  5. js条件判断if-else和switch、循环for和while

    条件判断和循环都使用{ }将代码块括起来,如果代码块只有一行,则可省略{ }. 在循环中,continue表示跳过当前循环继续进行下一次循环,break表示跳出整个循环. 1.条件判断if-else, ...

  6. 【Selenium专题】元素定位之CssSelector

    CssSelector是我最喜欢的元素定位方法,Selenium官网的Document里极力推荐使用CSS locator,而不是XPath来定位元素,原因是CSS locator比XPath loc ...

  7. linux日常管理

    1.压缩和解压 tar压缩tar -czf hxl_product.tar.gz ./product tar解压tar -xzvf hxl_app.tar.gz z选项会将该压缩文件直接解压到目录,要 ...

  8. 《学习OpenCV3》第14章课后习题

    1.在一条含有 N 个点的封闭轮廓中,我们可以通过比较每个点与其它点的距离,找出最外层的点.(这个翻译有问题,而且这个问题是实际问题) a.这样一个算法的复杂度是多少? b.怎样用更快的速度完成这个任 ...

  9. Vijos 1308 埃及分数 - 迭代加深

    描述 在古埃及,人们使用单位分数的和(形如1/a的, a是自然数)表示一切有理数.如:2/3=1/2+1/6,但不允许2/3=1/3+1/3,因为加数中有相同的.对于一个分数a/b,表示方法有很多种, ...

  10. Python3基础 list list()生成空列表

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...