Particle Life for macOS/Metal.
![Demo](https://camo.githubusercontent.com/a3eb7206a9a3a07daa35dc0fc4c502e1595087d815b0d3c6a951542177e5dda9/68747470733a2f2f696d672e796f75747562652e636f6d2f76692f65456e36673676792d69452f302e6a7067)
The force function described in the reference video.
$$force1(distance, attraction) = \left\{
\begin{array}{ll}
-1 + \frac{distance}{beta} & (distance \le beta) \\\
attraction * \frac{1-|2*distance-1-beta|}{1-beta} & (beta \lt distance \le 1)
\end{array}
\right.
\\\
(beta = 0.3)$$
$$force2(distance, attraction) = \left\{
\begin{array}{ll}
-1 + \frac{attraction+1}{beta} * distance & (distance \le beta) \\\
\frac{attraction}{beta-1} * (distance-1) & (beta \lt distance \le 1)
\end{array}
\right.
\\\
(beta = 0.65)$$
Combination of force1
and force2
.
$$force3(distance, attraction) = \left\{
\begin{array}{ll}
force1(distance, attraction) & (attraction \ge 0) \\\
force2(distance, attraction) & (attraction \lt 0)
\end{array}
\right.$$