Resultados 1 al 3 de 3

Tema: Cambiar textura por Script Unity SOLUCIONADO

  1. #1
    Usuario completo
    Fecha de ingreso
    Oct 2016
    Mensajes
    227
    Gracias (Dadas)
    13
    Gracias (Recibidas)
    12

    Cambiar textura por script Unity solucionado

    Buenos días, necesito poder cambiar la textura de la cara a los personajes, para qué parpadeen o hablen y como siempre No FUNCIONA.

    En el manual y en los tutoriales que he podido ver lo hacen muy fácil:
    - Creas una o tantas variables públicas de tipo Texture o Material como necesites para poder asignarle las texturas que vas a usar al objeto.
    - Le añades (si no lo tiene ya) un componente Mesh Rendered al gameobject.
    - Modificas por código la textura: gameObject.renderer.material = Textura1;.

    A todos les funciona menos a mí.

    Unity no me tira ningún error ni nada, simplemente no hace que cambie la textura, se queda como si nada.
    ¿Qué hay que hacer para qué te cambie las texturas?
    Un saludo.
    Última edición por Jhonatan00_00; 15-03-2019 a las 15:56

  2. #2
    Usuario completo
    Fecha de ingreso
    Oct 2016
    Mensajes
    227
    Gracias (Dadas)
    13
    Gracias (Recibidas)
    12

    Cambiar textura por script Unity

    Acabo de conseguirlo pero de la siguiente manera:
    Renderer.material.mainTexture = Textura1;.

    Pero para qué se aplique el cambio, el objeto debe de tener un Mesh Rendered y un Mesh Filter y el objeto del personaje no lo tiene, solo sus objetos hijos, por lo que si le aplicas el Mesh Filter al personaje, necesitas seleccionar el objeto que quieres que se renderice para cambiarle la textura y te lo renderiza como un objeto aparte, cada uno con una rotación y que va siguiendo al otro, osea qué se duplica. Es de locos.

    A ver si atino.

  3. #3
    Usuario completo
    Fecha de ingreso
    Oct 2016
    Mensajes
    227
    Gracias (Dadas)
    13
    Gracias (Recibidas)
    12

    Cambiar textura por script Unity solucionado

    Buenas tardes, ya he solucionado el problema, y siempre lo soluciono al poco de preguntar en el foro, hasta qué no pregunto no lo consigo.

    No hace falta añadir Mesh Rendered ni nada al objeto, lo que hay que hacer es buscar el modelado dentro del objeto padre, porque Unity te separa lo que es el Gameobject (que digamos que es el pivote del objeto), de lo que es el modelado en si (aunque tú los script los apliques al Gameobject) y en tu script debes crear una variable tipo Transform para asignale el modelado al que quieres cambiar la textura.

    Una vez hecho esto desde el scrip modificas la textura del modelado del Gameobject por medio de su Mesh Rendered ya creado por defecto de la siguiente manera:
    Prota.rendered.material.mainTexture = Textura1;.

    Espero que se entienda. Un saludo.

Temas similares

  1. Colisiones en Unity solucionado
    Por Jhonatan00_00 en el foro Videojuegos
    Respuestas: 2
    Último mensaje: 28-03-2019, 11:25
  2. Aproximación a un angulo Unity SOLUCIONADO
    Por Jhonatan00_00 en el foro Programación y Scripts
    Respuestas: 2
    Último mensaje: 16-03-2019, 22:23
  3. Niebla en Unity SOLUCIONADO
    Por Jhonatan00_00 en el foro Videojuegos
    Respuestas: 5
    Último mensaje: 25-02-2019, 14:43
  4. Cambiar Pivote Objeto3D Unity SOLUCIONADO
    Por Jhonatan00_00 en el foro Videojuegos
    Respuestas: 1
    Último mensaje: 23-01-2019, 23:48
  5. Cómo cambiar un script a un macro script
    Por Miguel-Arte-3D-1990 en el foro Programación y Scripts
    Respuestas: 11
    Último mensaje: 11-03-2012, 23:07

Etiquetas para este tema