# CWD-Sim: Real-Time Simulation on Grass Swaying with Controllable Wind Dynamics
## 5 Conclusions  
In this paper, we presented CWD-Sim, a real-time simulation algorithm for grass deformation and wind dynamic control in complex scenes. Our algorithm is capable of naturally simulating the effects of wind on grasses while allowing designers to have control over the wind flow in complex scenes with obstacles or other structures. By grouping grass blades and simplifying the force calculation, our algorithm significantly reduces computational load and achieves faster and more efficient simulations. Our method also allows for grass-model variation and efficient shadowing, which further enhances the realism of the simulation. However, we acknowledge some limitations of our method. While our algorithm is well suited for animating large numbers of homogeneous grass blades, it focuses on the aggregate behaviors, such as wind-induced swaying, and therefore may not be appropriate for real-world physics-based animation, which would require a physics-based simulation technique. Another drawback of our method is 2D wind dynamics. Our proposed grass deformation is based on a 2D fluid simulation. Therefore, it is impossible to reproduce certain 3D fluid behaviors, such as the three-dimensional vortex observed in the real world. However, we believe that the 3D deformation can be approximated with the 2D simulation with simple quadratic equations that we proposed. Also, our method did not take into account collisions between grass blades. To solve this problem, a more complex calculation method is needed. If our quadratic equation is to reflect the deformation of the adjacent grass blades, the collision information can be extracted and used. We will need to discuss this further in the future to incorporate the collision of many grasses into our processing simulations. According to experiments, our methods appeared a little slower than certain prior methods such as [6] in performance, which had 43.5 fps for 50,000 grass blades compared to our 35 fps. However, our method did not downgrade much in performance as the number of blades increased. For example, while the [6] drops to 15.9 fps at 200,000 blades, our method maintains a frame rate of 28 fps even with 500,000 blades as shown in Figure 9, showing its advantage in large-scale simulations. Additionally, we have also conducted experiments on the latest hardware specification and can see that it shows excellent real-time performance at 29 fps at 7,000,000 of grass count as shown in Table 2. \begin{table}
\begin{tabular}{c c c c c c} \hline \hline \multirow{2}{*}{**Grass Count**} & **Wind** & **Grass** & \multirow{2}{*}{**Grass Shadow (ms)**} & \multirow{2}{*}{**Grass Rendering (ms)**} & \multirow{2}{*}{**FPS**} \\  & **Simulation (ms)** & **Simulation (ms)** & & & \\ \hline
1,000,000 & 5.9 & 0.1 & 0.1 & 3.3 & 87 \\
2,000,000 & 5.9 & 0.1 & 0.1 & 7.5 & 69 \\
3,000,000 & 5.9 & 0.1 & 0.1 & 11.4 & 51 \\
4,000,000 & 5.9 & 0.3 & 0.2 & 15.6 & 42 \\
5,000,000 & 5.9 & 0.6 & 0.4 & 19.4 & 36 \\
6,000,000 & 5.9 & 0.7 & 0.5 & 23.2 & 32 \\
7,000,000 & 5.9 & 0.7 & 0.5 & 27.4 & 29 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Performance metrics of grass simulation. Figure 11: Two winds are changing direction over time after bending. (**a**) has been changed to (**b**). In future research, we would like to incorporate level of detail (LOD) and culling techniques for optimization and complement them with different types of models, such as flowers, and different types of grasses. In the course of our current experiments, we have encountered a challenge in simulating the effects of strong winds on grass blades. We found that too much wind can cause grass blades to become too dark and flat. Although allowing the user to adjust the wind strength could potentially mitigate this problem, it could also lead to tedious control by the user. An alternative approach was considered instead, such as limiting the maximum wind strength, but this may cause the grass blades to appear unnaturally rigid.