# How to do a reverse particle system, with a twist

**URL:** <https://forum.babylonjs.com/t/how-to-do-a-reverse-particle-system-with-a-twist/20347>\
**Category:** Questions\
**Tags:** particles\
**Created:** [April 27, 2021, 12:29am UTC](https://forum.babylonjs.com/t/how-to-do-a-reverse-particle-system-with-a-twist/20347 "2021-04-27T00:29:59Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![pseudoCK](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/pseudock/32/50215_2.png) [@pseudoCK](https://forum.babylonjs.com/u/pseudoCK)\
**Post date:** [April 27, 2021, 12:29am UTC](https://forum.babylonjs.com/t/how-to-do-a-reverse-particle-system-with-a-twist/20347/1 "2021-04-27T00:29:59Z")

</div>

Hello all, I am browsing around in the Babylon.js forums or a Google search when I stumbled upon this interesting playground:

[https://playground.babylonjs.com/#PSK6N1](https://playground.babylonjs.com/#PSK6N1)

It was linked from a forum post but I cannot recall the origin of this discussion, but I was what I was looking for a reverse particle system where the particles were to flow inward to a source.

Anyways, I was toying around with it, I noticed that whenever the x and/or y axis of the sphere is modified, the pyramid angle of the particle motion is changed.

For my liking, I would like to understand in how to keep the pyramid directly straight below meaning a translation. All my methods have yielded unusual angles.

I tried to use `Mesh.rotation.x = Math.atan2(x,y)` method, I even tried the `BABYLON.Vector3.TransformNormalFromFloatsToRef()` in the `startPositionFunction()` ParticleSystem method and even a combination of both but I’m not sure what could be a possible idea for this interesting conundrum.

---

<div class="post-metadata">

**Author:** ![Evgeni\_Popov](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/evgeni_popov/32/4432_2.png) [@Evgeni\_Popov](https://forum.babylonjs.com/u/Evgeni_Popov)\
**Post date:** [April 27, 2021, 8:41am UTC](https://forum.babylonjs.com/t/how-to-do-a-reverse-particle-system-with-a-twist/20347/2 "2021-04-27T08:41:06Z")

</div>

It seems to me it is working: when you change the x/y position of the sphere, the pyramid still stays behind the sphere(?)

---

<div class="post-metadata">

**Author:** ![pseudoCK](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/pseudock/32/50215_2.png) [@pseudoCK](https://forum.babylonjs.com/u/pseudoCK)\
**Post date:** [April 28, 2021, 2:02am UTC](https://forum.babylonjs.com/t/how-to-do-a-reverse-particle-system-with-a-twist/20347/3 "2021-04-28T02:02:54Z")

</div>

Actually, I found my own answer. It was the `ParticleSystem.worldOffset` Vector3 property that did the job. I found it right after posting this question.

Thanks.
