Honestly, I don't know why this flipping happens. But you can use the Particle Instance modifier instead of the Rendered as Object method. The advantage is that the grass does not flip and it can bend in the direction of the wind (and not to the left or right).
To use the Particle Instance modifier method to the following:
- in the Particle Settings of the Grass (plane) reset the Render > Render As value to
Path
- select the grass blade (Plane.003), and move it to the world origin with Shift+S & Selection to Cursor (make sure the 3D Cursor is at world origin like in the uploaded blend file)
- in Edit mode, straighten the grass blade. Then in Object mode, apply the Scale to the object with Ctrlt+A & Scale. Just to note, it's important that Scale, Rotation and Location are applied and object's origin is at world origin. This should be now the case:
- add a Particle Instance modifier, move it up before the Solidify modifer, and select the Grass (plane) object + ParticleSystem and tick the
[X]
Create Along Path checkbox:
The result should look like this:
Now the grass bends in the right direction and does no longer flip direction but it twitches in the wind when the animation runs. To get rid of this behavior and to add more realism you can enable [X]
Hair Dynamics in the Particle Settings of the Grass plane and adjust a few settings:
- set Hair Dynamics > Structure > Vertex Mass to
0.1 kg
. This influences the inertia
- set Hair Dynamics > Structure > Stiffness to
2.500
- and reset Field Weights > Wind to
1.000
so the wind has full influence again.
- if the grass blade looks blocky then increase the Viewport Display > Strand Steps. There is also an equivalent setting for the render (Render > Path > Steps).
Final result:
Variations
The Particle Instance modifier lets you randomize the rotation, and size. The two Layers which are vertex colors can be used in the material shader to change to color or texture mapping.
For a completely different geometry, you need to create a new model and add another particle system. Unfortunately, it is not possible to specify a collection with multiple objects as in the Render As method.