1. A method for controlling presentation to a user of a primary user experience of a software application, the method comprising: displaying a third-person avatar in a 3D virtual scene that defines a user interface for controlling presentation of the primary user experience, the user interface being external to, different from, and provided at different times than the primary user experience; receiving a depth map from a depth camera imaging a physical space in which the user is located, the depth map including a plurality of pixels, each pixel having a depth value that indicates a relative depth of a surface imaged by that pixel; deriving from the depth map a virtual skeleton that provides a machine readable representation of the user, the virtual skeleton including a plurality of joints, each joint having a three-dimensional position; recognizing controlling movements of the user within the physical space via at least the three-dimensional positions of two or more different joints of the virtual skeleton; causing display of controlled movements of the third-person avatar within the 3D virtual scene so that the controlled movements visually replicate the controlling movements; detecting that the controlled movements include a predefined interaction of the third-person avatar with a user interface element displayed in the 3D virtual scene, the predefined interaction corresponding to selection of a characteristic to be implemented in connection with delivery of the primary user experience; and controlling presentation of the primary user experience in response to and based upon detecting the predefined interaction, such that the primary user experience varies—as a result of the implemented characteristic—from that which would occur in the event of detecting a different predefined interaction.