VB = {
gravity;
var positionData = new Float32Array(numParticles * 3);
var colorData = new Float32Array(numParticles * 3);
for (var i = 0; i < numParticles; ++i) {
var vec3i = i * 3;
positionData[vec3i] = Math.random() * 2 - 1;
positionData[vec3i + 1] = Math.random() * 2 - 1;
positionData[vec3i + 2] = Math.random() * 2 - 1;
let [r,g,b] = colorSettings.particleColor();
colorData[vec3i] = r;
colorData[vec3i + 1] = g;
colorData[vec3i + 2] = b;
}
var positionsA = app.createVertexBuffer(picogl.FLOAT, 3, positionData);
var velocitiesA = app.createVertexBuffer(picogl.FLOAT, 3, positionData.length);
var positionsB = app.createVertexBuffer(picogl.FLOAT, 3, positionData.length);
var velocitiesB = app.createVertexBuffer(picogl.FLOAT, 3, positionData.length);
var colors = app.createVertexBuffer(picogl.FLOAT, 3, colorData);
return {positionsA, velocitiesA, positionsB, velocitiesB, colors};
}