
Ayer, martes 9 de Junio, Unity 3D anunciaba bajo sorpresa de todos el lanzamiento oficial de su nueva versión 5.1. Bajo sorpresa porque solo hacia una semana de su ultima actualización, y oficialmente no se había hecho ninguna notificación al respecto.
Son bastantes las novedades en esta versión de Unity 3D 5.1, aquí disponéis del listado oficial de mejoras, y a continuación repasamos las más importantes:
Soporte nativo de VR (Realidad Virtual)
Una de las actualizaciones más esperadas en Unity 3D (que en otros motores gráficos si estaba, como Unreal). Ya soporta de forma nativa las cámaras de realidad virtual. Se ha añadido a UnityEngine el namespace UnityEngine.VR, con todas estas funcionalidades desarrolladas.
Si queríamos añadir a nuestro proyecto soporte para Oculus Rift, teniamos que añadir el paquete “OculusUnityIntegration.unitypackage“. Este paquete contenía los scripts y prefabs necesarios para poder añadir a nuestras escenas cámaras de realidad virtual.
Esto ya no va a ser necesario, ni con Oculus Rift (en la actualidad solo soporta estos cascos, Oculus 0.6.0-beta runtime) ni en el futuro con otros (se anuncia que en las próximas semanas se soportará también Samsung Gear VR). Ya lo hace de forma nativa Unity 3D 5.1 por ti, y además con varias optimizaciones importantes:
-
Un rendering pipeline totalmente optimizado para dispositivos de VR
-
El render y culling de objetos y sombras sólo se realiza una vez y lo comparte entre los ojos (anteriormente renderizaba dos veces, ya que habían dos cámaras, una para el ojo izquierdo y otra para el derecho)

Soporte para multijugador
Desde la aparición de Internet y la llegada a todos los hogares con unas buenas velocidades, los juegos dejaron de ser single player. Es muy importante lanzar juegos en los que podamos jugar en red con nuestros amigos, y compartir horas de diversión. No es que no se pudiera hacer hasta esta versión, pero no de forma nativa. Por decirlo de algún modo, cada maestrillo tenia su librillo. Hasta ahora se realizaba usando APIs y enviando y recibiendo datos constantemente, con ciertas variantes para optimizar este proceso.
Con esta nueva versión, Unity 3D 5.1, se añade en UnityEngine funcionalidades nuevas de Networking, que facilitan este proceso, conviertiendolo en una caja negra para el desarrollador (con las ventajas que ello supone). Ahora configurando cada cuantos frames se quiere enviar la nueva posición del jugador, factores de interpolación para optimizar el flujo de datos enviados/recibidos, etc, este tipo de soluciones pasan a ser mucho más sencillas.


Nuevos soportes en OpenGL
Una de las nuevas funciones importantes en Unity 3D 5.1 es sus nuevas funciones de renderizado OpenGL unificado. ¿Que quiere decir esto? Pues que hasta ahora, se tenia un procesador separado para OpenGL ES 2.0 , uno para OpenGL ES 3.0 y luego otro completamente diferente para el desktop OpenGL. Esto generaba mucho trabajo duplicado, versiones que funcionaban con un render y con otro no, etc.
Así que esta versión trae consigo “unified GL renderer”, que consigue unificar y seleccionar en función del hardawre disponible entre:
- OpenGL ES 2.0
- OpenGL ES 3.0
- OpenGL ES 3.1 (ahora también soportado para Android)
- desktop OpenGL: todas las versiones desde la 2.1 a la 4.5 (aunque Unity 3D 5.1 destaca que en esta versión es experimental este soporte)
Mejoras en las compresiones gráficas
Se ha añadido el tipo de compresion “Crunch” en aquellas plataformas que soportan DXT (un algoritmo de compresión de imágenes). Esto permite optimizar el tamaño que ocupan en nuestros proyectos dichos recursos sin perder calidad ni trabajo extra para nuestra GPU.

Estas son para mi las novedades más importantes que trae consigo Unity 3D 5.1. ¿Vosotros que pensais?
Javi Giner
Latest posts by Javi Giner (see all)
- IIS Express Visual Studio, como configurar para permitir conexiones remotas - febrero 26, 2016
- Evento solidario sobre Innovación - diciembre 14, 2015
- Uso de Component en Unity - noviembre 10, 2015