Realistic scene generation methods for Virtual Reality
J. M. Pizana, C. Gasch, and I. Remolar
Univesitat Jaume I, Castellón, Spain
1. Introducción
El realismo siempre ha sido uno de los factores requeridos en
las escenas de ambientes arquitectónicos generadas por
ordenador. Los profesionales dedicados a arquitectura e
interiorismo han acudido con asiduidad al renderizado para
mostrar sus proyectos. No obstante, los avances en la tecnología
de motores de juegos hace posible hoy en día que estos ambientes
se muestren en tres dimensiones y en tiempo real, permitiendo a
los usuarios interaccionar con los ambientes creados.
Los dos métodos más utilizados si se quiere trasladar una
escena a realidad virtual y por lo tanto, a un entorno de
renderizado interactivo en tiempo real como es Unity son dos: o
se genera la iluminación en Unity para conseguir el máximo
realismo posible [Uni], o bien se pre-renderiza con un motor, que
no sea en tiempo real pero con mejores acabados, como NVIDIA
Mental ray en 3ds Max [Bir13].
Este trabajo pretende analizarán ambas opciones, comparando
el realismo obtenido mediante los dos métodos además de
valores generales de tiempo de procesado de un frame y memoria
ocupada por cada escena final.
2. Metodología
La técnica de 3ds Max consiste en renderizar a una textura por
cada objeto, de tipo blendmap, con las componentes diffuse,
lighting, shadows y ambient (aquellas que no dependen de la
posición de la cámara) en resolución 2048x2048p, que es la
máxima que acepta Unity para aplicaciones multiplataforma.
Para un correcto renderizado, se debe habilitar y utilizar un
segundo canal de texturas con nuevas coordenadas UV que
cubran toda la superficie visible del objeto con una buena
proyección, ya que deben ser independientes de cómo se hayan
aplicado sus materiales originales (no necesariamente de tipo
estándar). Éste renderizado debe tener como objetivo la
componente difusa de un nuevo material estándar, ya que Unity
sólo admite materiales de este tipo. Tras el renderizado se deben
eliminar los materiales originales, quedando en cada objeto
sólamente el generado con las texturas.
En cuanto a la iluminación en Unity, se debe importar el
modelo en la escena, generando uv para lightmaps. El generado
es prácticamente automático, pudiendo controlar el tamaño de los
mapas, oclusión ambiental o la simulación de iluminación global,
entre otros.
3.
Resultados
Para la representación de las escenas con realidad virtual, el
sistema utilizado para las comparativas ha sido un portátil MSI
GE60 2PE Apache Pro, con un procesador Intel Core i7-4710HQ
CPU @ 2.50GHz, una GPU Nvidia GTX 860M y 16 GB de RAM
DDR3. Por otra parte, la escena utilizada para los tests se
compone de 64 objetos distintos, con un total de 97.304
polígonos.
En la Tabla 1 se ha comparado el rendimiento en imágenes por
segundo de ambos métodos. Además, se adjunta la memoria
ocupada por la aplicación, pese a que no sea el criterio que se
vaya a seguir.
Escena (64 objetos)
ms/frame
FPS
Memoria (GB)
Blendmaps
20
50
0.92
Lightmaps Unity
26
38,46
0.55
Tabla 1: Resultados de rendimiento de realidad virtual
4. Conclusiones
En referencia al realismo de la escena se debe destacar que la
generación de blendmaps en 3ds Max otorga resultados más
sólidos y realistas que la técnica de lightmaps de Unity. Además,
es más rápido iterar sobre ellos para obtener calidad visual, antes
de renderizar a textura. Una vez en este proceso consume mucho
más tiempo, debido a que se realiza un renderizado por objeto.
Por otra parte, la generación de lightmaps en Unity presenta
ocasionales artefactos visuales debido a la proyección de UVs
automática y a escalas de escena pequeñas, debido a la precisión
de los métodos.
Como conclusión, se define el pre-renderizado de blendmaps
como el método preferente para conseguir calidad visual realista
en menor tiempo y, por tanto, con menor coste, asumiendo más
coste de memoria, cosa fácilmente asumible a día de hoy.
Agradecimientos
Este trabajo ha sido respaldado por el Ministerio de Ciencia y
Tecnología (TIN2016-75866-C3-1-R), el Plan de promoción de
la investigación de la UJI (P11B2014-37) y Fundación Feder y
la
Generalidad
Valenciana
Valenciana
(Project
PROMETEO/2010/028).
Bibliografía
[Bir13] BIRN, J. (2013). Digital Lighting & rendering. Estados
Unidos. Ed. Pearson
[Uni] Unity Lighting Manual (última visita, Mayo, 2017).
https://docs.unity3d.com/Manual/GlobalIllumination.html