A computer based mixed reality method for placing virtual objects in a real world environment in proximity to a user of a mixed reality device, the mixed reality device being a mixed reality headset being configured to receive real-world environment data from sensors and to render a virtual object and a spatial mesh overlaid on the real-world environment in a mixed reality environment, the mixed reality environment displaying the virtual objects in the real world environment, the method comprising the steps of: displaying a virtual object; generating and displaying a bounding box around the virtual object, the bounding box comprising a plurality of faces corresponding to a plurality of exterior surfaces of the virtual object; generating and displaying a spatial mesh overlaying the surfaces of the real world environment; receiving a user selection of a first face of the bounding box from the plurality of faces; determining a hit point on the spatial mesh, the hit point being located where a ray starting at the position of the head of the user extending in the user's gazing direction intersects the spatial mesh; placing, upon a user input, the center position of the selected first face at the position of the hit point; generating and displaying a virtual ray from the center of each face of the bounding box towards the spatial mesh; displaying mating buttons on the spatial mesh at locations where the virtual rays intersect with the spatial mesh; and based on a user action indicating a selection of a mating button, moving the virtual object so that the center of the face of the bounding box where the ray extends towards the selected mating button is placed at the center position of the selected mating button. configured to receive real-world environment data from sensors and to render a virtual object and a spatial mesh overlaid on the real-world environment in a mixed reality environment, the mixed reality environment displaying the virtual objects in the real world environment, the method comprising the steps of: displaying a virtual object; generating and displaying a bounding box around the virtual object, the bounding box comprising a plurality of faces corresponding to a plurality of exterior surfaces of the virtual object; generating and displaying a spatial mesh overlaying the surfaces of the real world environment; receiving a user selection of a first face of the bounding box from the plurality of faces; determining a hit point on the spatial mesh, the hit point being located where a ray starting at the position of the head of the user extending in the user's gazing direction intersects the spatial mesh; placing, upon a user input, the center position of the selected first face at the position of the hit point; generating and displaying a virtual ray from the center of each face of the bounding box towards the spatial mesh; displaying mating buttons on the spatial mesh at locations where the virtual rays intersect with the spatial mesh; and based on a user action indicating a selection of a mating button, moving the virtual object so that the center of the face of the bounding box where the ray extends towards the selected mating button is placed at the center position of the selected mating button. displaying a virtual object; generating and displaying a bounding box around the virtual object, the bounding box comprising a plurality of faces corresponding to a plurality of exterior surfaces of the virtual object; generating and displaying a spatial mesh overlaying the surfaces of the real world environment; receiving a user selection of a first face of the bounding box from the plurality of faces; determining a hit point on the spatial mesh, the hit point being located where a ray starting at the position of the head of the user extending in the user's gazing direction intersects the spatial mesh; placing, upon a user input, the center position of the selected first face at the position of the hit point; generating and displaying a virtual ray from the center of each face of the bounding box towards the spatial mesh; displaying mating buttons on the spatial mesh at locations where the virtual rays intersect with the spatial mesh; and determining a hit point on the spatial mesh, the hit point being located where a ray starting at the position of the head of the user extending in the user's gazing direction intersects the spatial mesh; placing, upon a user input, the center position of the selected first face at the position of the hit point; generating and displaying a virtual ray from the center of each face of the bounding box towards the spatial mesh; displaying mating buttons on the spatial mesh at locations where the virtual rays intersect with the spatial mesh; and based on a user action indicating a selection of a mating button, moving the virtual object so that the center of the face of the bounding box where the ray extends towards the selected mating button is placed at the center position of the selected mating button.