Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Problemas con algunos scripts!!

Iniciado por bam-bam3d, Julio 10, 2018, 09:56:27 PM

Tema anterior - Siguiente tema
Julio 10, 2018, 09:56:27 PM Ultima modificación: Julio 10, 2018, 10:43:46 PM por pioj
Hola gente:
 
Eh cambiado al unity 5.6.6 y me esta dando muchos dolores de cabeza la programacion....resolvi muchas cosas des el foro y desde el unity scripting pero aca les dejo un par que no puedo solucionar:
 

  1.     this.guiText.text=contador1.ToString();     // esto lo usaba para un reloj ....para que imprima el tiempo


  2.     renderer.material.SetTexture("_mainText",imagen3);           //esto lo uso para cambiar texturas en un script


  3.     audio.volume=0,1;   // y aca asi bajaba y subia los sonidos


Bueno espero me puedan ayudar, trabajo con javascript por lo general (aunque siempre hay algun c sharp por ahi dando vueltas!!)

Pone las excepciones, deduzco que son errores de código obsolete o deprecated -

Cita de: bam-bam3d date=1531252587Hola gente:
   
   
      Eh cambiado al unity 5.6.6 y me esta dando muchos dolores de cabeza la programacion....resolvi muchas cosas des el foro y desde el unity scripting pero aca les dejo un par que no puedo solucionar:
   
   


  1.           this.guiText.text=contador1.ToString();     // esto lo usaba para un reloj ....para que imprima el tiempo
          

  2.       

  3.           renderer.material.SetTexture("_mainText",imagen3);           //esto lo uso para cambiar texturas en un script
          

  4.       

  5.           audio.volume=0,1;   // y aca asi bajaba y subia los sonidos
          

  6.    

      Bueno espero me puedan ayudar, trabajo con javascript por lo general (aunque siempre hay algun c sharp por ahi dando vueltas!!)
   


lo mismo que @francoe1 dice, cosas así aisladas y tocadas para el foro suelen traer cosas que no se ven o que se pasan mal, si podés pasalo tal cual, copiá y pega de tu código con todos los mensajes que te tire ya que no sabemos que es lo que querés resolver, un warning? un error en runtime? un error en compilación?, por ej el 0.1 le falta el "f", eso te daría un error al compilar seguramente, estoy seguro que no tenés ese error pero al pasarlo al formato ".foro" se te pasó. Pero bueno suponiendo que no hay grandes cosas para corregir y eso está bien:
 
1 - https://docs.unity3d.com/560/Documentation/ScriptReference/GUIText-text.html
 
dice que es un public string, así que no veo porque estaría mal. Gui en general está siendo deprecateado, guitext no recuerdo bien que era la verdad, pero me suena ah muy de los 90' jaja fijate por las dudas.
 
2 - https://docs.unity3d.com/ScriptReference/Material.SetTexture.html
 
lo mismo, no se donde está el error, falta un contexto que podamos ver. Puede ser un shader nuevo, osea una propiedad llamada de otra forma, hacé click derecho sobre el shader y fijate las propiedades, revisá que exista esa textura.
 
3 - https://docs.unity3d.com/ScriptReference/AudioSource-volume.html
 
Lo mismo que antes, parece estar bien para esa versión y las actuales, un simple float.
 
Si vas a usar "audio" de nombre para tu audioSource aveces el editor o ide te va a aconsejar que especifiques un "new AudioSource audio = ...", ya que antes llamabas a audio y te hacía un get creo, lo mismo pasaba con rigidbody o text , etc, pero eso lo sacaran hace mucho, igual el editor te puede tirar warnings, nada que te vaya a quebrar el juego.
 
Saludos


Cita de: francoe1 date=1531262827AudioSource new audio :)
   


mmm creo que es lo mismo (?), tendría que probarlo, mirá:
 
https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/new-modifier
 
pone:
 

public class BaseC
{
    public static int x = 55;
    public static int y = 22;
}
public class DerivedC : BaseC
{
    // Hide field 'x'.
    new public static int x = 100;
    static void Main()
    {
        // Display the new value of x:
        Console.WriteLine(x);
        // Display the hidden value of x:
        Console.WriteLine(BaseC.x);
        // Display the unhidden member y:
        Console.WriteLine(y);
    }
}
/*
Output:
100
55
22
*/

 
 

Julio 11, 2018, 11:37:33 AM #5 Ultima modificación: Julio 11, 2018, 11:39:10 AM por Igor
antes de unity 5, unity te dejaba acceder a los componentes directamente sin usar el getComponente....
 
ahora no se puede...
 
tendras que poner:
 

this.GetComponent<Renderer>().....
 // o lo que corresponda

 
 

Cita de: Igor date=1531301853antes de unity 5, unity te dejaba acceder a los componentes directamente sin usar el getComponente....
   
   
      ahora no se puede...
   
   
      tendras que poner:
   
   

this.GetComponent<Renderer>().....
 // o lo que corresponda

   
       
   


sisi creo que viene por ahi el cambio...... estuve tocando cosas y las solucione con el GetComponent.....bueno en futuros errores de compilacion les envio el script y el error asi tienen toda la info!!!! gracias

Etiquetas: