3 Archivos adjunto(s)
Unity y Apple desarrollan Object Capture para modelado 3D
Unity y Apple desarrollan Object Capture una API de MacOS para modelado 3D. La nueva herramienta te permite crear modelos 3D a partir de las imágenes regulares de objetos de la vida real.
Como explica Apple, Object Capture es una API simple y potente en MacOS Monterey que ayuda a los desarrolladores a crear modelos 3D fotorrealistas y de alta calidad de objetos del mundo real en cuestión de minutos. Todo lo que necesitas hacer es tomar fotografías usando un iPhone, iPad o DSLR y la aplicación los convertirá en modelos 3D optimizados para AR. A continuación, podrás verlos en AR Quick Look o agregar escenas ar en Reality Composer o Xcode.
Esta nueva función está integrada en la versión para iOS de la aplicación Unity AR Companion. Unity revela que la aplicación AR Companion se publicará a finales de este otoño, y la muy pronto estará disponible la documentación completa.
Cuando abras la aplicación, verás una interfaz de usuario interactiva y tendrás que configurar un objeto de guía sobre el objeto que quieres capturar. Tan pronto como alinees la guía, puedes empezar a tomar fotografías. Se necesitan algunas tomas desde diferentes ángulos para construir un modelo 3D. Para cada fotografía, la aplicación pondrá un "pin" en el Shell, lo que indica que el ángulo se ha capturado con éxito. Los pines rojos significan que la toma es borrosa o inutilizable y será mejor si la vuelves a tomar.
Una vez que todos los pines están en verde, puedes procesar las fotografías, generar el modelo 3D y utilizarlo.
Archivo adjunto 239388
Este proyecto es emocionante para ambas compañías por varias razones, en primer lugar por lo profundamente que se alinea con nuestra misión de continuar democratizando la creación de contenido. El anuncio de Apple de esta funcionalidad significa que esta capacidad ahora es mucho más accesible para una amplia gama de creadores, y están deseando ver el uso que que le dan los desarrolladores de juegos independientes, y los estudios medianos.
En la WWDC de este año, Apple anunció su nueva y emocionante tecnología para capturar objetos del mundo real. Unity ha estado trabajando estrechamente con Apple para incorporar la captura de objetos en sus flujos de trabajo de Companion-to-Editor.
Desde la introducción de la tecnología móvil de Apple, Unity ha hecho que sea fácil para los usuarios crear sin problemas experiencias que aprovechan el poder de la nueva tecnología en los dispositivos de vanguardia de Apple. A finales de este año, la aplicación Unity AR Companion incluirá Captura de objetos para permitir a los creadores de XR escanear objetos del mundo real y generar activos 3D.
Un punto de dolor para muchos desarrolladores de Unity es averiguar cómo integrar el impredecible mundo real en su experiencia digital, desde escanear el espacio hasta averiguar dónde están las cosas, hasta tomar información del mundo real e integrarla en su experiencia. La aplicación Unity AR Companion extiende la creación más allá del Editor, proporcionando formas de crear y capturar en contexto.
Archivo adjunto 239389
Un emocionante siguiente paso en la creación de contenido y AR
El proyecto de captura de objetos también habla de una tendencia más grande en las herramientas de creación; el uso de aplicaciones complementarias en hardware específico junto con el Editor de Unity, lo que significa que podemos usar el medio y cada dispositivo para lo que son más adecuados. Un teléfono habilitado para AR es un gran dispositivo para hacer captura de entorno, grabación de sesiones AR y ahora captura de objetos.
Vale la pena señalar que esta nueva tecnología también admite el procesado de cualquier conjunto de fotografías existente. Este caso de uso de cámara tradicional es importante, porque esto abre la tecnología a un público aún más amplio, y trae la tentadora posibilidad de hacer fotogrametría utilizando imágenes que hayas capturado en el pasado. Digamos que tomaste fotografías hace años de tu monumento favorito durante un viaje, y que ahora ya no existe, con esta tecnología, es posible que puedas ver ese objeto en 3D con todo su esplendor.
Creando las mejores prácticas
Probando las primeras versiones del modo de captura de objetos en la aplicación AR Companion, nos dimos cuenta de que teníamos una gran oportunidad de usar AR para guiar al usuario hacia las mejores prácticas para la captura de fotogrametría. Si bien la primera versión tenía instrucciones escritas simples, nos encontramos con la tradición tradicional de los usuarios de no leer, y simplemente descartar el mensaje y pasar a ciegas. Así que presentamos el objeto guía.
Si bien la guía no es estrictamente necesaria, nos pareció invaluable para dar al usuario comentarios sobre la mejor manera de tomar las imágenes y maximizar la cobertura al mostrar claramente qué áreas aún no se han cubierto. Junto con la guía, presentamos los pines de fotos, que muestran exactamente dónde ya ha capturado fotos, así como la fotodetección y los comentarios de baja calidad.
Archivo adjunto 239390
Un proyecto emocionante para Unity
Este proyecto es emocionante para Unity por una serie de razones, en primer lugar y sobre todo por lo profundamente que se alinea con nuestra misión de continuar democratizando la creación de contenido. Si bien algunos desarrolladores de juegos han utilizado la fotogrametría en sus canalizaciones durante años, puede ser un proceso frustrante.
Pero lo que quizás nos entusiasme aún más es cómo este poderoso conjunto de herramientas, ahora más accesible en los dispositivos cotidianos, puede desbloquear la creación y curación de contenido para los no desarrolladores. Cuando empezamos el proyecto, reunimos casos de uso para la tecnología y rápidamente nos sorprendió cuán grande puede ser el impacto. Por ejemplo, el propietario de una tienda de música, anteriormente limitado a publicar imágenes de instrumentos que vienen a través de la tienda, ahora puede usar la captura de objetos para crear capturas impresionantes, realistas, de alta calidad y fácilmente compartibles de cada instrumento en la tienda, listas para compartir online con la tecnología AR.
Al integrar esta poderosa tecnología creativa directamente en nuestras herramientas, desbloqueamos usuarios no tradicionales. Personas como médicos, arquitectos, artistas y diseñadores podrán dar vida a sus ideas casi al instante.
Puede encontrar más información sobre el nuevo producto aquí.
Es uno de los mejores motor 3D Unity !!!
Cita:
Iniciado por
3dpoder
Unity Technologies ha publicado la última versión de su motor de juegos en tiempo real, esta nueva entrega viene con más de 280 nuevas características y mejoras, entre las que se incluyen Scripting Render Pipeline actualizado, Shader Graph, GPU Lightmapping y varios cambios en High Definition Render Pipeline y Post Production Stack.
Otras mejoras incluyen nuevas herramientas para artistas como el aparejo de animación en tiempo de ejecución y los cambios a las herramientas de audio, video y DCC. La línea de tiempo ahora es un paquete validado con una nueva característica de señales para permitir que la línea de tiempo interactúe con los objetos de la escena.
Los cambios en la publicación móvil incluyen la capacidad de parchear un paquete de aplicaciones en lugar de hacer una reconstrucción completa. Las nuevas características de rendimiento adaptativo móvil proporcionan datos sobre las tendencias térmicas y más.
Las mejoras de rendimiento incluyen el trabajo continuo en la pila de tecnología orientada a datos multi hilo, que se puede ver en acción creando la demostración de Megacity. También se anunció una nueva solución de física desarrollada en colaboración con Havok. Para más información visita su
blog.
https://youtu.be/SJplDRtV1Oo
Saludos, colega ya estoy aquí de vuelta, por fin ya era hora de crear videos juegos Excelente motor Unity !!! ,
Espero aprender mucho sobre este gran software Unity.
Unity estrena nuevo logotipo
Unity estrena nuevo logotipo. Unity Technologies se ha convertido en el último gran desarrollador de software de DCC en renovar su identidad de marca. Presentando un nuevo logotipo tanto para la propia compañía como para el motor de juego Unity.
La nueva identidad, que se implementará en todos los productos de Unity en los próximos meses, también presenta logotipos animados en 3D para otros productos principales de Unity Technologies.
Aunque Unity ha realizado cambios ínfimos de su logotipo en los últimos tiempos, cambios casi inapreciables. Desde que adoptó su nombre de empresa actual en el año 2007, este es el cambio más importante en el diseño del logotipo de la marca.
Al igual que con el nuevo logotipo de Autodesk, tanto la marca de logotipo como la marca denominativa se han actualizado. Aunque de manera que los usuarios a largo plazo se familiaricen de inmediato.
¿Era necesario cambiar el logotipo?
El nuevo logotipo conserva la forma general del antiguo cubo representativo de Unity, pero gira y engrosa sus ejes.
Según la publicación del blog de Unity, las flechas direccionales representan las infinitas posibilidades que Unity pone en manos de todos los que usan sus soluciones.
Simbólicamente, es donde nuestra tecnología (el eje X), los creadores de Unity (el eje Y) y las increíbles experiencias que crean (eje Z) se cruzan.
Los cambios en la marca denominativa son más sutiles, aparte de la nueva letra "U" mayúscula, dándole más madurez.
Nuevos logotipos animados en 3D para Unity
Uno de los objetivos de la nueva identidad de marca es reflejar el crecimiento de Unity Technologies. Diferenciar una compañía de un solo producto a una con una lista creciente de productos, muchos de ellos de una reciente serie de adquisiciones corporativas.
Como tal, otra parte de la nueva identidad de marca es el conjunto de logotipos animados para los nuevos productos.
En sus estados iniciales, son logotipos hexagonales derivados de la silueta del cubo Unity, con códigos de productos de dos letras similares a los utilizados por Adobe.
Cada uno gira para revelar una forma 3D más compleja que refleja la naturaleza del producto en cuestión.
La página de productos de la empresa ahora enumera más de 30 herramientas y servicios. Que van desde la importación de datos CAD y la generación de materiales hasta los sistemas de publicidad en el juego. Pasando por el alojamiento de servidores multijugador.
Sin embargo, tal vez afortunadamente para los diseñadores de la firma, Unity dice que solo planea implementar los nuevos logotipos animados en 3D en sus productos primarios.
En el momento de escribir este artículo, solo el logotipo principal de Unity aparece en el sitio web. El resto de los cambios se implementarán en los próximos meses y hasta el próximo año.
La opinión de los usuarios está dividida
Como suele ser el caso con los ejercicios de cambio de marca, la respuesta inicial del usuario a los cambios está dividida.
Algunos comentarios han dado la bienvenida al nuevo logotipo. Otros preferían el antiguo, y otros piensan que cualquier dinero gastado en el cambio de marca hubiera estado mejor invertido en mejorar el desarrollo de los productos.
https://youtu.be/RKvbY72TO2s
4 Archivos adjunto(s)
Las tendencias de juegos móviles para el 2022 bajo la perspectiva de Unity
En este informe tienes información sobre los mayores cambios en el desarrollo de juegos móviles y cómo puedes usarlos para ayudar a que tu juego en gane calidad.
Con el 2022 asomando en el horizonte, queremos ayudarte a empezar a planificar tu próxima fase de desarrollo de juegos móviles. Comprender las últimas tendencias en juegos móviles te ayudará a tomar las decisiones correctas sobre qué tipos de juegos desarrollar; las audiencias a las que te dirigirás y qué estrategias de marketing y rentabilidad económica y monetización del producto adoptar.
Por eso Unity a creado esta guía. Las tendencias de juegos móviles que necesitas saber para el 2022 y más allá. Esta guía combina información obtenida de los años de experiencia del equipo de Unity ayudando a los clientes con la última investigación de mercado para proporcionar una instantánea del mercado de juegos móviles. Incluidas varias tendencias que definen la industria.
Archivo adjunto 241039
Qué tienen de especial los juegos móviles
- El móvil es el segmento de más rápido crecimiento en los juegos.
- Los jugadores esperan experiencias de calidad AAA en todos sus dispositivos.
- Los jugadores quieren una experiencia más conectada.
- Los estudios están refinando las estrategias de género y las prácticas de rentabilidad económica y monetización del producto.
- El crossplay y los spin-offs están impulsando una marca más fuerte.
- Las preocupaciones de privacidad están complicando las tácticas de rentabilidad económica y monetización del producto.
- Por ahora, sin embargo, vamos a sumergirnos en tres de las principales tendencias que encontramos al investigar y escribir este libro electrónico.
- Si estás desarrollando juegos móviles, ten la seguridad de que estarás ocupado en un mercado en crecimiento durante mucho tiempo. Independientemente de cuántos desarrolladores estén luchando por un pedazo del pastel, habrá mucho postre para todos.
Según la investigación de Statista, casi cuatro mil millones de teléfonos inteligentes estarán en los bolsillos de las personas en 2021; y casi 1.800 millones de personas han descargado juegos para sus teléfonos inteligentes. Para 2025, se estima que este número se habrá disparado a más de 2.200 millones.
Factores críticos que debemos tener en cuenta en la planificación estratégica
Los juegos móviles generarán ingresos de más de 85 mil millones de dólares en 2021 y más de 100 mil millones de dólares en todo el mundo en 2023. Con una tasa de crecimiento anual compuesta (CAGR) general de más del 18 por ciento, según un estudio de Newzoo encargado por Unity.
La mayoría de los ingresos del juego serán de dispositivos móviles para 2023. El mismo informe de Newzoo encuentra que Asia es, con mucho, el mercado regional más grande y de más rápido crecimiento.
La oportunidad está en llegar a un público más amplio desarrollando para todos los dispositivos. La conclusión práctica de estas estadísticas es que, independientemente de la demografía, el género o la región geográfica a la que te dirijas, el desarrollo multiplataforma es obviamente un fruto de bajo coste.
Las tendencias de juegos móviles – importante optimizar el juego
Lo que puede hacer que el desarrollo multiplataforma sea un desafío no son tanto las diferentes bases de código; sino más bien la necesidad de optimizar tu juego para una variedad cada vez mayor de dispositivos. Todos con diferentes capacidades de hardware. Si bien ha habido menos de 10 modelos principales de iPhone, hay miles de teléfonos inteligentes diferentes basados en Android con diferentes capacidades de rendimiento.
El 71 por ciento de los 1.000 mejores juegos móviles en 2020 se crearon utilizando la plataforma Unity. Unity es el líder de la industria de los juegos móviles, por una razón; incluye un sólido ecosistema de herramientas para ayudar a hacer juegos que se ejecutan bien en cualquier plataforma móvil. Así como servicios para ayudar a los desarrolladores a crecer; involucrarse y monetizar tu base de jugadores para administrar un negocio sostenible.
Recursos de Unity para apoyar a los desarrolladores móviles
Un manual que describe las consideraciones multiplataforma para permitir un lanzamiento más amplio.
Un video que describe cómo controlar personajes multiplataforma con el sistema de entrada de Unity.
Unity Universal Render Pipeline (URP),que proporciona renderizado abierto y flexible para ofrecer gráficos de máxima calidad para dispositivos de gama alta. Así como un rendimiento optimizado para dispositivos de gama baja, todo personalizable mediante scripts de C#.
Herramientas de optimización para asegurarte de que tu juego se ejecutará bien en diferentes dispositivos móviles. Incluidos memory Profiler, Frame Debugger, Profiler, Roslyn analyzery Device Simulator.
Archivo adjunto 241038
Estrategias de género y prácticas de rentabilidad económica y monetización
Los jugadores están jugando más tiempo y gastando más que nunca. Para los juegos móviles de 2016 a 2020, la retención de jugadores del percentil 75 en el día 30 creció un 7,1 por ciento. Las tasas de conversión de compras en la aplicación aumentaron un 7,7 por ciento. Los jugadores móviles gastaron más dinero, más a menudo. Y desde 2020, los ingresos por servicios publicitarios móviles han aumentado más del 8 por ciento.
Pero la competencia también es más espesa que nunca, y los estudios que más se benefician de estas mejoras son los que planifican y adoptan un enfoque disciplinado para monitorizar las tendencias de género y las técnicas de rentabilidad económica y monetización del producto.
El género hipercaso casual continúa dominando las listas de descargas. Según el informe Hyper casual gaming in 2020 de Adjust, es probable que continúe creciendo hasta llegar a un mercado de casi 100 Billones de dólares para el próximo 2022.
Tradicionalmente, los juegos hiper-casuales se definen por juegos de rompecabezas, palabras y cartas; además de un número aparentemente infinito de variantes que son livianas y se entienden instantáneamente para un juego fácil. Sin embargo, muchos definen el hiper-casual como cualquier juego que es gratuito (F2P); y que obtiene la mayor parte de su dinero de la rentabilidad económica y monetización de los servicios en lugar de las conversiones.
Las tendencias de juegos móviles – juegos hiper-casuales
Las principales descargas en 2020 son una buena pista de cómo es probable que los géneros se sacudan en los próximos años; en su mayoría hiper-casuales, pero con claras incursiones desde núcleos medios. Especialmente a medida que mejora el ancho de banda y el rendimiento del dispositivo. Las descargas principales fueron battle royales, mientras que el resto fueron hiper-casuales, con la excepción de una aplicación de mascotas virtuales.
Cualquier juego F2P requiere un seguimiento hábil para la rentabilidad económica del producto; las compras en la aplicación (IAP) y los anuncios recompensados seguirán siendo los enfoques principales. Los anuncios también generarán resultados de rentabilidad económica consistentes para casi todas las categorías de juegos móviles. Los anuncios recompensados, contenido que los jugadores han elegido ver a cambio de una ventaja de juego de algún tipo; tienen el mayor coste efectivo por mil impresiones (eCPM) y devuelven tasas de clics (CTR) significativamente mejores que los anuncios de banner.
Aprovecha las herramientas de rentabilidad económica y monetización del producto
La industria del juego es como cualquier otra; las claves del éxito son desarrollar planes sólidos y alinear su pila de tecnología en consecuencia. Los juegos son una industria madura, en términos relativos. Puedes aprovechar una gran cantidad de mejores prácticas para mantener sus indicadores clave de rendimiento en alza.
Estas prácticas recomendadas incluyen el uso de análisis habilitados para IA (inteligencia artificial) que proporcionan información de los jugadores rápidamente. De esa forma tu equipo puede comprender más profundamente las tendencias e iterar y actualizar rápidamente. Optimizar las ubicaciones de anuncios y las configuraciones de compra en la aplicación. Preferiblemente con una herramienta estrechamente integrada en la plataforma de desarrollo, es otra práctica recomendada esencial para generar ingresos.
Archivo adjunto 241037
Cómo puede ayudarte Unity en las tendencias de juegos móviles
Unity proporciona posibilidades de análisis integradas que trabajan en profundidad para obtener información importante sobre el juego. Teniendo en cuenta su rentabilidad económica y monetización del producto. Además de ayudarte a perfeccionar la experiencia del jugador de tus juegos. Unity Analytics es una característica incorporadas del editor. Mientras que deltaDNA es un producto adicional de Unity que proporciona información más profunda con una mayor personalización.
La suite de rentabilidad económica y monetización de Unity te ofrece herramientas y análisis completos. Te ayudarán para hacer crecer tu juego y generar la mayor cantidad de ingresos. Al trabajar en Unity Editor, puedes integrar una potente mediación de Unity Ads. También puedes configurar rápidamente IAP con una api única y unificada que le ahorra horas de ingeniería significativas.
Los jugadores quieren una experiencia más conectada
El elemento social es una forma importante de impulsar una experiencia de juego exitosa y duradera. La capacidad de jugar con otros y disfrutar de comunicaciones sin retrasos en la red puede hacer que cualquier juego sea más inmersivo y atractivo. La proliferación del 5G promete traer los tipos de experiencias de juego multijugador inmersivas; además de altamente competitivas que la gente espera de las consolas y PC a los juegos móviles también. Y debido a que una red 5G permite un procesamiento más intensivo de CPU en la nube en lugar de en dispositivos. Incluso las unidades de gama baja podrán unirse.
Según un informe reciente de la Asociación de Software de Entretenimiento; más de la mitad de los jugadores frecuentes juegan online un promedio de siete horas semanales. Y el 55 por ciento informó que usaba juegos sociales para mantenerse conectado durante la pandemia.
La sofisticación del crecimiento en los juegos multijugador ha sido una tendencia continua durante años, y los juegos multijugador pueden ser entornos sociales asombrosamente complejos. Para algunos, se trata de ganar y lograr objetivos. Para otros, la simple interacción humana es una amplia recompensa. Pero todos están ahí porque los entornos multijugador atractivos han convertido los juegos en un patio de recreo interpersonal.
Debes mantenerte centrado en el juego
Desarrollar un juego multijugador no es fácil. Clavar la organización del servidor con requisitos de ancho de banda altamente volátiles y pilas de tecnología complejas es un gran desafío. Ofrecer un entorno transparente y fiable con un buen emparejamiento; equilibrando las habilidades del jugador, los atributos y las consideraciones de la red, también es importante.
La externalización de tareas de backend como la orquestación del servidor y el emparejamiento libera a su equipo para crear enfoques reflexivos; y personalizados para la experiencia multijugador. Por ejemplo, los desarrolladores creativos pueden optimizar el juego PVE/PVP asincrónico por turnos y en tiempo real. Integrar funciones de compartir en redes sociales y encontrar nuevas formas de usar objetos y personajes fantasmas. Puedes centrarte en diseñar un juego encantador en lugar de solucionar problemas de redes esotéricas.
Archivo adjunto 241036
Cómo puede ayudar Unity en el alojamiento del juego
Unity proporciona soluciones clave de alojamiento de servidores de juegos para operar y optimizar juegos multijugador.
Unity Multiplay es una plataforma de alojamiento y emparejamiento de servidores multinube. Está preparada para eliminar la complejidad de crear y operar tecnología e infraestructura de backend. Esto te permite concentrarte en el juego mientras Multiplay mantiene los lanzamientos de juegos y las operaciones en vivo funcionando sin problemas.
La implementación de comunicaciones de voz es otro desafío complejo de backend, y Vivox es la respuesta de Unity. Vivox es una solución alojada y administrada para chat de voz y texto; que ayuda a tu juego a ofrecer consistentemente la mejor experiencia de jugador posible. Puede integrar Vivox de forma gratuita para hasta 5.000 usuarios simultáneos.
Prepara tu estudio para el éxito en dispositivos móviles en 2022
Comprender la tecnología y las tendencias del mercado te informa en la forma de cómo evaluar tus prácticas actuales. Así de cómo buscar mejores formas de administrar tu estudio. Cubrimos el doble de tendencias con mucho más detalle en el libro electrónico completo. Por lo que te recomendamos que descargues el informe de tendencias completo de forma gratuita. Podrás obtener todos los últimos conocimientos para ayudarte a adelantarte a la competencia.
Los juegos móviles están creciendo más rápido que nunca, las tecnologías están mejorando el rendimiento del dispositivo en todos los ámbitos. La plataforma de desarrollo Unity está proporcionando la solución más completa para hacer juegos móviles hermosos y de alto rendimiento. Unity es la plataforma preferida de los desarrolladores de juegos móviles que han tenido éxito; impulsando más del 70 por ciento de los 1.000 mejores juegos móviles en todo el mundo.
El equipo de Unity siempre está online para ayudarte a adoptar las herramientas y los servicios adecuados. De esa forma te aseguras de recibir soporte a lo largo de tu viaje en el desarrollo de juegos. Desde el concepto hasta la comercialización. Si estás listo para ponerte en marcha, puedes acceder a Unity Pro hoy mismo; o hablar con uno de los expertos para saber cómo podemos ayudarte a llevar tu juego al siguiente nivel.
Si quieres conseguir el libro electrónico lo puedes descargar desde este enlace.
5 Archivos adjunto(s)
Introducción al SDK de deltaDNA
El SDK de deltaDNA para Unity te permite enviar información sobre las acciones de los jugadores de tu juego a deltaDNA para su análisis, informes, CRM y personalización del juego.
Los eventos se almacenan en caché en el cliente para evitar pérdidas mientras se juega sin conexión y se envían a la plataforma deltaDNA a intervalos regulares como objetos JSON. Los eventos varían en complejidad, pero todos se derivan de un esquema de eventos común. Este documento y la aplicación de demostración que lo acompaña proporcionan ejemplos de eventos cada vez más complejos.
El código fuente del SDK, escrito en C#, se proporciona como un activo de Unity empaquetado y no tiene dependencias externas. Los juegos envían datos con éxito a deltaDNA utilizando el SDK de Unity desde una amplia gama de plataformas de destino de Unity, incluidas Xbox, Playstation, PC, Web GL, iOS, Android, etc. Cabe señalar que deltaDNA no es actualmente un socio tecnológico certificado de Xbox o Sony, por lo que puede haber algunos escenarios de soporte en los que no podremos replicar o depurar implementaciones individuales de clientes.
Cambios importantes: las versiones anteriores del SDK y las notas de la versión están disponibles en la página Notas de la versión y a partir de la versión 4 en el registro de cambios de nuestra página de GitHub.
Inicialización del SDK: El SDK debe importarse a tu proyecto de Unity como un paquete configurado con los siguientes detalles.
Configuración del SDK
Clave de entorno (Dev): una cadena única de 32 caracteres para enrutar los datos a su entorno DEV.
Clave de entorno (en vivo): una cadena única de 32 caracteres para enrutar los datos a su entorno LIVE.
Clave seleccionada: elija DEV o LIVE en la lista desplegable para asegurarse de que los datos se enrutan al entorno correcto para su juego. Utilice el entorno DEV para las pruebas y el control de calidad, luego recuerde cambiar a activo antes de enviar una compilación de producción a la tienda.
Recopilar URL: la dirección del servidor que recopilará sus eventos.
EngageURL: la dirección del servidor que proporcionará pruebas A / B y orientación en tiempo real. Esto solo es necesario si tu juego utiliza estas funciones.
Estos detalles de configuración se pueden encontrar en la página de detalles del juego. Tenga en cuenta que existen diferentes valores de environmentKey para sus entornos DEV & LIVE. Deberá cambiar la clave de entorno con la que inicializa el SDK a medida que pasa del desarrollo y las pruebas a la producción.
Archivo adjunto 241040
Ingresa estos parámetros en el panel de configuración al que se accede desde el menú deltaDNA -> Configurar dentro del Editor de Unity y Aplica tus cambios.
Archivo adjunto 241041
Ahora puedes agregar un script a un objeto de juego nuevo o existente para iniciar el SDK de deltaDNA.
Ejemplo de código de inicialización:
Código:
using UnityEngine;
using System.Collections;
using DeltaDNA;
public class MyBehaviour : MonoBehaviour {
// Use this for initialization
void Start()
{
// Start collecting data
DDNA.Instance.StartSDK();
}
}
Esta es la cantidad mínima de código necesaria para inicializar el SDK de Unity y comenzar a enviar eventos. Enviará automáticamente el evento newPlayer la primera vez que se ejecute el SDK, el evento gameStarted y clientDevice cada vez que se ejecute el juego y el evento gameRunning cada minuto. Siga leyendo para descubrir cómo ir más allá de la grabación de algunos eventos automatizados y comenzar a desbloquear el poder de deltaDNA con eventos adicionales, parámetros, sus propios eventos personalizados, pruebas A / B y campañas específicas.
De forma predeterminada, el SDK de deltaDNA generará su propio ID de usuario anónimo, pero puede elegir usar su propia identidad, una proporcionada por otro proveedor de servicios de juego o inicio de sesión, simplemente colóquelo en el método StartSDK, por ejemplo. DDNA. Instancia. StartSDK("ABCD-1234-GG-5678-ETC...");
El ID de usuario se conservará en el cliente y se utilizará en todos los eventos posteriores durante la instalación de los juegos, a menos que lo cambie usted mismo (¡no se recomienda!)
Anatomía de un evento
Todos los eventos se registran como documentos JSON con un esquema básico compartido. El documento será diferente para cada tipo de evento, pero todos ellos deben cumplir con el siguiente esquema mínimo:
Código:
{
"eventName": "gameEnded",
"userID": "a2e92bdd-f59d-498f-9385-2ae6ada432e3",
"sessionID": "0bc56224-8939-4639-b5ba-197f84dad4f4",
"eventUUID": "60c4ccdf-1604-11e6-9906-b083fea450b0",
"eventTimestamp":"2016-03-18 11:09:42.491",
"eventParams": {
"sdkVersion": "Unity SDK v4.0.0",
"platform": "IOS_MOBILE"
}
}
El SDK de Unity rellenará automáticamente los parámetros userID, sessionID, eventTimestamp, eventUUID, platform & sdkVersion para cada evento que envíes. Al agregar parámetros a un evento, todos se colocarán dentro del objeto eventParams.
El orden de los parámetros en su evento JSON no importa, pero tenga cuidado ya que no admiten mayúsculas y minúsculas y deben coincidir con el tipo definido en el Administrador de eventos
Puede inspeccionar los parámetros que cada evento espera, su tipo y cualquier regla de formato o enumeración en el Administrador de eventos.
Los parámetros pueden ser opcionales o obligatorios. Los parámetros que son opcionales no tienen que incluirse en tu evento si no tienes un valor válido para ponerlos. Es mejor dejarlos fuera por completo, que establecer su valor en nulo o vacío.
Esta estructura básica de eventos proporciona una gran flexibilidad para registrar eventos con diferentes niveles de complejidad, desde eventos simples como el anterior hasta eventos complejos que contienen matrices anidadas. Los siguientes ejemplos de código mostrarán una variedad de eventos, desde simples hasta complejos.
Tenga en cuenta que todos los eventos se validan y se rechazarán si no coinciden con el esquema del Administrador de eventos.
Configuración
El código de inicialización simple, copiado de la página de detalles del juego y que se muestra arriba, es el código mínimo requerido para comenzar a recopilar datos analíticos de sus jugadores. Rápidamente querrá comenzar a agregar más eventos y ajustar su implementación. Aquí está el mismo código de inicialización con un par de configuraciones útiles agregadas.
Código:
using UnityEngine;
using System.Collections;
using DeltaDNA;
public class MyBehaviour : MonoBehaviour {
// Use this for initialization
void Start()
{
// Configure the SDK
DDNA.Instance.SetLoggingLevel(DeltaDNA.Logger.Leve l.DEBUG);
DDNA.Instance.ClientVersion = "1.0.0";
// Start collecting data
DDNA.Instance.StartSDK();
}
}
Estas dos configuraciones adicionales
Indique al SDK que genere una depuración detallada de los eventos que está recopilando y las comunicaciones con deltaDNA. Esto es particularmente útil cuando se usa junto con QA – Interactive Validator durante el desarrollo, ya que le ayudará a resolver cualquier problema que esté causando que cualquiera de sus eventos falle en la validación.
Establece la clientVersion de tu juego. Esto es aconsejable y puede ser muy útil para identificar las diferencias de comportamiento entre los jugadores en diferentes construcciones de su juego. Especialmente cuando una actualización de la versión del cliente es una opción con la que muchos usuarios móviles no se molestan.
Es posible que incluso haya detectado una advertencia sobre la versión del cliente que no se estableció cuando ejecutó el código de inicialización simple, la configuración de ClientVersion lo resolverá. N.B. El SDK de Unity también puede extraer la versión de compilación de su página configuración del reproductor y usarla para rellenar clientVersion automáticamente por usted. Establece la casilla de verificación en la página Configuración de DeltaDNA en el Editor de Unity para habilitar esta función.
Hay muchas otras configuraciones útiles que lo ayudarán con los mensajes de notificación push, id de dispositivo, hash de eventos, recopilación automatizada de eventos y comunicaciones automatizadas, asegúrese de consultarlas en la aplicación de ejemplo que se incluye con el SDK o la información sobre herramientas incorporada.
Ejemplo 1 – Un evento simple
El código de inicialización que ya hemos visto enviará los eventos newPlayer, clientDevice, gameStarted y gameRunning a deltaDNA automáticamente. En el siguiente código añadiremos un evento nosotros mismos en código.
Cuando agregamos nuestro juego a deltaDNA, algunos eventos predeterminados se agregaron automáticamente, estos eventos tienden a ser estándar en todos los juegos y se utilizan para impulsar muchos de los paneles. Por ahora solo usaremos uno de esos eventos estándar, el evento options. Otros eventos estándar se pueden ver visitando Configuración > Ver eventos y cualquiera de estos eventos se nos puede enviar siempre que el esquema de su juego coincida con el esquema de la plataforma.
Código:
using UnityEngine;
using System.Collections;
using DeltaDNA;
public class MyBehaviour : MonoBehaviour {
// Use this for initialization
void Start()
{
// Configure the SDK
DDNA.Instance.SetLoggingLevel(DeltaDNA.Logger.Leve l.DEBUG);
DDNA.Instance.ClientVersion = "1.0.0";
// Start collecting data
DDNA.Instance.StartSDK();
// Build a game event with a couple of event parameters
GameEvent optionsEvent = new GameEvent ("options")
.AddParam ("option", "Music")
.AddParam ("action", "Disabled");
// Record the event
DDNA.Instance.RecordEvent (optionsEvent);
}
}
Se cargaría el siguiente evento JSON
Código:
{
"eventName": "options",
"userID": "4c1e9486-5477-42e4-8b0e-d3df9d173e60",
"sessionID": "7a9beb72-02be-4623-83c1-c99a16bfb08f",
"eventUUID": "7b451223-160d-11e6-9906-b083fea450b0",
"eventTimestamp": "2016-03-18 16:41:37.724",
"eventParams": {
"option": "Music",
"action": "Disabled",
"platform": "PC_CLIENT",
"sdkVersion": "Unity SDK v4.0.0"
}
}
Ejemplo 2 – Agregar un nuevo evento de plantilla
El ejemplo anterior utilizó uno de nuestros eventos estándar, esta vez haremos algo un poco más ambicioso, agregaremos un parámetro personalizado a un evento, luego activaremos el evento desde nuestro código.
Vaya a la página SETUP > Manage Events en su entorno DEV y busque el evento missionStarted, si no lo ve, es posible que deba agregarlo haciendo clic en el botón Crear evento y agregándolo de la lista desplegable de plantillas de eventos.
Haga clic en el botón Editar del evento missionStarted, seleccione el objeto eventParams y, a continuación, agregue un nuevo parámetro missionDifficulty del tipo STRING.
Archivo adjunto 241042
El código para desencadenar el evento missionStarted:
Código:
// Build some event parameters.
GameEvent missionStartedEvent = new GameEvent("missionStarted")
.AddParam("missionName", "Mission 01")
.AddParam("missionID", "M001")
.AddParam("isTutorial", false)
.AddParam("missionDifficulty", "EASY");
// Record the missionStarted event event with some event parameters.
DDNA.Instance.RecordEvent(missionStartedEvent);
Se cargaría el siguiente evento JSON:
Código:
{
"eventName": "missionStarted",
"userID": "4c1e9486-5477-42e4-8b0e-d3df9d173e60",
"sessionID": "e7e9c4dd-f220-43cb-bd84-f5990b444852",
"eventUUID": "7b451223-160d-11e6-9906-b083fea450b0",
"eventTimestamp": "2016-03-18 17:44:27.301",
"eventParams": {
"missionName": "Mission 01",
"missionID": "M001",
"isTutorial": false,
"missionDifficulty": "EASY",
"platform": "PC_CLIENT",
"sdkVersion": "Unity SDK v4.0.0"
}
}
Pegar JSON de eventos en el Validador de eventos interactivos puede ayudar a resolver errores, nuestro evento missionStarted pasó la validación por primera vez.
Archivo adjunto 241043
Ejemplo 3 – Un evento complejo
Los ejemplos anteriores han sido bastante sencillos y no han requerido mucha explicación. Sin embargo, el siguiente es un poco más complejo, ya que introduce anidamiento, matrices y algunos objetos especiales que encontrará cuando el jugador compre, intercambie, gane, cambie moneda. La buena noticia es que la estructura para esto es bastante estándar, hay algunos métodos auxiliares y esto es tan complejo como se pone.
Vamos a desencadenar un evento de transacción que registra al jugador usando alguna moneda del mundo real para comprar un cofre del tesoro que contiene alguna moneda virtual y múltiples artículos. También aprovecharemos la validación de ingresos de deltaDNA con la tienda de Apple para comprobar que la transacción es válida.
Archivo adjunto 241044
Como puede ver, la estructura del evento de transacción es un poco más compleja. Contiene un par de objetos Product para registrar productosSpente y productosReceived.
Nuestro evento JSON terminará pareciéndose a
Código:
{
"eventName": "transaction",
"userID": "4c1e9486-5477-42e4-8b0e-d3df9d173e60",
"sessionID": "d03fa7a4-b87e-43c8-8130-4c6aead89c4c",
"eventUUID": "7b451223-160d-11e6-9906-b083fea450b0",
"eventTimestamp": "2016-03-18 20:07:04.994",
"eventParams": {
"transactionName": "IAP - Large Treasure Chest",
"transactionID": "0AF9D5CE-52EC-402E-BE65-933525FF6472",
"productID": "4019",
"transactionServer": "APPLE",
"transactionReceipt": "ewok9Ja81............991KS==",
"transactionType": "PURCHASE",
"productsReceived": {
"virtualCurrencies": [
{
"virtualCurrency": {
"virtualCurrencyName": "Gold",
"virtualCurrencyType": "PREMIUM",
"virtualCurrencyAmount": 100
}
}
],
"items": [
{
"item": {
"itemName": "Golden Battle Axe",
"itemType": "Weapon",
"itemAmount": 1
}
},
{
"item": {
"itemName": "Mighty Flaming Sword of the First Age",
"itemType": "Legendary Weapon",
"itemAmount": 1
}
},
{
"item": {
"itemName": "Jewel Encrusted Shield",
"itemType": "Armour",
"itemAmount": 1
}
}
]
},
"productsSpent": {
"realCurrency": {
"realCurrencyType": "USD",
"realCurrencyAmount": 499
}
},
"platform": "PC_CLIENT",
"sdkVersion": "Unity SDK v4.0.0"
}
}
Y se requiere el código siguiente para crearlo utilizando la clase auxiliar Transaction.
Código:
Transaction myTransaction = new Transaction(
"IAP - Another Large Treasure Chest",
"PURCHASE",
new Product() // Products Received
.AddItem("Golden Battle Axe", "Weapon", 1)
.AddItem("Mighty Flaming Sword of the First Age", "Legendary Weapon", 1)
.AddItem("Jewel Encrusted Shield", "Armour", 1)
.AddVirtualCurrency("Gold", "PREMIUM", 100),
new Product() // Products Spent
.SetRealCurrency("USD", Product.ConvertCurrency("USD", 4.99m)))
.SetTransactionId("100000576198248")
.SetProductId( "4019")
.SetServer("APPLE")
.SetReceipt("ewok9Ja81............991KS==");
DDNA.Instance.RecordEvent(myTransaction);
O puedes usar un ayudante de GameEvent
Código:
GameEvent transactionEvent = new GameEvent("transaction")
.AddParam("transactionName", "IAP - Large Treasure Chest")
.AddParam("transactionID", "100000576198248")
.AddParam("productID", "4019")
.AddParam("transactionServer", "APPLE")
.AddParam("transactionReceipt", "ewok9Ja81............991KS==")
.AddParam("transactionType", "PURCHASE")
.AddParam("productsReceived", new Product()
.AddItem("Golden Battle Axe", "Weapon", 1)
.AddItem("Mighty Flaming Sword of the First Age", "Legendary Weapon", 1)
.AddItem("Jewel Encrusted Shield", "Armour", 1)
.AddVirtualCurrency("Gold", "PREMIUM", 100))
.AddParam("productsSpent", new Product()
.SetRealCurrency("USD", Product.ConvertCurrency("USD", 4.99m)));
DDNA.Instance.RecordEvent(transactionEvent);
Tenga en cuenta: No puede simplemente multiplicar el valor decimal de una moneda por 100 para obtener el valor en la unidad monetaria más pequeña, algunas monedas no tienen 2 unidades monetarias después del punto decimal.
Hay un método en el SDK que puede ayudarle con esto. La clase Product contiene un método ConvertCurrency (códigode cadena, valor decimal) que devuelve una representación entera que se puede utilizar con el método SetRealCurrency. Este método también funcionará para monedas que no utilizan una unidad monetaria menor, por ejemplo, como el yen japonés (JPY).
Alternativamente, verifique la documentación del código de moneda ISO-4217,de 3 caracteres y confirme el factor de multiplicación que debe aplicar a cada realCurrencyType.
Código:
"realCurrency": {
"realCurrencyType": "USD",
"realCurrencyAmount": 499
}
Este evento puede ser más complejo, pero la estructura es lógica, flexible y proporciona un mecanismo para que los jugadores gasten o reciban cualquier combinación de monedas y artículos.
Los tres términos que se enumeran a continuación son nuestras pautas de mejores prácticas para los tres tipos generales de moneda virtual, definidos por su fuente.
GRIND = moneda que se gana a través del juego o las características del juego.
PREMIUM = moneda que se puede comprar a través de compras con moneda del mundo real.
PREMIUM_GRIND = moneda que puede provenir de cualquiera de las fuentes anteriores.
El currencyType no tiene un efecto en los paneles de ingresos, solo están ahí para distinguir las transacciones al realizar un análisis adicional de los datos. Puedes enviar estos tipos predeterminados o se puede agregar otra enumeración si hay algo más apropiado para tu juego.
Validación de transacciones
La plataforma puede llevar a cabo la validación de recibos de transacciones con varias tiendas para garantizar que cualquier ingreso que se muestre en sus paneles sea un ingreso genuino y no el resultado de un juego pirateado o jailbreak.
Si desea utilizar la validación de transacciones, deberá agregar un par de detalles a la página "Editar detalles del juego" a la que se puede acceder desde el enlace "Administrar juegos" a la izquierda de la pantalla de bienvenida.
Por ejemplo, para Apple, establecería su Apple StoreID de 9 dígitos. 971883677 y la URL del servicio de validación de recibos de Apple para validar con el servicio de validación de recibos de producción. N.B. – Si está enviando recibos de prueba, establezca su StoreID en 0 y establezca la URL de validación en: https://sandbox.itunes.apple.com/verifyReceipt.
También debe enviar parámetros adicionales junto con cada evento de transacción para decirle a deltaDNA que la transacción debe validarse.
Por ejemplo, para validar un IAP de Apple Store
Código:
"transactionServer": "APPLE",
"transactionID":"100000576198248",
"transactionReceipt": "ewok9Ja81............991KS==",
El transactionReceipt son los datos de recibo codificados BASE 64 que fueron devueltos por Apple. Consulte el sitio web para desarrolladores de Apple para obtener detalles sobre la validación de recibos de Apple.
Para validar Google play IAP, envíe la transacciónServidor,los datos de compra como la transacciónReceipt y la 'firma de datos en la aplicación' como transacciónReceiptSignature
Código:
"transactionServer":"GOOGLE",
"transactionReceipt":"{
\"orderId\":\"GPA.1234-5678-9012-34567\",
\"packageName\":\"com.example.app\",
\"productId\":\"exampleSku\",
\"purchaseTime\":1345678900000,
\"purchaseState\":0,
\"developerPayload\":\"bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ\",
\"purchaseToken\":\"opaque-token-up-to-1000-characters\"
}",
"transactionReceiptSignature ":"rNvoHwiBdLSW+........VncbYVJ61fmfsQ=="
Dado que la transacciónReceiptSignature se genera a partir del recibo de la transacción y una clave privada para validar la recepción, esta deberá ser exactamente la cadena proporcionada por Google y pasada como una cadena, no un objeto JSON anidado.
deltaDNA validará sus ingresos y agregará un parámetro revenueValidated adicional, que contiene los siguientes valores potenciales, a su evento de transacción.
- 0 – no se realiza ninguna validación.
- 1 – verificación de validación de ingresos pasados.
- 2 – comprobación de validación fallida de ingresos.
- 3 – se intentó la validación de ingresos, pero se desconoce el resultado (el servicio de validación puede no haber estado disponible).
Las transacciones que no se validen con el código de estado 2 o 3 se excluirán de los gráficos de measure revenue y de las métricas de usuario.
Dado que las transacciones de sandbox en realidad no generan ingresos, estas no se muestran de forma predeterminada en los gráficos de ingresos, pero si desea que aparezcan, puede elegir la URL de sandbox en la página "Editar detalles del juego" (https://sandbox.itunes.apple.com/verifyReceipt), usar 0 como Apple StoreID y omitir el envío del transactionID ya que esto no es parte del recibo de sandbox. Le recomendamos encarecidamente que realice una prueba final con una transacción real en Apple Store, ya que solo dicha transacción tiene todos los campos configurados correctamente.
Ejemplo 4 – Participar en campañas de puntos de decisión
Los juegos pueden recuperar información sensible al tiempo de Engage para modificar o personalizar el juego para jugadores individuales en tiempo de ejecución, en función de los resultados de una campaña en el juego o una prueba A / B definida en la interfaz de usuario de deltaDNA.
Tu juego puede realizar solicitudes de Engage en puntos de decisión predeterminados en tu juego y la respuesta te permitirá personalizar el juego o anular la configuración predeterminada para ese usuario al instante.
En el ejemplo siguiente se muestra cómo se puede utilizar una campaña engage decision point para cambiar una oferta de IAP realizada al jugador:
- Crear una campaña de Punto de Decisión en la plataforma deltaDNA.
- Realiza una solicitud de Engage en tu código. Y reaccionar a la respuesta en una devolución de llamada.
- Para obtener fragmentos de código relacionados con las llamadas de Engage, consulte nuestra página de documentación de GitHub.
Para todas las llamadas de engage se le devolverá una respuesta JSON. Tu juego debe estar estructurado de tal manera que no se detenga si el usuario está en una conexión de alta latencia.
Código:
{
"transactionID": 1725229742665236500,
"parameters": {
"creditPackPrice": 99,
"creditPackSize": 1
}
}
La respuesta engage contiene un transactionID y un objeto parameters que contiene cualquier parámetro relevante para este jugador en este momento.
Si el dispositivo no tiene conectividad a Internet en el momento de la solicitud de Engage, una respuesta en caché de la última solicitud de Engage exitosa para el mismo punto de decisión se incluirá en la respuesta. El parámetro isCachedResponse indicará que se trata de una respuesta almacenada en caché.
Código:
{
"transactionID": 1725229742665236500,
"isCachedResponse": true,
"parameters": {
"creditPackPrice": 99,
"creditPackSize": 1
}
}
Es posible que reciba una respuesta que contenga un id de transacción, pero sin parámetros. Esto indica que el jugador no ha cumplido con ningún criterio de calificación o ha sido asignado a un grupo de control.
Si hubo un error al procesar su solicitud de Engage en el servidor, su respuesta contendrá un parámetro statusCode que contiene el código de estado correspondiente.
400: entradas mal formadas o incorrectas de alguna manera, o está enviando parámetros en tiempo real que no se han agregado a su lista de parámetros de juego.
403 – clave hash secreta incorrecta o Engage no está habilitado en su cuenta.
Compruebe que tiene habilitado el paquete"On-Demand"en su página de Paquetes de Game ->, es posible que deba obtener el Propietario de la cuenta de su cuenta deltaDNA para que lo haga por usted.
404 – URL incorrecta o clave de entorno desconocida.
Mensajería de imagen
Engage Campaigns puede entregar mensajes emergentes a tu juego en tiempo de ejecución. Los mensajes de imagen reutilizables se crean en el Action Manager (Engage->Actions)y se asignan en el Campaign Manager (Engage->Campaigns). El SDK de Unity tiene una clase Popup que dibuja el mensaje de imagen sobre tu juego. La ventana emergente está impulsada por eventos, por lo que puede controlar cuándo se descarga la imagen de nuestros servidores y cuándo se presenta al reproductor.
Cada mensaje consta de dos partes, un mapa de sprites contiene imágenes para el fondo y una serie de botones, y un diseño que describe cómo mostrar estas partes. El diseño utiliza restricciones para entrenar cómo escalar y dónde colocar la ventana emergente. Esto significa que no tenemos que preocuparnos por los tamaños de pantalla, pero también podemos proteger partes de la pantalla para que no se cubran. La imagen se dibuja lo más grande posible dentro de esas limitaciones sin dejar de mantener la relación de aspecto original.
Una solicitud de participación de mensajería de imagen es la misma que cualquier otra solicitud de campaña de Participación.
Código:
{
"decisionPoint": "missionDifficulty",
"userID": "12344-232121-122144-11d32345",
"sessionID": "9098213--12312---41255--512555",
"platform": "IOS_MOBILE",
"version": "4",
"parameters": {}
}
El mensaje de respuesta contiene la imagen y la información de diseño de la ventana emergente, así como información sobre cualquier acción asignada a las imágenes.
Código:
{
"transactionID": 1842299243025399800,
"image": {
"width": 512,
"height": 256,
"format": "png",
"spritemap": {
"background": {
"x": 2,
"y": 74,
"width": 320,
"height": 180
},
"buttons": [
{
"x": 2,
"y": 38,
"width": 160,
"height": 34
},
{
"x": 2,
"y": 2,
"width": 160,
"height": 34
}
]
},
"layout": {
"landscape": {
"background": {
"contain": {
"halign": "center",
"valign": "center",
"left": "25%",
"right": "25%",
"top": "0px",
"bottom": "0px"
},
"action": {
"type": "dismiss"
}
},
"buttons": [
{
"x": 0,
"y": 146,
"action": {
"type": "dismiss"
}
},
{
"x": 160,
"y": 146,
"action": {
"type": "action",
"value": "POWERUP"
}
}
]
}
},
"shim": {
"mask": "dimmed",
"action": {
"type": "dismiss"
}
},
"url": "https://download.deltadna.net/engagements/429c686a43484befb611f4826312e835.png"
},
"parameters": {
"powerUpName": "MoHawk"
}
}
La url es la ubicación del archivo de imagen de mapa de sprites. El ancho y el alto son el tamaño de la imagen, y el formato es el formato de la imagen.
El objeto spritemap describe la ubicación de los activos de imagen en el mapa de sprites. Los botones son opcionales dependiendo del número de botones en el mensaje.
El objeto de diseño describe cómo debe aparecer el fondo en la pantalla. Contiene teclas horizontales y / o verticales dependiendo del diseño preferido. Si solo hay una tecla presente, las reglas se aplican independientemente de la orientación. La orientación de diseño contiene reglas para el fondo y la ubicación de los botones.
Para el fondo son válidos dos modos: cubrir que escala la imagen de fondo para que sea lo más grande posible, y contener que hace que la imagen sea lo más grande posible de tal manera que se satisfagan todas las restricciones.
Cada objeto de fondo y botón puede tener una acción. El tipo de acción puede ser ninguno, descartar, vincular o acción.
Si el tipo es vínculo o acción, un campo de valor proporcionará un valor de cadena para devolver a la devolución de llamada asociada con el botón. Si es un enlace, el SDK abre automáticamente el navegador.
Código:
"action": {
"type": "action",
"value": "POWERUP"
}
Código:
"action": {
"type": "link",
"value": "https: //www.deltadna.com"
}
El campo shim describe cómo se debe manejar el resto de la pantalla detrás del mensaje. La máscara puede ser ninguna, en cuyo caso no se agrega nada, por lo que aún se puede hacer clic en los botones detrás de la ventana emergente, borrar, lo que tendrá el efecto de evitar que se haga clic en los botones de fondo, y atenuar lo que oscurece la pantalla. El shim también admite acciones, por lo que hacer clic en él también puede descartar la ventana emergente.
Consulta nuestra página de GitHub sobre cómo implementar la interacción de la imagen y manejar los parámetros opcionales devueltos junto con la imagen.
Notificaciones push de Android
El SDK de deltaDNA puede solicitar un ID de registro de Android para el dispositivo de un jugador y comunicarlo a la plataforma deltaDNA mediante un evento notificationServices, aunque es posible que deba agregar este evento a su juego en el Administrador de eventos. DeltaDNA puede utilizar este ID para enviar mensajes de notificación push dirigidos al dispositivo.
DeltaDNA utiliza el servicio Firebase Cloud Messaging para enviar notificaciones push como parte de una campaña fuera del juego.
Antes de que el SDK se pueda usar para registrar el dispositivo para las notificaciones push, hay un par de pasos que primero debe completar.
Recupera el ID de remitente y el ID de la aplicación de Firebase. Puede encontrar más información sobre cómo recuperar estos valores y configurar FCM en nuestra guía de configuración de FCM )
Configura estos valores en tu proyecto en la pantalla de configuración: se puede acceder a ello desde el menú del Editor de Unity en DeltaDNA > Notificaciones > Configurar Android
La siguiente línea de código se puede utilizar para registrar el dispositivo para las notificaciones push:
Código:
DDNA.Instance.AndroidNotifications.RegisterForPush Notifications();
Esto recuperará el ID de registro de Android del dispositivo y lo enviará a la plataforma deltaDNA para ser utilizado como destino para notificaciones push. Para que la plataforma utilice este ID de dispositivo como destino, debe configurar su clave de API de Google en la plataforma; el proceso para esto se puede ver en la Guía fcM en Recuperación de valores de configuración.
Puede encontrar más información sobre las notificaciones push de Android y la integración del SDK de Unity en general en nuestra página de GitHub del SDK de Unity.
Se recomienda que hagas uso de Firebase Cloud Messaging, sin embargo, algunas aplicaciones más antiguas pueden seguir utilizando Google Cloud Messaging: puedes encontrar información sobre cómo recuperar valores de configuración de GCM en nuestra guía de configuración de GCM.
Notificaciones push de Apple (iOS)
El SDK de deltaDNA para Unity puede almacenar el token de notificación push de Apple y enviarlo a deltaDNA, lo que permite que la plataforma deltaDNA envíe mensajes de notificación push dirigidos a los jugadores. Tu aplicación será la encargada de solicitar una notificación push a Apple.
Para solicitar un token de notificación push de Apple:
Código:
DDNA.Instance.IosNotifications.RegisterForPushNoti fications();
El token se enviará a deltaDNA en un evento notificationServices. Es posible que debas agregar el evento notificationServices a tu juego mediante el Administrador de eventos.
También deberá cargar su certificado iOS en la plataforma deltaDNA para que Apple acepte solicitudes de notificaciones push de deltaDNA, puede hacerlo en la página Configuración -> Herramientas - Notificaciones -> Administrar identidad. Su certificado de Apple debe contener tanto su certificado como su clave y guardarse como un archivo .p12.CertificateIcon
Consulte nuestra Guía de certificados de Apple,para obtener más información sobre cómo aprovisionar su aplicación para recibir mensajes de notificación push,crear un certificado y guardarlo en el formato correcto.
Identificadores de Apple
Apple Advertising Identifier y VendorID deltaDNA no registran el identificador de publicidad ni el vendorID.
Si desea registrar estos parámetros en deltaDNA, es responsable de recuperarlos del dispositivo y enviarlos como parámetros personalizados con cualquier evento al que desee adjuntarlos. También deberá agregar estos parámetros personalizados en la herramienta de administración de eventos.
Marcas de tiempo del evento
El SDK de Unity marca automáticamente los eventos mediante el reloj del dispositivo cliente. Esto puede causar imprecisiones cuando el dispositivo no está configurado en la hora o fecha correctas e incluso hacer que los eventos se rechacen si el tiempo está demasiado lejos. Sin embargo, el comportamiento de marca de tiempo local se puede anular y puede proporcionar su propio método de sellado de tiempo que se utilizará para los eventos de marca de tiempo.
Código:
// Override Default Timestamp
DDNA.Instance.SetTimestampFunc(() =>
{
DateTime dt = DateTime.UtcNow.AddSeconds(localTimeDelta);
return dt;
});
También es posible deshabilitar completamente la marca de tiempo en el dispositivo y enviar eventos sin una marca de tiempo, esto dará como resultado que el evento tenga una marca de tiempo con la hora del servidor Recopilar cuando se reciba el evento. Sin embargo, no recomendamos este enfoque, ya que hay un par de efectos secundarios indeseables.
El SDK de Unity almacena en caché los eventos del reproductor localmente para garantizar que no se pierdan si los dispositivos pierden conectividad. Por lo tanto, es posible que los eventos se reciban muchos días después de que ocurrieron.
Los eventos se cargan en lotes que contienen varios eventos, ya que esto es mucho más eficiente que enviarlos de uno en uno. Si tuviera que usar la marca de tiempo del servidor Collect, esto haría que pareciera que el jugador está jugando en ráfagas frenéticas. Los eventos se verían como si todos ocurrieran dentro de unos pocos milisegundos entre sí y luego nada hasta que se cargue el siguiente lote.
Si debe utilizar la marca de tiempo del servidor Recopilar, puede hacerlo configurando DDNA. Instancia. UseCollectTimestamp(true);
https://youtu.be/qauGq5afZRw
Cinemática Enemies de Unity nos muestra los avances tecnológicos
Cinemática Enemies de Unity nos muestra los avances tecnológicos donde la compañía quiere sacar pecho y mostrar músculo. Se trata de una nueva y hermosa cinemática CG de dos minutos de duración; que muestra las posibilidades del motor de juego Unity para crear humanos digitales fotorrealistas. Incluido un nuevo sistema de cabello basado en hebras.
El cortometraje ha sido publicado en el en GDC 2022, donde Unity organiza una sesión sobre la tecnología subyacente.
Una demostración de humanos digitales más exigente técnicamente que la demostración de The Heretic Enemies. Que se adentra más en el territorio establecido por el de The Heretic, la demostración tecnológica de Unity de 2019.
En este momento, la firma describe The Heretic como un primer intento de renderizar personajes humanos fotorrealistas dentro del motor del juego. La compañía asegura que este es su mayor punto a la hora de atraer nuevos desarrolladores.
Tecnología humana digital
Desde entonces, Unity ha fortalecido considerablemente su tecnología humana digital. En parte a través de las adquisiciones de la instalación de VFX Weta Digital y sus herramientas internas; y más recientemente, de Ziva Dynamics.
La cinemática Enemies de Unity refleja ese aumento de confianza, despojando la acción circundante y poniendo en primer plano al actor digital. Todo el cortometraje es un solo zoom largo de cámara en la cara del personaje, que termina en primer plano.
Hace uso de las recientes mejoras en la iluminación y el renderizado en Unity. Al igual que con The Heretic, la cinemática Enemies de Unity muestra las posibilidades nuevas y existentes en Unity.
El cortometraje/cinemática se describe como el uso de todo el conjunto de características de High Definition Render Pipeline (HDRP) de Unity. Incluido el sistema de RayTrace por GPU introducido en la versión Unity 2019.3. Pero que actualmente aún figura como una vista previa tecnológica.
La cinemática Enemies de Unity también hace uso de las características de Unity 2021.2. La versión estable actual, incluidas las mejoras en Screen Space Global Illumination (SSGI); y Adaptive Probe Volumes, su sistema experimental de sonda de luz.
La cinemática Enemies de Unity muestra nuevas características
Entre esas características encontramos los experimentos y pruebas para simular piel y cabello. La mayor parte de las nuevas características vienen durante la creación de personajes. Incluidos los avances en la simulación de piel y cabello.
La publicación del blog de Unity no entra en muchos detalles sobre el primero; simplemente señala que la firma desarrolló tecnología de tensión para imitar los cambios en el flujo sanguíneo a la piel en la cara del personaje mientras habla.
Hay más detalles sobre el cabello, vemos que el sistema para fijar el vello facial a la piel ahora permite trabajar con GPU; lo cual es de agradecer para ahorrar tiempo.
Sin embargo, la mayor novedad es Unity Hair, un nuevo sistema capilar basado en hebras, descrito como una solución integrada para simular y renderizar cabello compatible con todas las canalizaciones de renderizado de Unity.
Al igual que el sistema de cabello de Unreal Engine, está diseñado para funcionar con aplicaciones que exportan en formato Alembic. Para realizar la cinemática Enemies de Unity, la compañía ha utilizado XGen de Autodesk Maya, pero ahora está validando el flujo de trabajo con Barbershop de Weta Digital.
El cortometraje también hace uso de un nuevo modelo de sombreado (Shader) de cabello en el HDRP, descrito como similar al modelo de Shader de Marschner. Utilizado en motores de render offline como RenderMan.
No está claro qué tipo de máquina necesitaremos para hacer uso de todas esas tecnologías. Según Unity, Enemies se ejecuta en tiempo real a resolución 4K; aunque no hay información sobre las especificaciones del sistema.
Humanos digitales de alta fidelidad en Unity
Crear y representar un personaje humano digital creíble es uno de los problemas más difíciles en los gráficos por ordenador. Pero en los últimos años también hemos visto avances sustanciales en muchas áreas de la tecnología. Lo que alimenta mucho entusiasmo entre los desarrolladores para imaginar las oportunidades que se avecinan.
La tecnología central de Unity ha estado en constante evolución para satisfacer las crecientes expectativas de los creadores de alta calidad visual y realismo, incluso cuando se trata de humanos digitales.
Como parte de nuestros esfuerzos para preparar Unity para ejecutar y renderizar humanos digitales realistas, hace algún tiempo nuestro equipo de Demo fue pionero en la demo de The Heretic, y ahora ha ampliado el trabajo con la creación de Enemies.
The Heretic fue un paso fundamental para nosotros en el camino hacia los Enemies. Aprendimos mucho, desarrollamos nuevas tecnologías que sentaron las bases para un mayor desarrollo, probamos varios enfoques, cometimos nuestra parte justa de errores y aprendimos de ellos. Cuando se terminó el proyecto, lanzamos la tecnología a la comunidad en el paquete Digital Human, pero teníamos muchas ideas sobre dónde llevarla a continuación y qué más podíamos hacer. En cierto modo, el proyecto Enemies casi se definió a sí mismo.
Un impulso de calidad más amplio
En estrecha alineación con las hojas de ruta y los esfuerzos de desarrollo de los equipos de ingeniería de Unity, el equipo de demostración adopta todas las nuevas tecnologías relevantes desde una etapa muy temprana. También llena los vacíos entre las diversas hojas de ruta al realizar mejoras y correcciones y contribuirlas, y desarrolla nuevas tecnologías cuando es necesario.
Con Enemies, nuestros esfuerzos fueron en tres direcciones: desarrollar una solución para el cabello, mejorar el realismo de la cara y hacer todo eso en el contexto de una pieza de contenido real.
Esto significa que todos los gráficos nuevos, en curso y existentes y las características principales de Unity se llevaron al máximo, incluida la interoperación fluida, para aumentar la calidad general de la imagen. Más específicamente, Enemies utiliza todo el conjunto de características de High Definition Render Pipeline (HDRP) de Unity, Screen Space Global Illumination (SSGI), los nuevos volúmenes de sonda adaptativa, trazado de rayos, Deep Learning Super Sampling (DLSS) de Nvidia y cualquier otra característica, grande o pequeña, que sea relevante para nuestros objetivos.
Nuestro nuevo humano digital en esta cinemática Enemies
Una persona de diferente etnia y con diferentes rasgos faciales proporciona un conjunto de desafíos adicionales que no abordamos con el personaje Gawain en The Heretic. Para Enemies, elegimos a una actriz de unos 40 años, alguien que encajaba en el papel desde una perspectiva narrativa y presentaba un nuevo nivel de desafíos técnicos.
Para empezar, la piel más clara es más transparente y el flujo sanguíneo tiene un efecto más visible en su piel a medida que se mueve y habla, por lo que desarrollamos tecnología de tensión para impulsarla. Las arrugas son más pronunciadas y necesitan una atención especial desde una perspectiva de sombreado e iluminación.
Los ojos presentan su propio subconjunto de desafíos, algunos de los cuales habíamos resuelto, pero aumentamos el realismo agregando una cáustica. La pelusa de melocotón facial o vello agrega un realismo sutil pero importante al Shader de la piel, y lo hicimos posible moviendo el sistema Skin Attachment a la GPU. Y por último, pero no menos importante, podemos trabajar con pelo largo.
Una nueva solución capilar para Unity en esta cinemática Enemies
Desarrollamos una nueva solución Unity Hair que consta de tres partes, creando uniones de aspecto natural; y el movimiento del cabello del protagonista.
El sistema Hair (con simulación de cabello basada en hebras) es una solución integrada. Este sistema funciona con cualquier herramienta de autoría que genere datos en formato Alembic, por lo que puede crear sus novios en la herramienta de su elección.
Para permitir un cabello y piel de aspecto realista, Unity ha desarrollado el sombreado de cabello en HDRP, que es similar a un modelo que se usa a menudo en películas animadas y de acción en vivo (por ejemplo, Marschner/Disney). Esto nos permite crear resultados visuales elevados en cualquier condición de luz sin necesidad de cambiar los parámetros para un buen rendimiento.
La representación del cabello nos permite renderizar mechones de cabello muy delgados de manera eficiente y reduce la cantidad de aliasing causado por los mechones que no se rasterizan correctamente cuando son demasiado pequeños en la pantalla. En Enemies, hemos usado un búfer de visibilidad multimuestreo para reducir el aliasing de hebras muy delgadas y el sombreado se realiza en un atlas de sombreado separado, desacoplando la visibilidad del sombreado.
¿Cuándo puedo tenerlo?
Al igual que con los proyectos anteriores, el equipo de demostraciones compartirá la tecnología desarrollada para Enemies con la comunidad. Para que puedas probarla en tus propios proyectos de Unity.
En un mes o dos, lanzaremos un paquete Digital Human 2.0 que contiene todas las actualizaciones y mejoras que hemos realizado desde la versión que compartimos para The Heretic.
También lanzaremos un paquete que contiene el sistema Hair basado en hebras en GitHub, que nos permite recopilar comentarios y realizar actualizaciones antes de que se convierta en una función oficialmente compatible. Vigila el blog y las redes sociales de Unity para asegurarte de que te avisen cuando estos paquetes estén disponibles.
La mayoría de las mejoras en Unity que se originaron a partir de la producción de Enemies, o que se adoptaron directamente en ella, ya están en Unity 2021.2 o se enviarán en 2022.1 o 2022.2.
Los planes de disponibilidad
Unity planea hacer que la nueva tecnología desarrollada para Enemies esté disponible públicamente. Será en Unity 2022.1, actualmente disponible en versión beta, y Unity 2022.2, actualmente en alfa.
El software es compatible con Windows 7 y versiones superiores, Ubuntu 18.04/20.04 y CentOS 7 Linux, y macOS 10.14 y versiones superiores. Está disponible solo en modo de alquiler a través de suscripciones personales gratuitas o planes Pro y Plus de pago.
Unity también tiene pensado publicar un paquete Digital Human 2.0, similar al de The Heretic, actualmente disponible de forma gratuita en Unity Asset Store, en los próximos meses. El paquete para el sistema Unity Hair se publicará en GitHub, aunque aún no hay fecha.
Veamos la cinemática Enemies de Unity
Puedes leer más sobre el desarrollo de la cinemática Enemies de Unity en el sitio web de Unity Technologies.
Reutilización de materiales con variantes dinámicas en Unity
Reutilización de materiales con variantes dinámicas en Unity, la compañía ha publicado Unity 2022.1, la primera de las dos actualizaciones programadas para el motor de juegos para este año.
Los cambios son de gran alcance, incluidas nuevas opciones para personalizar Unity Editor. Vemos nuevas herramientas para crear perfiles de rendimiento y mejoras de rendimiento en Android.
Uno de los mayores cambios en Unity 2022.1 es el nuevo sistema de variantes dinámicas de materiales; destinado a facilitar la creación de búsquedas de variantes para objetos. Y la reutilización de materiales dentro de un proyecto o entre proyectos.
Disponible para las canalizaciones de renderizado HDRP y URP, permite a los artistas crear plantillas de material. En las que los hijos comparten propiedades comunes con un material primario; y anular solo aquellas propiedades que difieren.
A diferencia de los materiales copiados existentes, las variantes de material se actualizan automáticamente si el padre cambia. Los usuarios podemos bloquear las propiedades individuales del material o volver a separar una variante a un nuevo material principal.
Otros cambios en los materiales: Para los usuarios que crean materiales a través de scripts; la API de Material ahora también admite todas las propiedades de material de Unity. Incluidas las luces IES, los perfiles de difusión de HDRP y los estados de palabras clave.
Un Tech Stream renovado
Unity ha realizado cambios en su web para darle más valor al Tech Stream. Las versiones de Tech Stream ofrecen la oportunidad de ponerse manos a la obra con las primeras funciones. Proporcionar comentarios y entablar un diálogo sobre cómo creamos herramientas que trabajen más duro. Los Tech Streams se lanzan dos veces al año y aseguran que cuando se publique LTS en 2023 ya estés familiarizado y preparado para incorporar toda la funcionalidad en su nuevo proyecto.
Esta primera versión importante del nuevo ciclo de vida está basada en sus comentarios y sugerencias sobre dónde invertir los recursos de ingeniería de Unity. En esta publicación, compartimos solo algunos de los aspectos más destacados que cubren áreas de enfoque clave. Incluida la interfaz de usuario unificada, la usabilidad del artista, la velocidad de iteración y las mejoras de la plataforma. Siempre puedes obtener más detalles en las notas oficiales de la versión.
Extensible Editor para Unity 2022.1
UI Toolkit es una solución unificada tanto para crear la interfaz de usuario en tiempo de ejecución como para ampliar el editor con herramientas personalizadas. En 2022.1, hemos agregado aún más funciones para los desarrolladores de herramientas que buscan personalizar el Editor para sus equipos con widgets de interfaz de usuario y formas personalizadas.
También han agregado TreeView con soporte de varias columnas, nuevas API de dibujo vectorial para personalizar la apariencia del elemento de la interfaz de usuario. Y están haciendo que progresivamente estén disponibles los menús de propiedades y los atributos de propiedad, empezando con los más utilizados.
En esta versión, hay un nuevo marco para crear Splines. Está diseñado para crear y manipular Splines en el motor, sobre todo al permitir a los programadores ampliar la funcionalidad con herramientas y componentes personalizados. Como por ejemplo crear instancias de geometría y moverse a lo largo de una Spline. Esta característica puede funcionar junto con los nuevos modos de edición y editar puntos Spline y tangentes utilizando las herramientas de edición estándar; y los accesos directos.
También hemos mejorado la creación procedural de materiales. Para los creadores que usan código para generar materiales, se ha extendido la API de materiales a todas las propiedades del material. Ahora admite estados de palabras clave, perfiles de difusión de HDRP y luces IES. Mejorando el uso de material procedural en el editor o en tiempo de ejecución.
Finalmente, han agregado una nueva API para Unity File System, que permite crear herramientas para la visualización y el análisis de Asset Bundle; que ayudan a tu equipo a optimizar el rendimiento.
Productividad mejorada en Unity 2022.1
La iteración rápida es un elemento clave de cualquier trabajo creativo; es lo que hace que el desarrollo de juegos sea tan divertido. En Unity están optimizando el núcleo del Editor de Unity para que puedas iterar rápidamente a lo largo de toda la vida útil de tus producciones. Desde la importación de activos, pasando por trabajar en el Editor, hasta la creación e implementación de un juego.
Al mismo tiempo, en Unity han sabido a través del foro de gráficos que los artistas técnicos están buscando herramientas de edición y API adicionales para ayudarlos a dar vida a su visión más rápidamente. Por lo tanto, basándose en los comentarios, han agregado nuevas opciones que ayudarán a cualquier equipo creativo a hacer más en menos tiempo.
La característica más votada de la hoja de ruta pública de renderizado y efectos visuales es la variante dinámica de materiales. Hemos escuchado que a menudo se reutilizan materiales base en diferentes proyectos, escenas o ubicaciones en un entorno. Lo que puede conducir a problemas de creación cuando los materiales se cambian fuera del contexto de su jerarquía implícita.
Esta es una característica crítica para cualquier proyecto más grande si queremos controlar todo el sombreador/material para el juego.
Reutilización de materiales con variantes dinámicas en Unity
La variación dinámica de materiales ofrece un flujo de trabajo integrado y potente para reducir los errores de iteración y autoría. Lo hace reutilizando materiales en equipos donde los artistas administran grandes cantidades de activos.
Ahora disponibles tanto en HDRP como en URP, las variantes de material permiten crear jerarquías de materiales, donde los hijos pueden compartir propiedades comunes con el material primario y anular solo las propiedades que difieren.
Los cambios en las propiedades comunes y no anuladas en el material de la plantilla se reflejarán automáticamente en el material variante. Lo que te ahorrará tiempo y hará que los cambios de material sean mucho más fáciles.
Sabemos que encontrar los elementos correctos en su proyecto puede llevar mucho tiempo, especialmente a medida que escalas. Es por eso que han introducido consultas de búsqueda visual para ayudarlo a encontrar lo que estás buscando más rápido. Además, también puedes crear consultas más complejas y aprovechar el selector de objetos editor para obtener selecciones más precisas para los campos de objetos.
Mejora para el desarrollo 2D
Para los creadores 2D, hay muchas mejoras en la productividad. En esta versión, nos hemos centrado en mejorar la velocidad de las mejoras en los cimientos; la importación, la animación y la física.
Para empezar, el Sprite Atlas v2 es ahora el predeterminado para todos los nuevos proyectos que ofrecen soporte para Accelerator y para carpetas como objetos que podemos empaquetar. Un aumento de productividad que es muy querido por los creadores de 2D. El trabajo con Adobe Photoshop para 2D se ve mejorado por la compatibilidad con la importación de archivos con la extensión PSD.
Junto con esto, han agregado la administración de capas en el importador PSD 2D, para ofrecer más control sobre qué capas se importan. La función Sprite Swap ahora tiene keyframing y vistas previas optimizadas. Lo que hace que el intercambio de sprites para animación 2D sea más intuitivo.
Para ayudar con la física 2D, Unity 2022.1 presenta la teselación de Delaunay. A menudo, los polígonos pueden ser demasiado delgados o pequeños y son filtrados por el motor de física. La teselación de Delaunay no solo deja de producir polígonos que son demasiado delgados o pequeños; sino que también produce menos polígonos para cubrir la misma área.
También continúan mejorando el administrador de paquetes para mejorar la forma de trabajar en los proyectos para que salgan más rápido. En esta versión, encontrará la capacidad de seleccionar varios paquetes a la vez para que pueda administrarlos de forma masiva. Junto con la opción de controlar la ubicación de las cachés del administrador de paquetes.
La relevancia de aumentar la productividad
Para aumentar aún más la productividad en otra parte del flujo de trabajo, el backend de scripting IL2CPP siempre generará versiones totalmente compartidas de todos los métodos genéricos. Esto permite a los programadores el uso de combinaciones de tipo genérico que no están presentes en tiempo de compilación para evitar toda una clase de errores difíciles de detectar que solo pueden ocurrir en tiempo de ejecución.
Hay tantas mejoras en la calidad de vida del editor que no podemos enumerarlas todas aquí, pero algunos aspectos destacados incluyen:
- Información detallada sobre el rendimiento.
- Mejoras en el administrador de accesos directos.
- Mejor interfaz de usuario en operaciones de deshacer y rehacer.
- Botón Cancelar para la ventana de progreso de apertura del proyecto.
- Más rápido para entrar y salir del modo Play, importar texturas y archivos pequeños (hasta en un 60%) y crear compilaciones.
Sabemos que la elaboración de perfiles de tus juegos y proyectos para obtener información sobre tu rendimiento es fundamental para tu éxito. Por lo tanto, en 2022, han seguido mejorando las herramientas para crear perfiles y análisis para ofrecer información completa sobre la que podemos actuar.
En esta versión, estamos viendo el administrador de temporización de tramas para capturar y acceder a datos de sincronización de tramas por GPU y CPU y marcas de tiempo a nivel granular.
Frame Timing Manager
Frame Timing Manager está disponible en el editor y permite orientar y ajustar los cuellos de botella de rendimiento en tu proyecto. Independientemente de la plataforma, con más información que nunca sobre el rendimiento de los fotogramas individuales. Juntas, estas características permiten crear herramientas para perfilar e informar sobre tus proyectos en cualquier plataforma.
Al crear o modificar una escena o si estás mejorando u optimizando el contenido, es importante comprender cómo se utiliza la gestión del marco. Agregan un Frame Stats Profiler al depurador de renderizado, disponible tanto en el editor (solo en modo de reproducción) como en un reproductor incorporado. Está implementado en todas las canalizaciones de renderizado mediante Scripts.
Esta herramienta no solo está destinada a desarrolladores; es para cualquiera que quiera identificar si una escena está vinculada a la CPU o a la GPU; y obtener un desglose de los tiempos de los fotogramas.
Optimizaciones de la plataforma Unity 2022.1
Finalmente, hablemos de la amplitud de las plataformas que se implementa todos los días. Es una de las principales razones por las que muchos eligen desarrollar en Unity. Es por eso que continuamos optimizando el soporte de la plataforma para nuevas funciones y las últimas API para impulsar la creatividad.
Para aquellos que buscan impulsar el rendimiento de Android aún más en los dispositivos Samsung, ahora puede aprovechar Adaptive Performance 4.0. Con eso, obtienes cuatro escaladores más que cubren física, calcomanías, personalización y selección de capas; muchos de los cuales incluyen muestras. Un beneficio importante es el soporte para secuencias de comandos visuales que simplifica aún más las secuencias de comandos con Adaptive Performance.
Unidades accesibles con Adaptive Performance 4.0 en el sistema Visual Scripting de Unity
Para los juegos de Android dirigidos a dispositivos con chipsets Arm, sabemos que deseas optimizar aún más. Con Unity 2022.1. Puedes acceder a datos de rendimiento de bajo nivel con el paquete System Metrics Mali, que expone métricas que proporcionan información sobre el impacto que producen tus cambios a nivel de hardware.
Instala el ejemplo Read GPU Metric que se incluye con este paquete para ver cómo se puede acceder a las métricas de GPU en tiempo de ejecución. En la plataforma iOS, hemos habilitado la última canalización de compilación incremental. Esto garantiza que solo reconstruya las partes de la aplicación donde ha habido cambios desde la compilación anterior.
La mejora continua de la experiencia de desarrollo de la consola incluye una mayor estabilidad general. Así como soporte adicional para la canalización de compilación incremental para Xbox.
Unity abre nuevos canales de monetización
Unity abre nuevos canales de monetización. La compañía se fusiona con ironSource, una plataforma de monetización de aplicaciones ironSource en un acuerdo de acciones que valora ironSource en 4.4 mil millones de dólares. Se espera que el acuerdo, que está sujeto a la aprobación regulatoria, se cierre a fines de 2022.
Al finalizar, los accionistas de ironSource serán propietarios del 26,5 % de la empresa fusionada. Aunque la junta directiva de Unity autorizó un programa de recompra de acciones de 24 meses por hasta 2.500 millones de dólares.
Una fusión que Unity espera transformar en su perfil financiero. El acuerdo es el último de una serie de adquisiciones de Unity, con empresas que el desarrollador del motor de juegos ha adquirido. Incluida la instalación de VFX Weta Digital, el especialista en herramientas de manipulación Ziva Dynamics y el desarrollador de SpeedTree IDV.
ironSource desarrolla tecnologías de monetización
ironSource es bastante diferente, ya que desarrolla tecnologías para distribuir y monetizar aplicaciones móviles.
Como todos sabemos Unity es una gran empresa que bien puede parecer todopoderosa, acostumbrada a comprar en lugar de fusionar. Pero es que esta vez se trata de una fusión real, ya que ironSource es también una gran compañía.
La junta directiva de Unity autorizó un programa de recompra de acciones de 24 meses de hasta 2.500 millones de dólares. Efectivo al cierre de la fusión, para reducir la dilución causada por la transacción.
Y segundo, porque el acuerdo llega menos de dos semanas después de que Unity despidiera al 4% de su fuerza laboral .
Se espera que el acuerdo se cierre en el cuarto trimestre de 2022, sujeto a la aprobación de los accionistas y el regulador.
Comunicado oficial
Unity anunció hoy que ha firmado un acuerdo para fusionarse con ironSource, aprovechando las herramientas; la plataforma, la tecnología y el talento de la empresa para formar una plataforma integral que permite a los creadores crear; publicar, ejecutar, monetizar y haga crecer los juegos en vivo y el contenido RT3D sin problemas.
Seguimos creyendo que el mundo es un lugar mejor con más creadores en él. Durante el año pasado, nos aseguramos de tener las herramientas y el enfoque correctos que ofrecen el mayor valor a nuestra comunidad de usuarios; particularmente a medida que la industria evoluciona. Hoy en día, los juegos no se inician, viven. Los jugadores quieren conexión, quieren jugar entre ellos y ser sociables. Y vemos que estas tendencias se extienden más allá de los juegos.
Como resultado, nos hemos centrado en perfeccionar nuestra plataforma de herramientas; soluciones y servicios que ofrecen y aceleran el valor para los creadores, independientemente del motor que elijan desarrollar. Desde la disponibilidad general de Unity Gaming Services hasta nuestras adquisiciones recientes de Parsec, SyncSketch, Wētā Digital y Ziva Dynamics. Hasta el trabajo que continuamos brindando en las herramientas principales de Unity y en Operate, nos enfocamos en brindar un valor extraordinario para los creadores.
Sumar potencial al motor de Unity
Nuestra visión es proporcionar a los creadores un motor poderoso y flexible a través del cual puedan hacer realidad sus visiones. De manera rápida y hermosa, al tiempo que presentamos las herramientas que los ayudan a aprender y comprender mejor a sus audiencias; ayudándolos a iterar y mejorar más rápidamente para construir un sólido y negocio escalable desde. A medida que nos acercamos a esta visión hoy, no podríamos estar más emocionados de incorporar ironSource a la familia Unity.
Si no conoce ironSource, aportan un historial comprobado de ayudar a los creadores a concentrarse en lo que mejor saben hacer: dar vida a excelentes aplicaciones y experiencias de usuario, al tiempo que permiten la expansión comercial en la economía de las aplicaciones. El conjunto de herramientas y soluciones de ironSource ofrece a la mayoría de los mejores juegos del mundo y muchas de las principales aplicaciones que no son de juegos las capacidades de monetización, marketing, análisis y descubrimiento que necesitan para construir y ejecutar negocios escalables basados en aplicaciones.
La combinación de ambas empresas acelerará el crecimiento de Unity como una empresa de software que impulsará la economía creadora de principio a fin. Para nuestra comunidad, impulsará una integración más estrecha entre las soluciones Operate y Create y ofrecerá la mejor combinación potencial de valor para creadores, editores y anunciantes, en juegos y más allá.
Turbocargando el valor de Operate Solutions para los creadores
Creemos que las mejoras de ironSource para las soluciones Operate de Unity generarán instantáneamente un beneficio inmediato para los creadores. La misión de Operate es permitir que el éxito de nuestros creadores brinde las mejores experiencias de jugador y construya negocios sólidos . Una herramienta importante para esto es Unity Ads, nuestra solución de monetización para juegos móviles que permite a los desarrolladores de juegos monetizar toda su base de jugadores.
La publicidad ha sido durante mucho tiempo y creemos que seguirá siendo el motor económico para juegos móviles. Impulsando a los jugadores a sus juegos e impulsando los ingresos a escala. Aunque la publicidad enfrenta algunos desafíos temporales en este momento debido a factores macroeconómicos; este es un negocio que ha demostrado ser resistente a pesar de los muchos altibajos de los ciclos económicos y los cambios regulatorios.
Al unir fuerzas con ironSource, se presentó la oportunidad adecuada para que Unity se atreviera y avanzara en nuestra misión de ser el motor/impulsor económico del éxito de nuestros creadores para que puedan continuar con su oficio de crear juegos. También refuerza nuestra fuerte convicción en la solidez y el crecimiento a largo plazo del negocio de la publicidad en juegos.
Unity abre nuevos canales de monetización multicanal
ironSource también ayudará a los creadores a expandir el descubrimiento multicanal, la UA y los canales de monetización para los creadores a través de Aura; y generará nuevas capacidades creativas y de análisis a través de Luna. Además, el alcance combinado de los más de 3.000 millones de usuarios activos mensuales (MAU) de Unity y ironSource ofrece beneficios de escala y datos que brindarán un mejor rendimiento para los clientes. Incluido un mejor retorno de la inversión publicitaria (ROAS) para compradores de anuncios y monetización para editores.
Redefiniendo el motor del juego: esto es más que anuncios
Con ironSource, Unity tomará el proceso lineal de crear juegos y contenido y experiencias RT3D y lo convertirá en uno interconectado e interactivo; creando la oportunidad de innovar y mejorar en cada paso del ciclo.
¿Qué pasaría si ese proceso ya no fuera primero crear, luego monetizar? ¿Qué pasaría si los creadores tuvieran un motor para juegos en vivo que, de forma predeterminada, les permitiera obtener indicadores tempranos del éxito de sus juegos a través de la adquisición de su prototipo por parte del usuario y les diera un ciclo de retroalimentación para mejorar sus juegos en función de las interacciones de jugadores reales desde el principio del proceso? Las ofertas combinadas de Unity y ironSource posicionarán de manera única a la compañía combinada como la única plataforma de crecimiento y creación de juegos para creadores.
Esta integración más estrecha entre Create y Operate de Unity significa un volante de inercia y un ciclo de retroalimentación de datos más poderosos que respaldan aún más el éxito de los creadores y la comprensión de lo que funciona entre el juego, el diseño y sus esfuerzos de monetización. Con la adición de SuperSonic, la solución de publicación de ironSource, la compañía combinada también romperá las barreras para publicar directamente a través del motor.
Inventando la rueda en cada cambio
Unity proporciona el motor que lleva las ideas desde el inicio hasta convertirlas en negocios viables. Este es un motor que niega la necesidad de que los desarrolladores y la industria en general reinventen la rueda cada vez que se crea un juego. Los engranajes de esto incluyen las herramientas para crear, publicar, ejecutar, monetizar y crecer. Es esta integración con ironSource y la interactividad e interoperabilidad resultantes a lo largo del ciclo de vida del juego lo que hace que Unity + ironSource sea único. Es nuestro conocimiento combinado y nuestra pasión por los desarrolladores de juegos lo que nos mantiene innovando para satisfacer sus necesidades hoy y en el futuro.
Solo tenemos éxito si los creadores tienen éxito y con ironSource uniéndose a la familia Unity, haremos que sea más fácil para ellos hacerlo en una plataforma centralizada e integrada.
Puedes leer el anuncio de Unity sobre la fusión con ironSource en el blog de la empresa.
Unity Muse y Unity Sentis
Unity ha anunciado emocionantes novedades en el campo de la inteligencia artificial para mejorar el proceso creativo en juegos y aplicaciones 3D en tiempo real. Dos herramientas destacadas son Unity Muse y Unity Sentis.
Unity Muse
Unity Muse está diseñado para agilizar el proceso de creación en Unity Editor mediante el uso de mecanismos de entrada naturales, como indicaciones de texto y bocetos. Una característica clave, Muse Chat, se encuentra actualmente en una versión beta cerrada. Esta función permite a los usuarios acceder rápidamente a la documentación, los recursos de capacitación y el contenido de soporte de Unity de manera precisa. Con el tiempo, Unity Muse ofrecerá aún más funciones, como la creación de texturas, sprites y animación de personajes.
Unity Sentis
Por otro lado, Unity Sentis es una solución de inteligencia artificial que facilita la integración de redes neuronales en Unity Runtime. Sentis, actualmente en fase beta cerrada, permite que los modelos de IA funcionen en diversas plataformas donde Unity está presente, como dispositivos móviles, PC, web y consolas de juegos populares como Nintendo Switch y Sony PlayStation. Esto elimina la necesidad de alojar modelos en la nube, lo que reduce complicaciones, latencia y costos asociados.
Otras novedades que incluyen inteligencia artificial
Unity también ha presentado soluciones de inteligencia artificial verificadas en la tienda de recursos de Unity. Estos paquetes de terceros cumplen con los estándares de calidad y compatibilidad de Unity, y tienen como objetivo potenciar el proceso creativo. Entre las funciones que ofrecen se encuentran NPC inteligentes con tecnología de IA, efectos visuales generados por IA, texturas, sprites 2D y modelos 3D, voz generativa y pruebas de juego con IA.
La compañía valora los comentarios de los usuarios sobre estas nuevas herramientas de inteligencia artificial y sus versiones beta cerradas. Además, ofrece el programa Unity AI Beta para que las partes interesadas se mantengan actualizadas sobre estas emocionantes ofertas de IA.
Rastrear cámara Dolly con Cinemachine en Unity
Rastrear cámara Dolly con Cinemachine en Unity, este software te ofrece una amplia gama de opciones para crear y utilizar cámaras virtuales en tus escenas. Si quieres lograr el efecto de seguir a un objeto en movimiento, al igual que en las películas donde la cámara sigue a un vehículo en movimiento o a una persona corriendo por la calle, Cinemachine te permite lograrlo con facilidad y sin complicaciones.
Para empezar, necesitarás configurar tu escena de la siguiente manera:
Añade una cámara virtual de Cinemachine a tu escena y configura su cuerpo como Tracked Dolly.
Coloca un objeto en tu escena que pueda ser animado o movido manualmente. Este objeto será el objetivo al que la cámara seguirá.
Una vez que hayas configurado estos elementos, estarás listo para disfrutar de los beneficios de Cinemachine y crear fascinantes tomas de seguimiento de objetos en movimiento.
Esta herramienta te permitirá añadir un toque cinematográfico a tus escenas de una manera sencilla y eficiente.
Experimenta con Cinemachine y dale vida a tus proyectos audiovisuales de una manera única
Ahora que has configurado la cámara virtual de Cinemachine y has añadido un objeto de juego como objetivo de seguimiento, es momento de crear un objeto de juego vacío llamado "Ruta" y agregarle un componente de tipo 'CinemachinePath'. Al hacer esto, verás que aparecerá un camino recto corto en tu escena.
Este camino ya tiene asignados por defecto dos waypoints: el punto 0 y el punto 1. Para visualizar los waypoints y poder seleccionarlos, puedes expandir la sección "Detalles de la ruta" en el inspector. Los waypoints se pueden seleccionar haciendo clic en ellos directamente en la escena o en los detalles de la ruta. Si deseas agregar puntos adicionales al camino, simplemente haz clic en el botón "+" en el administrador de matriz de waypoints en el inspector.
Con estos waypoints, puedes definir la trayectoria exacta que seguirá la cámara virtual de Cinemachine durante la animación o el movimiento. Añade tantos waypoints como necesites para lograr la ruta deseada. También puedes ajustar la posición y orientación de cada waypoint para refinar aún más el recorrido de la cámara.
Los waypoints en Cinemachine
Te ofrecen la flexibilidad de remodelar la pista del carro según tus necesidades. Puedes ajustar su posición y orientación para crear una variedad de trayectorias, incluso llegar a simular una emocionante montaña rusa si así lo deseas. Sin embargo, si prefieres mantener las cosas planas para este ejercicio, eso es perfectamente válido.
Al mantener la pista plana, podrás diseñar una ruta suave y constante para que la cámara siga al objeto en movimiento sin variaciones verticales pronunciadas. Esto puede ser útil para mantener un enfoque más sencillo y enfocado en el seguimiento horizontal.
Recuerda que los waypoints se pueden mover en el espacio tridimensional de tu escena. Puedes utilizar las herramientas de manipulación en el editor para ajustar las posiciones de los waypoints y remodelar la pista según tus preferencias. Si deseas mantenerla plana, simplemente asegúrate de que los waypoints se mantengan en el mismo plano horizontal.
En la cámara virtual, en la sección Cuerpo, especifica la ruta arrastrando el objeto del juego Ruta a la propiedad Ruta en el inspector.
Establece la propiedad Seguir de la cámara virtual para que sea el objeto simple que creó. Para mí, era una esfera verde.
Para habilitar la inteligencia de la cámara para seguir el objeto, habilita la propiedad Auto Dolly.
Si presionas reproducir para ejecutar el proyecto y muevo la esfera manualmente en la vista de escena, verás que la cámara virtual se mueve a su lado para seguir el movimiento.
La posición de la cámara virtual en la ruta se puede configurar manualmente mediante la propiedad Posición de la ruta ubicada en la sección Cuerpo de la cámara virtual.
Las Unidades de posición se pueden especificar para que coincidan con los waypoints (Unidades de ruta) o utilizando unidades de posición normalizadas donde 0 es igual al comienzo de la ruta del carro y 1 es igual al final de la misma. La posición y las unidades también se pueden manipular a través de un script.
Megacity Multiplayer te ayuda a crear un juego multijugador en Unity
El equipo de Unity acaba de lanzar un emocionante nuevo proyecto de muestra que ayudará a cualquier persona a crear su primer juego multijugador. Se trata de Megacity Multiplayer, una muestra de acción competitiva que permite a los usuarios sumergirse en la creación de ambiciosos títulos multijugador capaces de admitir a más de 64 jugadores simultáneos.
Todo esto es posible gracias al uso de Unity Gaming Services (UGS) y diversas soluciones como Game Server Hosting, Authentication, Voice Chat y Matchmaker.
Para probarlo, los usuarios pueden unirse o alojar un servidor de juegos, ya sea en su propio dispositivo o a través del alojamiento del servidor. Al ingresar al lobby, los jugadores serán transportados al impresionante mundo del juego Megacity Multiplayer, donde podrán sumergirse en un entorno inmersivo para jugar y chatear con otros usuarios.
El objetivo del juego es ganar puntos disparando a otros autos mientras compiten por el primer puesto en la tabla de clasificación, una experiencia emocionante y competitiva para todos los jugadores.
Unity destaca que su pila de tecnología orientada a datos (DOTS)
Esta añade una gran potencia al motor de Unity, permitiendo a los creadores desarrollar juegos aún más ambiciosos. El Entity Component System (ECS), una característica clave de DOTS, está presente en Unity 2022 LTS y en esta muestra de Megacity Multiplayer, ofrece funciones integradas para soportar la emocionante experiencia multijugador con más de 64 jugadores simultáneos. Esto permite un nivel de control y determinismo sin precedentes y extensible con ECS para Unity.
El equipo de Unity tiene planes emocionantes para el futuro, ya que desea portar la muestra Megacity Multiplayer al Universal Render Pipeline (URP), lo que abrirá aún más posibilidades creativas para los desarrolladores.
Si deseas obtener más información sobre este interesante proyecto de muestra, puedes encontrar detalles adicionales en el siguiente enlace.
Unity Wētā Tools presenta Deep Compositing
Unity Wētā Tools, la nueva división de Unity, ha introducido un nuevo complemento para Nuke, Deep Compositing, un conjunto de herramientas de composición profunda.
Este lanzamiento marca un hito, ya que representa la primera herramienta interna de Weta Digital disponible para el público en general desde que Unity adquirió esta prestigiosa instalación de efectos visuales en 2021.
Deep Compositing para Foundry Nuke forma parte del primer lanzamiento de la división Wētā Tools de Unity. Esta división se creó tras la adquisición de Unity, que también incluyó al desarrollador IDV de SpeedTree y a Ziva Dynamics, expertos en herramientas de rigging.
Wētā Tools se enfoca en VFX, animación y trabajo en tiempo real, con el propósito de ofrecer una cadena de herramientas completa para la creación, simulación y renderizado en 3D, para producciones de juegos y películas de cualquier escala.
https://youtu.be/l2w1EaIrRpQ
Durante la última década, Weta ha empleado su conjunto de herramientas Deep Compositing en la producción de películas icónicas como Rise of the Planet of the Apes y Avengers: Infinity War
Deep Compositing amplia las capacidades nativas de composición profunda de Nuke
El primer producto, Composición Profunda, está fundamentado en el conjunto de herramientas homónimo de Weta, galardonado con el Premio de la Academia Técnica y Científica, que ha sido empleado en la producción del estudio durante la última década.
Este se lanza como un complemento de Nuke, sumando alrededor de 90 nuevos nodos que permiten emplear datos de profundidad en el proceso de composición.
Estos nodos recién introducidos otorgan a los compositores un mayor control creativo sobre los elementos generados por computadora, lo que se traduce en tomas más precisas con efectos editables sin necesidad de renderizar nuevamente toda la escena.
Esta mejora deja atrás la propia nativa de Nuke
A pesar de que Nuke posee su propio conjunto de herramientas de composición profunda, Natalya Tatarchuk, Vicepresidenta de Unity Wētā Tools, ha comunicado que este nuevo complemento va mucho más allá de las capacidades nativas del software.
Si bien el flujo de trabajo central permanece intacto, los recién incorporados nodos ofrecen mayores posibilidades para trabajar de manera no destructiva, ofreciendo abundantes opciones para una edición impecable en el flujo de composición.
Además, los datos se almacenan en un formato significativamente más compacto que el formato de profundidad estándar de Nuke, agilizando la compilación de escenas y acelerando aún más la iteración.