资讯 社区 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

粒子

Particle

此类描述json 粒子相关字段

Fields
Particle batchNum
分布加载批次id
Particle acceleration
粒子沿着x,y,z三个方向的加速度分量
Particle accelerationVar
粒子沿着x,y,z三个方向的加速度分量的变化值
Particle billboardType
粒子渲染朝向 billboard
Particle blendMode
混合模式
Particle boxLengthX
box发射器x方向长度
Particle boxLengthY
box发射器y方向长度
Particle boxLengthZ
box发射器z方向长度
Particle circleInRadius
圆环发射器的内圆半径
Particle circleOutRadius
圆环发射器的外圆半径
Particle colorEnd
粒子在生命周期末期时的颜色值
Particle colorEndVar
粒子在生命周期末期时的颜色值的变化值
Particle colorStart
粒子在生命周期初期时的颜色值
Particle colorStartVar
粒子在生命周期初期时的颜色值的变化值
Particle coneAngle
圆锥发射器的角度
Particle coneRadius
圆锥发射器的半径
Particle cylinderHeight
圆柱发射器高
Particle cylinderRadius
圆柱发射器半径
Particle emissionAccelecationMode
加速度产生方式
Particle emissionDuration
发射器每次发射时长
Particle emissionIdleDuration
发射间隔时长
Particle emissionIdleDurationVar
发射间隔时长变化系数
Particle emissionLoop
发射次数
Particle emissionRate
每秒发射粒子数
Particle emissionVelocityMode
速度的产生方式
Particle emitterPosition
发射器位置
Particle emitterRotationAxisAngleMax
发射器绕轴旋转参数
Particle emitterRotationAxis
发射器绕轴旋转角度最大值
Particle emitterRotationAxisAngleMin
发射器绕轴旋转角度最小值
Particle emitterRotationAxisVar
发射器绕轴旋转参数变化系数
Particle emitterShape
发射器形状
Particle emitterShapeParam
发射器形状具体参数
Particle emitterShapeStrectchScale
发射器形状的xyz的拉伸系数
Particle frameAnimated
是否采用序列帧动画
Particle frameColums
序列帧帧列数
Particle frameCount
总序列帧数
Particle frameDuration
每帧显示时长
Particle frameLoop
是否循环播放序列帧
Particle frameRandomOffset
初始序列帧随机范围
Particle frameRows
序列帧行数
Particle hemisphereRadius
半球发射器半径
Particle imuType
IMU类型
Particle lifeTimeMax
粒子生命时间的最大值
Particle lifeTimeMin
粒子生命时间的最小值
Particle MainStruct
粒子配置文件整体结构
Particle meshRadius
圆环发射器的内圆半径
Particle particleCountMax
粒子最大数
Particle particlePath
粒子json配置路径
Particle particleSystemSuppl
particleSystemSuppl配置
Particle rotationAxis
粒子在运动过程中存在公转轴,所有粒子都会沿着这个轴进行公转,本字段表示这个轴在xyz三个轴的分量
Particle rotationAxisAngleMax
粒子在运动过程中绕公转轴每秒转过的角度的最大值
Particle rotationAxisAngleMin
粒子在运动过程中绕公转轴每秒转过的角度的最小值
Particle rotationAxisVar
粒子在运动过程中存在公转轴,所有粒子都会沿着这个轴进行公转,本字段表示这个轴在xyz三个轴的分量的变化值
Particle sizeEndMax
粒子在生命周期末期的尺寸的最大值
Particle sizeEndMin
粒子在生命周期末期的尺寸的最小值
Particle sizeStartMax
粒子在生命周期初期的尺寸的最大值
Particle sizeStartMin
粒子在生命周期初期的尺寸的最小值
Particle sphereRadius
球体发射器半径
Particle spinAlignToSpeedDirection
粒子朝向
Particle spinAngleMax
粒子在存活过程中自转时每秒转过的角度的最大值
Particle spinAngleMin
粒子在存活过程中自转时每秒转过的角度的最小值
Particle stretchScale
粒子渲染时沿着x,y,z轴拉伸,由于粒子是二维,z无意义,仅为参数统一
Particle stretchType
拉伸方式
Particle textureName
纹理名称
Particle velocity
粒子沿着x,y,z三个方向的速度分量
Particle velocityVar
粒子沿着x,y,z三个方向的速度分量的变化值
Particle children
子节点
Particle name
开发者自定义,建议名称有具体含义
Particle position
模型在三维空间的位置
Particle rotation
模型旋转角度
Particle scale
模型在各个方向放大或缩小倍数
Particle touchable
是否可点击
Particle type
当前节点类型
Particle visible
是否显示
Public methods
Particle ParticleDemo()
Particle示例(simple_scene)
Particle ParticleSelfDemo()
Particle示例(particle_custom)

ParticleDemo ()

Particle示例(simple_scene)

sample:
{
"name": "custom",
"type": "particle",
"visible": 1,
"touchable": 0,
"batchNum":1,
"position": "0,0,0",
"scale": "1, 1, 1",
"rotation": "0,0,0",
"particleSystemSuppl":
{
   "particlePath": "res/particle_custom.json"
},
"children": []
}

ParticleSelfDemo

Particle示例(particle_custom)

sample:
{
"name": "liuxing",
"particleCountMax": 3,
"material": 
{
   "blendMode": "additive",
   "textureName": "star5.png",
   "frameAnimated": 0,
   "frameLoop": 0,
   "frameCount": 1,
   "frameColums": 1,
   "frameRows": 1,
   "frameRandomOffset": 0,
   "frameDuration": 300
},
"emission": 
{
   "emissionLoop": -1,
   "emissionRate": 1,
   "emissionDuration": 3000,
   "emissionIdleDuration": 0,
   "emissionIdleDurationVar": 0,
   "emitterPosition": "500, 1700, 200",
   "emitterRotationAxisAngleMin": 0,
   "emitterRotationAxisAngleMax": 0,
   "emitterRotationAxis": "0, 0, 0",
   "emitterRotationAxisVar": "0, 0, 0",
   "emitterShape": "box",
   "emitterShapeStrectchScale": "1,1,1",
   "emissionVelocityMode": "axis",
   "emissionAccelecationMode": "axis",
   "emitterShapeParam": 
   {
      "box": 
      {
         "boxLengthX": 100,
         "boxLengthY": 400,
         "boxLengthZ": 5
      }
   }
},
"particle": 
{
   "lifeTimeMin": 2000,
   "lifeTimeMax": 3000,
   "sizeStartMin": 5,
   "sizeStartMax": 5,
   "sizeEndMin": 5,
   "sizeEndMax": 5,
   "colorStart": "255, 255, 255, 128",
   "colorStartVar": "0, 0, 0, 0",
   "colorEnd": "255, 255, 255, 255",
   "colorEndVar": "0, 0, 0, 0",
   "velocity": "-800, -400, 0",
   "velocityVar": "0, 0, 0",
   "acceleration": "0, -80, 0",
   "accelerationVar": "0, 0, 0",
   "spinAngleMin": 0,
   "spinAngleMax": 0,
   "rotationAxisAngleMin": 0,
   "rotationAxisAngleMax": 0,
   "rotationAxis": "0, 0, 0",
   "rotationAxisVar": "0, 0, 0"
},
"render": 
{
   "imuType": 0,
   "billboardType": "billboard",
   "stretchScale": "0,0,0",
   "stretchType": "speed",
   "spinAlignToSpeedDirection": 1
},
"subEmitter":
{
   "birth": [
   {
      "name": "trail_1",
      "particleCountMax": 50,
      "material":
      {
         "blendMode": "additive",
         "textureName": "star5.png",
         "frameAnimated": 0,
         "frameLoop": 0,
         "frameCount": 1,
         "frameColums": 1,
         "frameRows": 1,
         "frameRandomOffset": 0,
         "frameDuration": 500
       },
      "emission": 
      {
         "emissionLoop": -1,
         "emissionRate": 80,
         "emissionDuration": 0,
         "emissionIdleDuration": 0,
         "emissionIdleDurationVar": 0,
         "emitterPosition": "0, 0, 0",
         "emitterRotationAxisAngleMin": 0,
         "emitterRotationAxisAngleMax": 0,
         "emitterRotationAxis": "0, 0, 0",
         "emitterRotationAxisVar": "0, 0, 0",
         "emitterShape": "box",
         "emitterShapeStrectchScale": "1,1,1",
         "emissionVelocityMode": "axis",
         "emissionAccelecationMode": "axis",
         "emitterShapeParam":
         {
            "box": 
            {
               "boxLengthX": 1,
               "boxLengthY": 1,
               "boxLengthZ": 1
            }
         }
     },
    "particle": 
    {
        "lifeTimeMin": 200,
        "lifeTimeMax": 500,
        "sizeStartMin": 5,
        "sizeStartMax": 10,
        "sizeEndMin": 1,
        "sizeEndMax": 1,
        "colorStart": "255, 255, 255, 255",
        "colorStartVar": "0, 0, 0, 0",
        "colorEnd": "255, 255, 255, 0",
        "colorEndVar": "0, 0, 0, 0",
        "velocity": "400, 200, 0",
        "velocityVar": "0, 0, 0",
        "acceleration": "0, 0, 0",
        "accelerationVar": "0, 0, 0",
        "spinAngleMin": 0,
        "spinAngleMax": 0,
        "rotationAxisAngleMin": 0,
        "rotationAxisAngleMax": 0,
        "rotationAxis": "0, 0, 0",
        "rotationAxisVar": "0, 0, 0"
     },
    "render":
    {
       "imuType": 0,
       "billboardType": "billboard",
       "stretchScale": "0,0.05,0",
       "stretchType": "speed",
       "spinAlignToSpeedDirection": 1
     },
     "subEmitter": 
    {
     "birth": [],
     "collision": [],
     "deadth": []
     }
   }
],
"collision": [],
"deadth": []
}
}

batchNum

version 23

分布加载批次id

sample:
"batchNum":1

acceleration

version 16

粒子沿着x、y、z三个方向的加速度分量

sample:
"acceleration" : "0, 0, 0"

accelerationVar

version 16

粒子沿着x、y、z三个方向的加速度分量的变化值

sample:
"accelerationVar" : "0, 0, 0"

billboardType

version 16

粒子渲染朝向。billboard:面向camera; horizontalBillboard:水平放置; verticalBillboard:垂直放置; none:不进行修正

sample:
"billboardType" : "billboard"

blendMode

version 16

混合模式。支持additive、multiply、alpha,默认additive

sample:
"blendMode" : "alpha"

boxLengthX

version 16

box发射器x方向长度

sample:
"boxLengthX" : 1500

boxLengthY

version 16

box发射器y方向长度

sample:
"boxLengthY" : 1500

boxLengthZ

version 16

box发射器z方向长度

sample:
"boxLengthZ" : 10

circleInRadius

version 16

圆环发射器的内圆半径

sample:
"circleInRadius" : 29

circleOutRadius

version 16

圆环发射器的外圆半径

sample:
"circleOutRadius" : 30

colorEnd

version 16

粒子在生命周期末期时的颜色值。四个分量分别代表r、g、b、a,参数范围:0~255

sample:
"colorEnd" : "255, 255, 255, 255"

colorEndVar

version 16

粒子在生命周期末期时的颜色值的变化值。四个分量分别代表r、g、b、a,参数范围:0~255

sample:
"colorEnd" : "255, 255, 255, 255"

colorStart

version 16

粒子在生命周期初期时的颜色值。四个分量分别代表r、g、b、a,参数范围:0~255

sample:
"colorStart" : "255, 255, 255, 255"

colorStartVar

version 16

粒子在生命周期初期时的颜色值的变化值。四个分量分别代表r、g、b、a,参数范围:0~255

sample:
"colorStartVar" : "0, 0, 0, 0"

coneAngle

version 16

圆锥发射器的角度

sample:
"coneAngle" : 110

coneRadius

version 16

圆锥发射器的半径

sample:
"coneRadius" : 500

cylinderHeight

version 16

圆柱发射器高

sample:
"cylinderHeight" : 500

cylinderRadius

version 16

圆柱发射器半径

sample:
"cylinderRadius" : 200

emissionAccelecationMode

version 16

加速度产生方式。axis:表示沿着xyz三个轴的方向去产生; shape:表示速度会沿着粒子初始位置与发射器位置连线方向产生; camera:粒子速度与相机的朝向一致 (值可通过accelecation和accelecationVar产生一定随机性)

sample:
"emissionAccelecationMode" : "axis"

emissionDuration

version 16

发射器每次发射时长。单位毫秒,参数范围:>0整数

sample:
"emissionDuration" : 3000

emissionIdleDuration

version 16

发射间隔时长。单位毫秒,参数范围:>0整数

sample:
"emissionIdleDuration" : 0

emissionIdleDurationVar

version 16

发射间隔时长变化系数。单位毫秒

sample:
"emissionIdleDurationVar" : 0

emissionLoop

version 16

发射次数。-1:无限循环; 0:一次; n:n次

sample:
"emissionLoop" : -1

emissionRate

version 16

每秒发射粒子数。参数范围:1~n

sample:
"emissionRate" : 200

emissionVelocityMode

version 16

速度的产生方式。axis:表示沿着xyz三个轴的方向去产生; shape:表示速度会沿着粒子初始位置与发射器位置连线方向产生(如:circle发射器形状下,当velocity的三个分量之和大于0时,会向外扩散,三个分量之和小于0时会向内收拢,其速度大小为velocity向量的模加上velocity_var的模范围内随机值); camera:粒子速度与相机的朝向一致 (值可通过velocity和velocity_var产生一定随机性)

sample:
"emissionVelocityMode" : "axis"

emitterPosition

version 16

发射器位置

sample:
"emitterPosition" : "500, 0, 2500"

emitterRotationAxis

version 16

发射器绕轴旋转参数

sample:
"emitterRotationAxis" : "0, 0, 0"

emitterRotationAxisAngleMax

version 16

发射器绕轴旋转角度最大值。参数范围: 0~n(度)

sample:
"emitterRotationAxisAngleMax" : 0

emitterRotationAxisAngleMin

version 16

发射器绕轴旋转角度最小值。参数范围: 0~n(度)

sample:
"emitterRotationAxisAngleMin" : 0

emitterRotationAxisVar

version 16

发射器绕轴旋转参数变化系数

sample:
"emitterRotationAxisVar" : "0, 0, 0"

emitterShape

version 16

发射器形状。box:长方体; sphere:球体; hemisphere 半球; cone:圆锥; cylinder:圆柱; circle :圆环; mesh:模型表面

sample:
"emitterShape" : "box"

emitterShapeParam

version 16

发射器形状具体参数。在选定形状之后要在这里配置相应的详细参数(数组类型)

sample:
"emitterShapeParam" : 
{
   "box": 
   {
      "boxLengthX": 1,
      "boxLengthY": 1,
      "boxLengthZ": 1
   },
   "sphere": 
   {
      "sphereRadius": 500
   },
   "hemisphere": 
   {
      "hemisphereRadius": 50
   },
  "cylinder": 
  {
     "cylinderRadius": 200,
     "cylinderHeight": 500
  },
  "cone": 
  {
     "coneRadius": 500,
     "coneAngle": 110
  },
  "circle": 
  {
     "circleOutRadius": 450,
     "circleInRadius": 350
  },
  "mesh": 
  {
     "meshRadius": 150
  }
}

emitterShapeStrectchScale

version 16

发射器形状的xyz的拉伸系。(用于制作椭圆等效果),参数范围:1~n

sample:
"emitterShapeStrectchScale" : "1,1,1"

frameAnimated

version 16

是否采用序列帧动画。1:采用;0:不采用

sample:
"frameAnimated" : 0

frameColums

version 16

序列帧帧列数。参数范围:1~n

sample:
"frameColums" : 3

frameCount

version 16

总序列帧数。参数范围:1~n

sample:
"frameCount" : 12

frameDuration

version 16

每帧显示时长。单位毫秒,参数范围:1~n

sample:
"frameDuration" : 100

frameLoop

version 16

是否循环播放序列帧。1:是; 0:否

sample:
"frameLoop" : 1

frameRandomOffset

version 16

初始序列帧随机范围。参数范围:0~frameCount

sample:
"frameRandomOffset" : 12

frameRows

version 16

序列帧行数。参数范围:1~n

sample:
"frameRows" : 4

hemisphereRadius

version 16

半球发射器半径

sample:
"hemisphereRadius" : 50

imuType

version 16

IMU类型。0:以地理坐标打开imu;1:以手机坐标打开imu。slam下打开imu的方式为0

sample:
"imuType" : 0

lifeTimeMax

version 16

粒子生命时间的最大值。单位毫秒,参数范围:1~n

sample:
"lifeTimeMax" : 6000

lifeTimeMin

version 16

粒子生命时间的最小值。单位毫秒,参数范围:1~n

sample:
"lifeTimeMin" : 3000

MainStruct

version 16

粒子配置文件整体结构,除个别独立参数(如name)外其他分属于以下5个部分: material为粒子贴图素材相关配置,如帧图片的配置等; emission为粒子发射器相关配置,如发射器位置、形状等; particle为粒子具体属性配置,如粒子颜色、速度、加速度等; render为粒子渲染相关配置,如渲染朝向、拉伸、贴图朝向等; subEmitter为子粒子系统相关配置

sample:
{
"material": {
 },
"emission":{
},
"particle":{
},
"render":{
},
"subEmitter":{
}
}

meshRadius

version 16

圆环发射器的内圆半径

sample:
"meshRadius" : 150

particleCountMax

version 16

粒子最大数。指可在屏幕上显示的最大数量,参数范围:0~n

sample:
"particleCountMax" : 1000

particlePath

version 16

粒子json配置路径

sample:
使用见:particleSystemSuppl字段 code

particleSystemSuppl

version 16

particleSystemSuppl配置

sample:
"particleSystemSuppl": 
{
   "particlePath": "res/particle_kongmingdeng.json"
},

rotationAxis

version 16

粒子在运动过程中存在公转轴,所有粒子都会沿着这个轴进行公转,本字段表示这个轴在xyz三个轴的分量

sample:
"rotationAxis" : "0, 0, 0"

rotationAxisAngleMax

version 16

粒子在运动过程中绕公转轴每秒转过的角度的最大值。参数范围:0~n(度)

sample:
"rotationAxisAngleMax" : 0

rotationAxisAngleMin

version 16

粒子在运动过程中绕公转轴每秒转过的角度的最小值。参数范围:0~n(度)

sample:
"rotationAxisAngleMin" : 0

rotationAxisVar

version 16

粒子在运动过程中存在公转轴,所有粒子都会沿着这个轴进行公转,本字段表示这个轴在xyz三个轴的分量的变化值

sample:
"rotationAxisVar" : "0, 0, 0"

sizeEndMax

version 16

粒子在生命周期末期的尺寸的最大值。参数范围:1~n

sample:
"sizeEndMax" : 40

sizeEndMin

version 16

粒子在生命周期末期的尺寸的最小值。参数范围:1~n

sample:
"sizeEndMin" : 40

sizeStartMax

version 16

粒子在生命周期初期的尺寸的最大值。参数范围:1~n

sample:
"sizeStartMax" : 60

sizeStartMin

version 16

粒子在生命周期初期的尺寸的最小值。参数范围:1~n

sample:
"sizeStartMin" : 60

sphereRadius

version 16

球体发射器半径

sample:
"sphereRadius" : 500

spinAlignToSpeedDirection

version 16

粒子朝向。1:表示粒子贴图与粒子速度方向同向; -1:表示粒子贴图与粒子速度方向反向; 0:表示粒子贴图方向始终是初始位置

sample:
"spinAlignToSpeedDirection" : 0

spinAngleMax

version 16

粒子在存活过程中自转时每秒转过的角度的最大值。参数范围:0~n(度)

sample:
"spinAngleMax" : 120

spinAngleMin

version 16

粒子在存活过程中自转时每秒转过的角度的最小值。参数范围:0~n(度)

sample:
"spinAngleMin" : 30

stretchScale

version 16

粒子渲染时沿着x,y,z轴拉伸。由于粒子是二维,z无意义,仅为参数统一

sample:
"stretchScale" : "0,0,0"

stretchType

version 16

拉伸方式。speed:根据速度大小拉伸;position:根据距离远近拉伸;constant:直接根据stretchScale的大小进行拉伸

sample:
"stretchType" : "speed"

textureName

version 16

纹理名称

sample:
"textureName" : "yinhua3.png"

velocity

version 16

粒子沿着xyz三个方向的速度分量

sample:
"velocity" : "-120, 0, -350"

velocityVar

version 16

粒子沿着xyz三个方向的速度分量的变化值

sample:
"velocityVar" : "70, 100, 100"

children

version 8

子节点,里面元素也是node,可以是任意类型(比如pod,particle),子节点格式同对应类型的配置一样

sample:
"children":[]

name

version 8

开发者自定义。建议名称有具体含义

sample:
"name":"xxx"

position

version 8

模型在三维空间的位置。三个数分别对应x、y、z坐标,如"1,1,0",默认为"0,0,0"

sample:
"position":"1,1,1"

rotation

version 8

模型旋转角度。三个数依次表示绕x、y、z轴的旋转角度,默认为"0,0,0"

sample:
"rotation":"0,0,0"

scale

version 8

模型在各个方向放大或缩小倍数。默认为"1,1,1",放大(scale > 1),缩小 (0 < scale < 1)

sample:
"scale":"1,1,1"

touchable

version 8

是否可点击。1:可点击;0:不可点击

sample:
"visible":0

type

version 8

当前节点类型

sample:
"type":"particle"

visible

version 8

是否显示。1:显示;0:隐藏

sample:
"visible":0
上一篇
交互
下一篇
滤镜