
1 Experience: The feature of “bullet direction following movement direction” once puzzled me for a long time. I didn’t know how to implement it simply. After deep thinking and practice today, I finally achieved a simple implementation. (And it only requires AGM; no code or plugins are needed.)
2 Core Technology: A combination of AGM’s FaceDirectionSettings and ChangeAngleSettings nodes.
3 Implementation Steps:
(1) Set up your player, the bullet to be fired, BulletsSettings, and the action to fire the bullet, etc. (This part is not elaborated here.)
(2) In your bullet object, add two nodes: [FaceDirectionSettings] and [ChangeAngleSettings].
(3) First, configure the FaceDirectionSettings function in the VS action. (Object VS — Action Properties — Display Direction: Face…)
(4) Set the angle: (Open the Angle… node, enable [is_use_face direction], select the bullet’s sprite2d as the target node, then click [Add Node Rotation].)
4 Optimization:
Okay, the feature is now implemented, but there is a minor issue: on the first frame when the bullet appears, it uses the default angle and flashes briefly before adjusting its direction. This can also be resolved directly using VS.
(1) Disable the visibility of the bullet’s sprite2d as well. (Turn off the small eye icon on the right so the bullet is invisible when it first appears, giving it time to adjust its direction first.)

(2) In the first action, do nothing, but be sure to check the option for Display Direction: Face, and also enable the default function: Stay for at least one frame. (This way, while the bullet is invisible on the first frame, AGM has already adjusted its direction.)
(3) In the second action, execute unconditionally. Inside, also check the option for Display Direction: Face; leave other defaults as they are. Execute one action: Change your object’s property: Visibility — visible, enable it.
5 Okay, the effect shown at the top is now perfectly achieved!


