A computer-implemented method for interacting with objects in an artificial reality environment, the method comprising: tracking a portion of a hand of a user and setting a control point based on the tracked portion of the hand of the user; tracking a point on a body of the user and setting an origin point at the tracked point on the body of the user; determining a projection orientation centered on a line that passes through the control point and the origin point; casting a ray projection from the control point, outward from the user, along the projection orientation; and performing an action in relation to one or more of the objects in the artificial reality environment based on one or more locations of the ray projection, wherein the one or more objects are intersected by the ray projection; wherein the point on the body of the user is a first point on the body of the user and wherein the method further comprises: identifying one or more origin transition factors; determining, based on the one or more origin transition factors, that the origin point should move to a second tracked point on the body of the user; and moving the origin point from the first point on the body of the user to the second point on the body of the user; characterised in that: the one or more origin transition factors include a tracked user gaze direction; and the determination that the origin point should move comprises: determining an angle associated with the user gaze direction, the angle formed by the user's gaze and a plane which is perpendicular with the floor; and when the user's gaze travels upward, and in response to determining that the angle is above a threshold, selecting a high interaction mode in which the second point on the body of the user is below the first point on the body of the user. tracking a portion of a hand of a user and setting a control point based on the tracked portion of the hand of the user; tracking a point on a body of the user and setting an origin point at the tracked point on the body of the user; determining a projection orientation centered on a line that passes through the control point and the origin point; casting a ray projection from the control point, outward from the user, along the projection orientation; and performing an action in relation to one or more of the objects in the artificial reality environment based on one or more locations of the ray projection, wherein the one or more objects are intersected by the ray projection; wherein the point on the body of the user is a first point on the body of the user and wherein the method further comprises: identifying one or more origin transition factors; determining, based on the one or more origin transition factors, that the origin point should move to a second tracked point on the body of the user; and moving the origin point from the first point on the body of the user to the second point on the body of the user; characterised in that: the one or more origin transition factors include a tracked user gaze direction; and the determination that the origin point should move comprises: determining an angle associated with the user gaze direction, the angle formed by the user's gaze and a plane which is perpendicular with the floor; and when the user's gaze travels upward, and in response to determining that the angle is above a threshold, selecting a high interaction mode in which the second point on the body of the user is below the first point on the body of the user. the one or more origin transition factors include a tracked user gaze direction; and the determination that the origin point should move comprises: determining an angle associated with the user gaze direction, the angle formed by the user's gaze and a plane which is perpendicular with the floor; and when the user's gaze travels upward, and in response to determining that the angle is above a threshold, selecting a high interaction mode in which the second point on the body of the user is below the first point on the body of the user.