Una semana después del lanzamiento del programa MATR1X Apollo, algunos usuarios afortunados obtuvieron su principal arma legendaria, NFT, "Judgment", abriendo cofres del tesoro. El precio de transacción más alto de "Judgment" es de hasta 120.000 dólares estadounidenses. El incidente ha causado entusiasmo en el mercado NFT. La discusión también ha hecho que más personas esperen con ansias los accesorios del juego Web3 NFT. Este artículo detallará el proceso de nacimiento del arma legendaria NFT MATR1X.

El origen de todas las cosas: el nacimiento de un arma legendaria

 

Mientras se ejecutaba el generador aleatorio en el servidor, un jugador afortunado sacó un arma legendaria con una probabilidad muy baja. En el generador aleatorio, esta arma legendaria tiene sólo unos pocos parámetros básicos: número NFT, ID de configuración, nivel de uso, souvenirs y sellos. Cuando se generan estos atributos originales, la información sobre esta arma legendaria ha quedado completamente determinada. Sin embargo, esta información bruta por sí sola no es suficiente para revelar un arma verdaderamente legendaria. Para presentar esta arma legendaria con un significado único a los jugadores, todavía tenemos mucho trabajo por hacer.

Crea algo de la nada: generación de metadatos NFT para Web3

Primero, necesitamos completar la información de metadatos de esta arma legendaria. Al configurar el parámetro ID, podemos leer diversa información básica sobre esta arma legendaria desde múltiples tablas de configuración, como tipo de arma, nombre, calidad, etc. Sin embargo, para una NFT, no podemos escribir toda la información del arma en los metadatos sin filtrar. Por lo tanto, primero pasaremos un filtro de atributos para filtrar los atributos que queremos presentar al jugador de toda la información de configuración de esta arma legendaria y los colocaremos todos en los metadatos.

Otro problema que encontramos es que muchos de los atributos del arma son pura información de datos, como el número 7 que representa una calidad legendaria. Pero al jugador no se le puede presentar simplemente el número 7. Por lo tanto, agregamos un conversor de propiedades que convierte estas propiedades de datos en información legible para el jugador. En el conversor de atributos, convertimos los atributos filtrados que queremos poner en metadatos. Por un lado, es para convertir datos en información de visualización y, por otro lado, es realizar la conversión de idioma en toda la información de descripción en este proceso (actualmente se usa el inglés de forma predeterminada). Después de la conversión, se obtiene la información de metadatos vista por el jugador.

Escritura maravillosa: solución de renderizado en la nube basada en Blender

A continuación, también debemos ocuparnos del elemento más especial e importante de los metadatos: la imagen de esta arma legendaria. Dado que esta arma legendaria tiene información de uso única y un conjunto de impresiones, hay muchas armas con diferentes niveles de desgaste y varias combinaciones de impresiones en MATR1X FIRE. No podíamos hacer que un diseñador dibujara todas estas imágenes de armas de una sola vez. Por lo tanto, diseñamos una solución para renderizar imágenes de armas basada en el software Blender y la implementamos en el servidor en la nube.

Primero, nuestro equipo de arte técnico produjo un conjunto de soluciones de materiales en Blender que son las mismas que las del motor Unity, de modo que los recursos materiales producidos por el diseñador puedan presentarse tanto en Blender como en el motor Unity al mismo tiempo. Basándonos en este conjunto de soluciones de materiales, también desarrollamos una herramienta de conversión de materiales entre Blender y Unity, de modo que las armas que se han producido en proyectos de juegos se puedan importar automáticamente a Blender sin tener que volver a crearlas. Además, el diseñador también creó múltiples conjuntos de iluminación y arreglos de cámara en la escena de Blender adecuados para renderizar imágenes desde diferentes ángulos, y ajustó el posprocesamiento de todo el entorno de renderizado para completar el efecto de renderizado final.

A través de esta solución, podemos crear y generar recursos exclusivos para esta arma legendaria en función de su información de metadatos y, finalmente, renderizar la imagen NFT para su visualización, presentando así a los jugadores un arma legendaria verdaderamente única.

Del punto a la superficie: creación de un clúster de renderizado de alto rendimiento

Después de resolver el problema de renderizado de esta arma legendaria, lo siguiente que debemos pensar es cómo resolver el problema del renderizado masivo y la velocidad de respuesta. Para ello, el equipo creó un clúster de renderizado específicamente. El clúster de renderizado contiene un nodo de control central y múltiples nodos de carga de renderizado.

Cuando se crea un arma recientemente en el juego, sus metadatos se enviarán inmediatamente al nodo de control central del grupo de renderizado y se ingresarán en la cola de renderizado. El nodo de control central seleccionará un nodo inactivo entre múltiples nodos de carga de renderizado y enviará la tarea de renderizado al nodo de carga de renderizado. Después de que el nodo de carga de renderizado reciba la tarea de renderizado, llamará inmediatamente al renderizador de Blender vinculado para renderizar la imagen NFT del arma y cargarla en el almacenamiento en la nube para descargarla en el futuro.

A través de la construcción del grupo de renderizado, podemos generar una imagen NFT exclusiva perteneciente a esta arma para el jugador tan pronto como obtenga una nueva arma.

Back to Basics: solución de distribución de recursos y metadatos para dispositivos móviles

Como NFT del proyecto GameFi, esta arma legendaria también tiene uno de los escenarios de aplicación más importantes: úsala para matar a todos en el juego. ¿Y cómo pueden los jugadores que poseen esta arma legendaria obtener exactamente la misma arma para luchar en el juego? Con este fin, hemos trabajado mucho para lograr este objetivo.

En cuanto a los metadatos, cada arma se almacenará en una base de datos de metadatos al generar metadatos. En el proceso de visualización y transacción de NFT, se utilizará como fuente de metadatos para que la plataforma MATR1X complete el encadenamiento de NFT. Cuando el jugador ingresa al juego con esta arma, el servidor del juego también obtendrá diversa información sobre el arma de esta base de datos, lo que le permitirá al jugador obtener el arma en el juego.

Para volver a renderizar el mismo modelo de arma en el juego, los materiales intermedios en el proceso de renderizado de imágenes NFT se conservarán juntos y se almacenarán en la nube. Los jugadores pueden descargar estos materiales directamente en el juego y combinarlos con los materiales del juego para mostrar esta arma única en el juego. Para obtener un mejor rendimiento y estabilidad, también construimos una red de distribución de recursos. Todos los materiales que deban usarse en el juego se comprimen automáticamente en formatos de textura adecuados para las GPU de dispositivos móviles y se emitirán las especificaciones de recursos adecuadas según el nivel de rendimiento del dispositivo móvil. De esta forma logramos un equilibrio entre las limitaciones de rendimiento de los dispositivos móviles y los efectos de renderizado de las imágenes NFT.

Un paso más allá: UGC y vista previa en 3D

No es necesario repetir la tecnología para seguir presentando efectos de visualización NFT más interesantes a los jugadores. Tenemos las siguientes ideas para el futuro de todo el programa. En primer lugar, planeamos hacer que toda la solución sea tan profunda como el enlace de producción de recursos. La solución de renderizado fuera de línea no solo se puede utilizar para generar efectos de visualización, sino también para crear materiales de una manera más compleja y rica en el proceso. A través de esta tecnología, esperamos poder realizar la presentación de contenido UGC en juegos y NFT. Imagine que los jugadores pueden imprimir sus propios materiales 2061, KUKU o incluso otros materiales NFT cooperativos como temas en sus armas. Por otro lado, esta tecnología no solo se puede usar en armas, sino que otros activos nuevos, incluidos personajes en el futuro, también pueden usar esta solución para lograr el mismo efecto.

Además, también estamos considerando ofrecer a los jugadores una visualización completamente en 3D de los activos del juego que pertenecen a jugadores fuera del juego. Gracias a las capacidades de renderizado fuera de línea de la nube, podemos realizar un procesamiento complejo de recursos en la nube y entregar los materiales procesados ​​a páginas web que se ejecutan en el motor de juego H5. De esta manera, los jugadores que no participan directamente en el juego pueden apreciar y observar mejor los ricos recursos del juego que proporciona MATR1X FIRE.