In the demo itās 8000 I think. My code is super-optimized, so even 100,000 particles work without much delay,
At the start particles areā¦ well, they are always somewhat transparent, at the start they start with about 0.3 opacity, though that works multiplicatively, so if the sprite has transparent areas (which it does) - you end up with some transparency in those areas. I think thatās pretty clear though, so I think I didnāt get your question
About particle size, they are different sized, but the distribution is only about 33%, minumum size is 0.2 and maximum is 0.3 (in world space measurements, thatās about 20 and 30cm respectively).
hereās the particle definition if youāre interested:
{
"position": {
"x": 9.17416,
"y": -1.90031,
"z": 12.06082
},
"scale": {
"x": 1,
"y": 1,
"z": 1
},
"rotation": {
"x": 0,
"y": 0,
"z": 0,
"w": 1
},
"parameters": [
{
"name": "scale",
"itemSize": 1,
"defaultTrackValue": {
"itemSize": 1,
"data": [
1
],
"positions": [
0
]
}
},
{
"name": "color",
"itemSize": 4,
"defaultTrackValue": {
"itemSize": 4,
"data": [
1,
1,
1,
1
],
"positions": [
0
]
}
}
],
"preWarm": false,
"readDepth": true,
"softDepth": true,
"blendingMode": 0,
"layers": [
{
"imageURL": "data/textures/particle/smokeparticle.png",
"particleLife": {
"min": 1,
"max": 1.6
},
"particleSize": {
"min": 0.2,
"max": 0.3
},
"particleRotation": {
"min": 0,
"max": 0
},
"particleRotationSpeed": {
"min": 0,
"max": 0
},
"emissionShape": 1,
"emissionFrom": 1,
"emissionRate": 0,
"emissionImmediate": 4000,
"parameterTracks": [
{
"name": "color",
"track": {
"itemSize": 4,
"data": [
0.6431372549019608,
0.6039215686274509,
0.5372549019607843,
0.3,
0.6,
0.5764705882352941,
0.5215686274509804,
0.265,
0.7098039215686275,
0.6745098039215687,
0.615686274509804,
0
],
"positions": [
0,
0.7957639171068672,
1
]
}
},
{
"name": "scale",
"track": {
"itemSize": 1,
"data": [
0.9235456523622187,
0.9685843530893341,
1.0034300604871111
],
"positions": [
0,
0.31176470588235294,
0.7647058823529411
]
}
}
],
"position": {
"x": 0,
"y": 0.6,
"z": 0
},
"scale": {
"x": 0.9,
"y": 0.5,
"z": 0.65
},
"particleVelocityDirection": {
"direction": {
"x": 0,
"y": -1,
"z": 0
},
"angle": 0
},
"particleSpeed": {
"min": 0.1,
"max": 1.7
}
}
]
}
Particle engine itself is already in meep, so you can use that any time you like