我在哪里放置平面几何的 sin() 公式来创建 three.js 粒子波?

Where do i place the sin() formula for plane geometry to create a three.js particle wave?

picture我试图在 three.js 中创建粒子波效果,但在尝试不同的方法时我失去了理智。任何人都知道我能做什么?我的代码在下面。

 // geomatry, material, mesh
    const geometry = new THREE.PlaneBufferGeometry(5, 5, 64, 64)

    const material = new THREE.PointsMaterial({color: 'aqua', 
    size: 0.007})

    const particles = new THREE.Points(geometry, material);
    particles.rotation.x = 181;

    scene.add(particles);

    // Lighting
    const light = new THREE.PointLight(0xffffff, 2)
    light.position.set(2, 3, 4);
    scene.add(light);


    const render = function() {
        requestAnimationFrame(render)
        
        
        //  particles.rotation.z += .005

        renderer.render(scene,camera);
    }
const positions = geometry.attributes.position.array;
let k = 0;
setInterval(() => {
    for (let i = 0; i < positions.length; i += 3) {
        positions[i + 2] = Math.sin(((i+2)%(65*3)) / 20+k) * 0.5;
    }
    k+=0.1;
    geometry.attributes.position.needsUpdate = true;
}, 60);