Hay muchas matemáticas detrás de escena de una aplicación de realidad virtual (solo “VR” de ahora en adelante), y trataré de explicarlo desde un punto de vista más técnico, ya que ninguna de las respuestas reales lo aborda esta perspectiva
En primer lugar, vale la pena señalar que hay muchos niveles, capas o tipos de realidad virtual y, dependiendo de cuál estemos hablando, las matemáticas serán menos o más complejas (¡pero siempre estarán allí!). Como no podemos definir genéricamente las matemáticas de una aplicación de realidad virtual, apuntaré a la realidad virtual móvil basada en videos 360 y a la realidad virtual de gama alta basada en modelos 3D. También apuntaré solo a los auriculares VR y no a las CUEVAS [1] o cualquier otro tipo de sistemas VR, aunque los conceptos básicos son bastante similares.
VR móvil basado en imágenes / video 360: este rango del espectro VR se refiere a aquellas experiencias en las que desliza su teléfono móvil en un auricular y lo pone para ver una imagen o video 360 agradable donde puede girar la cabeza para visualizar el Todo el entorno. En este caso, la gran parte del procesamiento y las matemáticas se realizan en su teléfono móvil y los auriculares solo se usan para sostenerlo frente a sus ojos y brindarle el zoom correcto a través de las lentes para que tenga un campo de visión y enfoque aceptables . Sin ser exhaustivo, las matemáticas en este caso incluyen lo siguiente:
- Cómo obtener una función a partir de su definición recursiva
- ¿De quién recibió el nombre el álgebra?
- ¿Qué hace que las matemáticas sean tan exitosas para describir la naturaleza y hacer predicciones sobre la naturaleza?
- ¿Cómo es ser estudiante de matemáticas en Harvey Mudd?
- ¿Cómo es el proceso de selección de la Olimpiada Internacional de Matemáticas (OMI) en su país?
- Una imagen / video 360 es solo una textura de imagen / video aplicada al interior de una esfera (igual que aplicar una textura a una esfera invertida). Esto se denomina mapeo de textura en gráficos de computadora y, naturalmente, requiere un poco de matemática para mapear correctamente cada uno de los píxeles de la imagen con los polígonos correspondientes (generalmente triángulos) que dan forma a la esfera. Como es una esfera, este proceso también se denomina mapeo de textura esférica .
- Una vez que tenemos nuestra esfera correctamente asignada con la imagen, todo lo que tenemos que hacer es colocar una cámara virtual en el centro de la esfera y hacer que cambie de orientación dinámicamente en función de la dirección que el usuario está mirando. Esto también requiere algo de álgebra, ya que la forma de representar una rotación en el espacio 3D es con lo que se llama una matriz de rotación, que se aplica a la posición de la cámara según la dirección de la mirada del usuario. La dirección en la que apunta el usuario se obtiene comúnmente gracias a una Unidad de medición inercial (IMU) incluida en el teléfono móvil (es posible que haya oído hablar del giroscopio, el acelerómetro y el magnetómetro) que a su vez se calcula utilizando, supongo … sí, más matemáticas 🙂 y enviado a la aplicación VR para que pueda actualizar la cámara en consecuencia.
- Finalmente, como ya mencioné antes, hay algún tipo de lentes involucradas en cualquier auricular VR para obtener un campo de visión adecuado y enfocarse en la pantalla ubicada a unas pocas pulgadas de los ojos del usuario. Debido a la naturaleza de este tipo de lentes, las imágenes se distorsionan, por lo que la aplicación de realidad virtual debe contrarrestar esta distorsión para que el usuario obtenga una imagen sin distorsiones adecuada . Para que esto suceda, se utiliza más matemática, aplicando una especie de inversa de la función de distorsión de las lentes a las imágenes mostradas, lo que comúnmente se conoce como función de distorsión de barril [2]. Es por eso que si ve una aplicación de realidad virtual a través de la pantalla (es decir, sin pasar por la óptica) verá una imagen distorsionada como esta:
VR basado en modelos de alta gama: este otro rango del espectro de VR se refiere a aquellas experiencias en las que te ubican en un entorno completamente en 3D y puedes moverte dentro de él como lo harías en la vida real. Este tipo de sistemas de realidad virtual son bastante más complejos, ya que necesitan incluir alguna forma de lo que se denomina seguimiento posicional [3] además del seguimiento rotacional menos complejo como en el primer caso discutido. Este tipo de seguimiento es lo que le permite moverse libremente en el entorno virtual, logrando los llamados seis grados de libertad o 6DoF [4] (es decir: puede rotar en los tres ejes X, Y y Z y también traducir en los tres eje X, Y y Z). Entonces, de nuevo, sin pretender ser exhaustivo, las matemáticas en este caso incluyen lo siguiente:
- En primer lugar, aunque existen muchos enfoques diferentes para el seguimiento posicional de este tipo de sistemas, lo que todos tienen en común es que requieren una gran cantidad de matemáticas para su implementación. Describir todos los detalles requeriría una publicación completa, así que intentaré describirlos de manera aproximada:
- Por un lado, existen sistemas de seguimiento posicional mecánico en los que la posición en el espacio 3D se obtiene haciendo cálculos basados en la posición conocida de algunas articulaciones de la estructura mecánica y utilizando cálculos cinemáticos [5] basados en los ángulos de las articulaciones para inferir la posición del resto de las articulaciones. Tipo de realidad virtual de la vieja escuela, pero un ejemplo de este tipo de sistemas es la Espada de Damocles [6] creada por Ian Sutherland en 1968, que por cierto se considera el primer sistema de realidad virtual con pantalla montada en la cabeza.
- También hay sistemas de seguimiento posicional electromagnético, que calcula la posición en función de las señales electromagnéticas enviadas por un transmisor electromagnético que son detectadas por un receptor electromagnético y procesadas. Un ejemplo de este tipo de sistemas de seguimiento es el Razer Hydra [7]
- Más comúnmente hoy en día, los sistemas de realidad virtual de gama alta se basan en sistemas ópticos de seguimiento posicional , que utilizan cámaras infrarrojas, emisores y sensores, además de muchas matemáticas para calcular la posición de los dispositivos rastreados con una precisión submilimétrica. Uno de los sistemas de seguimiento óptico VR más flexibles y eficientes en la actualidad es el que viene con los auriculares HTC Vive, llamado Lighthouse Tracking System. No puedo evitar recomendar este artículo donde todas las matemáticas que involucra este sistema en particular están realmente bien descritas.
- Finalmente, también tenemos lo que se llama seguimiento de adentro hacia afuera, que calcula la posición en el espacio 3D basándose únicamente en una matriz de cámaras colocadas en el auricular y en un conjunto de algoritmos altamente matemáticos llamados SLAM (ubicación y mapeo simultáneos) [8]. Este tipo de enfoques se pueden encontrar en los auriculares Hololens [9] de Microsoft.
- Para terminar con este punto, como en el caso móvil, independientemente del enfoque de seguimiento utilizado por el sistema VR, las posiciones obtenidas se envían a la aplicación y actualiza la cámara en consecuencia (ahora teniendo en cuenta la orientación Y posición en el espacio) utilizando la matriz de transformación adecuada.
- Además, todos los elementos de distorsión de la lente de la carcasa del móvil también se aplican , ya que todavía estamos hablando de una pantalla montada en la cabeza VR.
- Finalmente, como ahora estamos hablando de gráficos 3D por computadora, también se necesitan muchas matemáticas para proyectar los objetos 3D en la escena en una imagen 2D que se puede mostrar en la pantalla . Eso tiene más que ver con la teoría de Gráficos por computadora (que también es fundamental para la realidad virtual), pero para hacer esto hay muchas multiplicaciones de álgebra y matriz involucradas, incluidas las transformaciones correctas de los objetos para que se vean en la posición que esperamos y con la perspectiva esperamos verlos en el mundo virtual con respecto a la cámara. La matriz que mágicamente hace todo esto antes de renderizar una escena 3D generalmente se llama matriz Modelo-Vista-Proyección. Además, tenemos que hacer todo esto dos veces desde dos puntos de vista diferentes, uno para cada ojo , para obtener la perspectiva correcta para cada ojo y obtener una imagen final estereoscópica adecuada para mostrar en la pantalla. Esa es una de las principales razones por las que podemos percibir la profundidad dentro de una aplicación de realidad virtual, ya que simula la convergencia ocular del ojo humano (es decir: cuando miramos algo, ambos ojos ven el mismo objeto desde un punto de vista ligeramente diferente debido a su naturalidad). separación, por lo que cada ojo se mueve de manera diferente y nuestro cerebro es bastante sensible a esta diferencia, percibiendo el objeto como un objeto 3D).
Realmente faltan muchas matemáticas en esta publicación y la incluida es solo la punta del iceberg, pero espero que al menos pueda dar una idea de cuán complejo es un sistema de realidad virtual y cuán importantes son las matemáticas en esto (y muchos otros!) tipo de sistemas.
Perdón por el formato de la publicación, pero el editor de Quora no es tan amigable con el formato de imágenes y cosas … 🙁
Notas al pie
[1] Entorno virtual automático de cueva – Wikipedia
[2] ¿Qué es la distorsión?
[3] Seguimiento posicional – Wikipedia
[4] ¿Qué es seis grados de libertad (6DOF)? – Definición de Techopedia
[5] Cinemática – Wikipedia
[6] ‘The Sword Of Damocles’, primera pantalla montada en la cabeza
[7] Controlador de juegos Razer Hydra Portal 2 Bundle – Sensor de movimiento para PC – Razer Australia
[8] Localización y mapeo simultáneos – Wikipedia
[9] Microsoft HoloLens