[原][粒子特效][spark]调节器modifier
深入浅出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
磁石
A Modifier defining a point with a mass that attracts or repels particles.
在某个位置顶一个吸引或者排斥粒子的磁石
引力的大小是粒子到点质量的距离的平方的函数。
offset 的存在是防止距离为0时,出现无穷大的力
mass 为正数是引力 为负数是排斥力
RandomForce
随机力
minVector 最小的方向与力
maxVector 最大的方向与力
minPeriod 最小的受力时长
maxPeriod 最大的受力时长
Rotator
A 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的更多相关文章
- [原][粒子特效][spark]粒子系统system、主节点group、渲染器render
深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html system: A class defining a complete sy ...
- [原][粒子特效][spark]事件action
深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html group调用action的地方: 可以看到使用action的可以是出生一次 ...
- [原][粒子特效][spark]插值器interpolator
深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html 插值器是体现粒子生命周期变化的功能 group使用到插值器的方式: 可以看到 ...
- [原][粒子特效][spark]发射器emitter
深入浅出spark粒子特效连接:https://www.cnblogs.com/lyggqm/p/9956344.html group添加emitter的方式: eimtter: 上图是spark源码 ...
- [原][粒子特效][spark]深入浅出osgSpark
背景: 目前我使用的spark粒子特效库是2.0 这个库好像是原来鬼火引擎的一部分,需要从github上找 现在我要将其使用到我自己开发的基于osgearth开的三维地图引擎中 步骤: 1.编译spa ...
- [原][osg][粒子特效]spark粒子特效生成流程
- Qt移动应用开发(四):应用粒子特效
Qt移动应用开发(四):应用粒子特效 上一篇文章介绍了Qt Quick是如何对帧动画进行支持的.帧动画的实现离不开状态机.而状态机.动画和状态切换(transitions)则是Qt框架的核心内容.也就 ...
- 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL
周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...
- Mask裁切UI粒子特效或者3D模型
刚好前几天有人问我这个问题,再加上新项目也可能用,所以这两天就研究了一下.其实如果粒子特效 和3D模型 都用RenderTexture来做的话就不会有裁切的问题,但是粒子特效用RenderTextur ...
随机推荐
- CXF+Spring+Hibernate实现RESTful webservice服务端实例
1.RESTful API接口定义 /* * Copyright 2016-2017 WitPool.org All Rights Reserved. * * You may not use this ...
- maven编译项目报错,提示找不到符号或程序包XXX不存在
我的原因是maven依赖的jar包都下载了,但是引用的同一个项目下其他模块jar包找不到 解决方法: 把需要的jar包在pom里添加依赖 再次运行项目,Maven Dependencies下就会多了几 ...
- Docker学习笔记之运行和管理容器
0x00 概述 容器是基于容器技术所建立和运行的轻量级应用运行环境,它是 Docker 封装和管理应用程序或微服务的“集装箱”.在 Docker 中,容器算是最核心的部分了,掌握容器的操作也是 Doc ...
- php打乱数组二维数组、多维数组
//这个是针对二维数组的!下面针对多维数组的乱序方法<?php function shuffle_assoc($list) { if (!is_array($list)) return $lis ...
- js条件判断if-else和switch、循环for和while
条件判断和循环都使用{ }将代码块括起来,如果代码块只有一行,则可省略{ }. 在循环中,continue表示跳过当前循环继续进行下一次循环,break表示跳出整个循环. 1.条件判断if-else, ...
- 【Selenium专题】元素定位之CssSelector
CssSelector是我最喜欢的元素定位方法,Selenium官网的Document里极力推荐使用CSS locator,而不是XPath来定位元素,原因是CSS locator比XPath loc ...
- linux日常管理
1.压缩和解压 tar压缩tar -czf hxl_product.tar.gz ./product tar解压tar -xzvf hxl_app.tar.gz z选项会将该压缩文件直接解压到目录,要 ...
- 《学习OpenCV3》第14章课后习题
1.在一条含有 N 个点的封闭轮廓中,我们可以通过比较每个点与其它点的距离,找出最外层的点.(这个翻译有问题,而且这个问题是实际问题) a.这样一个算法的复杂度是多少? b.怎样用更快的速度完成这个任 ...
- Vijos 1308 埃及分数 - 迭代加深
描述 在古埃及,人们使用单位分数的和(形如1/a的, a是自然数)表示一切有理数.如:2/3=1/2+1/6,但不允许2/3=1/3+1/3,因为加数中有相同的.对于一个分数a/b,表示方法有很多种, ...
- Python3基础 list list()生成空列表
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...