Custom Focus Node designed for SceneKit, a part of ARKit. Requires at least iOS 13.
Focus node reacts to changes in camera angle and angular velocity with room for additional customizability using focus node velocity.
The implementation rotates the focus node depending on the orientation of the camera. For example, if the camera is rotated 45 degrees counterclockwise along the z-axis, the focus node will also do the same.
Additionally, scale and rotation transforms area also applied onto the focus node depending on how the camera's angular velocity changes along the x and y axes.
Focus Node Demo: