Skip to content

Tutorial de Modding de Armas Personalizadas

Escrito por: SilentNightSound

Este es un tutorial para importar modelos de armas personalizadas en Genshin Impact.

Para este tutorial, asumo que estás familiarizado con los conceptos básicos de usar GIMI (cómo configurarlo/importar/exportar/cargar); si no, por favor lee Eliminación del Sombrero de Mona. También asumo conocimientos básicos de Blender – para preguntas sobre conceptos básicos de Blender como cambiar modos, seleccionar vértices y abrir ciertos menús, por favor busca el conocimiento que necesitas en Google/Youtube.

Los mods de armas son más complicados que las ediciones básicas de mallas, pero menos complicados que importar personajes personalizados. ~90% de los pasos siguen siendo los mismos para personajes personalizados, pero los personajes implican estructuras de grupos de vértices/huesos mucho más complicadas que las armas.

Demostraré tres modelos de armas diferentes, ordenados por complejidad. En general, para las armas, el orden de dificultad de más fácil a más difícil es Espadas/Lanzas/Mandobles sin borlas → Espadas/Lanzas/Mandobles con borlas → Arcos → Catalizadores. Cada arma se basa en la anterior en términos de complejidad, así que por favor lee en orden.

Usaré este modelo de un Plátano para los tres mods (créditos a Marc Ed).

Tabla de Contenidos

Espada de Plátano

Comencemos con uno de los tipos más simples de armas, un mandoble sin borlas - voy a reemplazar la Espina del Dragón con un plátano gigante

  1. Comienza importando los datos de 3dmigoto de la Espina del Dragón desde el repositorio GI-Model-Importer-Asset

  2. Como una verificación de cordura para asegurarte de que estamos en la categoría más simple de armas, verifica que el arma no tenga grupos de vértices. Si los tiene, puedes continuar siguiendo pero necesitarás también referirte a las siguientes dos secciones sobre cómo manejar los grupos

  3. Importa el plátano usando Archivo→Importar→FBX. Elegí un modelo simple con solo una textura y componente a propósito para demostrar cómo funciona el proceso – los modelos más complicados pueden requerir que combines múltiples texturas y componentes, y requiere conocimientos más avanzados de Blender

  4. Como puedes ver, el modelo del plátano y los modelos de espada están desalineados tanto en ubicación como en tamaño. Traduce, rota y escala el plátano hasta que los dos modelos se superpongan. Las partes más importantes a considerar son las empuñaduras (ya que es donde el personaje sostendrá el arma) y asegurarte de que el nuevo arma no sea significativamente más grande/pequeña que la anterior (ya que podrías terminar con recortes o desalineación con el hitbox real).

  5. Aunque esto funcionará, realmente queremos que los modelos se superpongan un poco más para que coincida más con el movimiento de la espada – podemos activar la edición proporcional y arrastrar y rotar la punta del plátano para enderezarlo un poco y mejorar el resultado

    Ten en cuenta que para este tipo de armas, el nuevo objeto no necesita superponerse exactamente con el anterior.

  6. Ahora, necesitamos agregar las propiedades personalizadas de 3dmigoto al nuevo objeto. Hay dos formas de hacer esto: podrías eliminar todos los vértices del modelo antiguo y luego fusionar el nuevo en él, o podrías usar el script de transferencia de propiedades personalizadas. Voy a usar el último método en este tutorial

  7. Abre la pestaña de scripting y copia el script de transferencia en el cuadro de texto. Haz clic en el objeto al que estás transfiriendo propiedades PRIMERO, luego CTRL+Clic en el objeto del que estás transfiriendo las propiedades SEGUNDO. Haz clic en el botón de reproducción/triángulo en la barra superior para ejecutar el script (MÉTODO ANTIGUO: Descomenta la sección USO ORIGINAL, luego reemplaza “transfer_to” y “transfer_from” con los objetos a los que estás transfiriendo (nuevo objeto) y desde (objeto original de 3dmigoto) respectivamente)

  8. Verifica que las propiedades aparezcan en la sección de Propiedades Personalizadas del nuevo objeto

  9. Ahora, necesitamos asegurarnos de que los mapas UV y los datos de color del nuevo objeto se exporten correctamente. Usa el objeto original como guía – SerpentSpine tiene dos mapas UV TEXCOORD.xy y TEXCOORD1.xy, junto con un color de vértice llamado COLOR

    Para las armas, el primer TEXCOORD es para las texturas:

    Mientras que el segundo controla cómo aparece y desaparece el arma:

    El COLOR de vértice tiene cuatro componentes: RGB y A. Qué controla exactamente cada componente está fuera del alcance de este tutorial, pero en resumen A se usa principalmente para el grosor del contorno mientras que RGB se usa para la oclusión ambiental, especular y metálico.

    NOTA: Si tu modelo tiene múltiples mapas UV y texturas, necesitarás fusionarlos en uno antes de continuar. Puedes hacer esto alineando las texturas una al lado de la otra y luego escalando los mapas UV para que coincidan con cada componente. Asegúrate de que el ancho y la altura de la textura final sean potencias de 2 (es decir, 1024 x 1024 o 1024x2048 o 2048x2048, etc.)

  10. El modelo de plátano que estamos usando solo tiene 1 mapa UV, que renombramos a TEXCOORD.xy para que coincida con el modelo de Serpent Spine

  11. Para el segundo TEXCOORD, creamos un nuevo mapa UV llamado TEXCOORD1.xy, vamos a la vista superior presionando 7 en el teclado numérico, seleccionamos toda la malla y luego presionamos UV→Proyectar desde Vista

    Luego escalamos y rotamos el plátano para que coincida con cómo se veía originalmente el TEXCOORD1 de SerpentSpine. Esto hará que el arma se desplace desde el tallo del plátano

    (Nota: Las versiones anteriores del complemento tienen un problema relacionado con TEXCOORD1 donde el contorno del modelo desaparece. Aunque hay varias causas para esto, la más común se debe a que el juego reutiliza una ranura de textura tanto para desvanecerse como para contornos. Intenta eliminar las líneas ps-t2 y ps-t3 en el archivo .ini y ver si eso resuelve el problema).

  12. Finalmente, tratamos con el color. Si tu modelo ya venía con colores de vértice, puedes renombrarlos a COLOR y listo (aunque ten en cuenta que de donde obtuviste el modelo puede que no esté usando los mismos valores para COLOR que Genshin, por lo que aún podría ser más seguro eliminarlos y transferir los de una malla de 3dmigoto).

    Este modelo de plátano no tiene colores de vértice, por lo que primero necesitamos agregar una variable de color. Hazlo yendo a la pestaña de propiedades de datos y presionando el botón +. Queremos que el nombre sea COLOR, el dominio sea Esquina de Cara y el Tipo de Datos sea Color de Byte. Puedes dejar el color como negro por ahora, lo transferiremos del objeto original en el siguiente paso.

  13. Ahora que tenemos un COLOR, necesitamos transferir los valores correctos de la Espina del Dragón. Selecciona el plátano, ve a la pestaña de modificadores, selecciona agregar modificador→transferencia de datos

    Establece la fuente como SerpentSpine, marca la casilla de Datos de Esquina de Cara y la pestaña de Colores y asegúrate de que las opciones sean Todas las Capas y Por Nombre para Colores:

    (Nota: para modelos más complicados con múltiples colores de vértice, puedes usar el cuentagotas para copiar los datos de color de una parte específica del componente en lugar de seleccionar todo el objeto)

    Finalmente, presiona la flecha hacia abajo y haz clic en Aplicar

    Puedes verificar que funcionó correctamente entrando en el modo de pintura de vértices y verificando que los colores coincidan:

  14. A continuación, necesitamos rotar el modelo en relación con el original y aplicar transformaciones. Aunque los modelos parecen superponerse, Genshin los rota durante el proceso de dibujo en la pantalla, por lo que también necesitamos hacerlo en Blender para contrarrestar el efecto. Selecciona el objeto y rota 90 grados en relación con el original así:

    Y selecciona el objeto y aplica todas las transformaciones (¡IMPORTANTE! Si no aplicas las transformaciones, el arma aparecerá en una orientación y escala completamente diferentes a las que podrías esperar)

    (Nota: La orientación puede ser confusa, así que cuando tengas dudas sobre qué dirección es la correcta, simplemente intenta rotar en ambas direcciones para ver cuál funciona)

  15. ¡Casi hemos terminado! La última parte es cambiar el nombre para que tenga “SerpentSpineHead” y eliminar ese texto del objeto original para que el complemento sepa qué objeto exportar. Una vez que hayas nombrado las cosas correctamente, exporta usando la Carpeta de Mod de Exportación de Genshin de nuevo a la carpeta de datos de SerpentSpine (consulta el tutorial de Mona para los pasos completos)

    Si tienes algún problema con la exportación, consulta la Guía de Solución de Problemas para ver si tu problema aparece.

  16. En este punto, es una buena idea confirmar que tu modelo se está cargando correctamente en el juego antes de comenzar a trabajar en las texturas. Copia la carpeta del Mod y recarga:

    Parece que la forma y la posición son correctas, así que ahora pasamos a arreglar las texturas.

  17. Comenzamos con la textura difusa. Las texturas difusas en Genshin son .dds con tipo BC7 SRGB que usan la capa alfa para la emisión. Ejemplo de la textura original de SerpentSpine (parte superior sobre la capa alfa a la izquierda, parte inferior a la derecha):

    Ahora queremos reemplazar esta textura con la textura del plátano:

    Para esta parte, no haremos nada demasiado sofisticado con la textura del plátano: simplemente invertimos el canal alfa, guardamos como .dds y reemplazamos el SerpentSpineHeadDiffuse.dds original (consulta el tutorial de Mona para más detalles sobre la edición básica de texturas de Genshin).

    Nota1: Asegúrate de que el ancho y la altura sean potencias de 2 (1024x1024, 2048x2048, 1024x2048, etc.), o podrías tener problemas

    Nota2: No todas las texturas difusas tienen emisión – algunas no tienen un canal alfa en absoluto. En esos casos, no necesitas invertir el canal y puedes usar la textura tal como está. Cuando tengas dudas, verifica la textura original para ver cómo se ve y mírala

  18. Reemplazando la textura difusa y recargando:

    Se ve mucho mejor, pero aún podemos ver algunos problemas de reflexión y sombra. Estos están siendo causados por el mapa de luz, que también necesitaremos editar.

  19. Si tu modelo venía con un mapa de luz, puedes simplemente repetir lo anterior y guardarlo como BC7 Linear y reemplazar el original. Este modelo no venía con uno, sin embargo, así que necesitamos crear un mapa de luz básico. El mapa de luz original se veía así arriba y abajo de la capa alfa:

    Los detalles de cómo funcionan exactamente los mapas de luz están fuera del alcance de este tutorial y se cubrirán en otros posteriores – por ahora, comparando con las texturas difusas podemos ver que el mapa parece estar usando púrpura sobre la capa alfa para la parte beige de la espada, que es la más similar a nuestro modelo. Así que podemos simplemente pintar toda la textura de ese color para obtener un resultado razonable:

  20. Después de reemplazar la textura del mapa de luz, recarga el juego. ¡Espada de plátano completa!

El Bownana

Pasando a modelos más complejos, voy a demostrar cómo crear un Bownana reemplazando el Prototipo de Media Luna. Este método también se aplica a cualquier espada/lanza/mandoble con grupos de vértices (por ejemplo, borlas generalmente). La mayoría de los pasos siguen siendo los mismos que en la Espada de Plátano, pero hay algunas complejidades adicionales que necesitamos tener en cuenta.

  1. Importa el arco y el modelo de plátano de la misma manera que en la sección anterior (pasos 1-3). Podemos confirmar que el modelo original que estamos reemplazando cae en esta sección verificando si tiene grupos de vértices

  2. Dado que la forma que estamos reemplazando es diferente, también necesitamos cambiar cómo modificamos el modelo para que se coloque correctamente:

  3. Establecer las propiedades personalizadas de 3dmigoto, TEXCOORDs y COLORs sigue siendo lo mismo que en la sección anterior (pasos 6-13)

  4. La primera diferencia importante ocurre cuando necesitamos manejar los grupos de vértices del original. Estos son responsables de cosas como la cuerda del arco siendo tirada y cómo se deforma el arco. El arco tiene un total de cinco grupos (nota: el grupo 0 no tiene peso en absoluto pero aún debe incluirse para exportar correctamente; en la práctica, solo hay cuatro grupos de los que necesitas preocuparte)

  5. Si el modelo que estamos usando no necesita la animación de tirar de la cuerda del arco, podemos usar un solo grupo de vértices y pintar completamente solo en el grupo 1. Para hacer esto, vamos a las propiedades de datos del objeto y agregamos 5 grupos de vértices llamados 0,1,2,3,4 y luego vamos a la pintura de peso para pintar completamente el objeto en el grupo 1:

    (Nota: aún necesitas incluir los cinco grupos para que el nuevo objeto se exporte correctamente)

  6. Aunque esto funciona, no es ideal a menos que estés reemplazando el modelo con algo como una pistola – idealmente, aún queremos que el bownana tenga una cuerda y se deforme correctamente. Si el modelo que estás usando ya venía con grupos de vértices similares a los que usa Genshin, puedes fusionarlos y renombrarlos hasta que coincidan con el original. Este modelo de plátano no tiene ninguno, por lo que necesitamos realizar una transferencia de peso automática

  7. Necesitamos darle al plátano una cuerda de arco. Podemos hacer una nueva, o reutilizar la cuerda original – haré lo último en este tutorial. Copia el arco original y elimina todo excepto la cuerda:

  8. Asegúrate de que el nombre del mapa UV de la cuerda y el objeto del plátano coincidan (TEXCOORD.xy, para que los mapas UV se fusionen también), luego fusiona los dos objetos juntos haciendo CTRL+clic en ambos y usando CTRL+J. También asegúrate de que el mapa UV de la cuerda esté sobre una región de la textura que tenga los colores correctos. Si previamente creaste TEXCOORD1.xy, necesitarás recrearlo o mover la cuerda a la posición correcta.

  9. Ahora que tenemos nuestra cuerda de arco, es hora de asignar los pesos. Asegúrate de que el plátano tenga 5 grupos de vértices llamados 0, 1, 2, 3, 4, luego crea un modificador de Transferencia de Datos. Selecciona el Prototipo de Media Luna como la fuente y selecciona el objeto de Datos de Vértice y la pestaña de Grupos de Vértices:

    Haz clic en la flecha y presiona Aplicar.

    Si todo se hizo correctamente, el bownana ahora debería tener aproximadamente los mismos pesos que el original:

    Y verificando, parece que la cuerda tiene física adecuada en el juego:

    (Nota: hay un método alternativo de transferencia de pesos usando la opción Transferir Pesos en el modo de pintura de peso – ambos métodos deberían dar resultados similares)

  10. A partir de este punto, el resto de los pasos son los mismos que en la espada de plátano (pasos 14-20 en la sección anterior): rota y aplica transformaciones, renombra, exporta, arregla las texturas y carga en el juego:

Catalizador Maduro

Finalmente, voy a demostrar cómo reemplazar un arma catalizadora (Ojo de la Percepción) que tiene movimiento continuo. Esto es fundamentalmente muy similar a cómo funcionan los arcos, pero los catalizadores usan grupos de vértices de diferentes maneras. También voy a demostrar algunas técnicas más avanzadas durante el proceso.

Asumo que has leído las dos secciones anteriores, así que omitiré la mayoría de los pasos básicos y me centraré en lo que hace que los catalizadores sean diferentes de los arcos y las espadas.

  1. Los catalizadores tienen grupos de vértices como los arcos, pero a diferencia de los arcos, los catalizadores los usan para controlar el movimiento. El Ojo de la Percepción tiene 5 grupos en total, pero solo 2 de ellos están vacíos: el grupo de vértices 1, que se asigna a la bola interior, y el grupo de vértices 4 que tiene el anillo exterior:

    Ambos giran en sentido antihorario cuando se ven desde arriba. Cualquier cosa que se pinte con el grupo de vértices 1 girará rápidamente alrededor de su centro, mientras que cualquier cosa pintada con el grupo de vértices 4 girará más lentamente.

  2. Como antes, importamos y posicionamos el plátano. Esta vez, quiero que gire en el centro:

  3. Establece las propiedades personalizadas de 3dmigoto, TEXCOORDs y COLORs.

  4. Dado que queremos que gire rápidamente, pintamos todo el plátano con el grupo de vértices 1:

  5. Rota, aplica transformaciones, renombra y exporta (aumenté ligeramente el tamaño del plátano para que tenga más impacto). Reemplaza la textura difusa y el mapa de luz con las texturas del plátano de las partes anteriores

    El plátano ahora debería cargarse y girar a la misma velocidad que la parte central original del catalizador.

  6. Aunque ahora técnicamente hemos terminado, juguemos con algunos efectos para demostrar lo que puedes hacer con las texturas. Comencemos haciendo un plátano arcoíris.

  7. Obtén una imagen de arcoíris de algún lugar, luego crea una nueva capa en la textura del plátano. Coloca la imagen del arcoíris sobre el plátano, aplicando un 50% de transparencia. Ten cuidado con la costura y asegúrate de que el color sea consistente a lo largo de la longitud

    (El plátano haciéndose más grande es solo tu imaginación)

  8. Ahora, podemos jugar con la emisión también. Voy a usar esta imagen del patrón estrellado:

    Al superponer esto en la capa alfa, obtienes un patrón de estrellas brillantes en el plátano:

  9. Finalmente, juguemos con el patrón de desvanecimiento. Anteriormente, simplemente configuramos TEXCOORD1.xy a lo largo de la longitud del arma para que se desvanezca linealmente, pero en realidad no estamos limitados a hacer eso.

    Si configuramos el TEXCOORD1 a algo como esto, el arma se desvanecerá en tres partes:

    Si lo configuramos así, se desvanecerá todo a la vez aproximadamente a la mitad:

    Y por último, pero no menos importante, si lo configuramos así, se desvanecerá caóticamente:

Bono por llegar al final: plátano galáctico