[en] ABSTRACT: For decades, Virtual Reality has been considered as the next revolution in the digital entertainment area. This field, highly linked to computer animation and videogames consists of introducing the user into a virtual environment, fully created by a computer, generating a physical and sensitive immersion into this virtual environment to the user. However, the development of VR technologies has been limited from the beginning by the high computational power that it requires. It has not been until very recently (early decade of 2010) that some VR devices have been appearing on the consumer market (Oculus Rift in 2013, HTC Vive, and more recently, Valve Index, among many others) thus allowing the general public to experience this technology. Most common and popular modern VR setups consist of a headset capable of displaying the virtual environment directly into the user's view area, as well as a pair of controllers, whose main use is as an input device. These devices are always being tracked by a set of external sensors that allow for their detection of location and rotation within the play area. Even though these systems work fairly well for the parts associated to their components (headset for the head, hands for each controller) they do not include a functionality to determine the location and rotation of any other body part, like, for example, feet. Some solutions have been already developed, they usually consist of some external devices, called trackers, allowing the detection of their location and position like the headset and controllers do. This solution requires an extra investment from the user, as well as extra time for setup and configuration, potentially reducing their interest in this technology. In this project a solution purely based on software is proposed to solve this problem, via the development of a computational system that, with only the knowledge of the location and rotation of the headset and both controllers, as well as the input they are capable of transmit, manages to replicate in a realistic manner over an avatar, not only the movement of the head and hands, but the movement of other body parts, like arms, feet, pelvis or legs, among many others. This Project has been developed in collaboration with Binarybox Studios, over the game engine Unreal Engine 4, version 4.22 and for the VR system HTC Vive as well as Oculus Rift.

[es] RESUMEN: Desde hace décadas se ha desarrollado y promovido la Realidad Virtual como la próxima revolución en el campo del entretenimiento digital. Este campo, fuertemente vinculado a la animación por computador y los videojuegos, consiste en introducir al usuario en un entorno virtual creado completamente por computador, generando en el usuario una sensación de inmersión física y sensorial en ese mundo digital. No obstante, el desarrollo de las tecnologías de realidad virtual se ha visto limitado desde el comienzo por el alto consumo computacional que requiere este proceso. Sólo muy recientemente (inicios de la década de 2010) han aparecido en el mercado dispositivos de realidad virtual (como las Oculus Rift en 2013, seguidas por las HTC Vive, y más recientemente Valve Index, entre otras) que han permitido el acceso del público general a esta tecnología. Los dispositivos de realidad virtual más comunes y populares consisten en unas gafas cuya finalidad es proyectar el entorno virtual en el campo de visión del usuario, además de un conjunto de mandos, con todas las entradas de control. Tanto las gafas como los mandos son monitorizados en todo momento por sensores externos que reciben su ubicación y rotación en tiempo real dentro del área de juego. Aunque estos sistemas funcionan razonablemente bien para las partes asociadas a sus componentes (cabeza para las gafas, manos para los mandos), no incorporan funcionalidades para determinar la posición y rotación de otras partes del cuerpo como los pies, por ejemplo. Se han desarrollado ya soluciones a este problema, usualmente en forma de componentes hardware adicionales denominados trackers, basados en sensores, que requieren una inversión extra por parte del usuario, además de un mayor tiempo de instalación y ajuste del sistema, lo cual puede desanimar su utilización. En este TFG se propone una solución puramente software para resolver este problema, mediante el desarrollo de un sistema computacional que, recibiendo solamente la posición y rotación de las gafas y de ambos mandos, así como la entrada propia de éstos, consiga replicar de manera realista sobre un avatar virtual, no solo el movimiento de la cabeza y manos, sino también de otras partes del cuerpo, como brazos, tronco, cadera, piernas y pies. Este trabajo se ha desarrollado en colaboración con la empresa Binarybox Studios, sobre el motor de videojuegos Unreal Engine 4 y para los sistemas de realidad virtual HTC Vive y Oculus Rift.