Jump to content
UnitySpain

Caesar

Registrados
  • Content Count

    43
  • Joined

  • Last visited

Community Reputation

15 Good

About Caesar

  • Rank
    Usuario

Profile Information

  • Especialidad
    Coder

Recent Profile Visitors

564 profile views
  1. Cuando hablamos de un objeto en C# nos estamos refiriendo a cualquier variable creada de una clase definida en C#, es decir las variables que encontramos en los atributos de clase, son objetos de la clase a la cual pertenecen, en términos prácticos te lo pongo así. public Class Ejemplo { //Area Atributos public int variableUno; private string variableDos; protected GameObject variableTres; //Area Constructores public Ejemplo (){...} //Area Metodos public void MetodoUno (...) private string MetodoDOs (...) } en el Área de atributos puedes observar lo q comúnmente se le "dice" variables y son 3 como puedes observar variableUno, variableDos y variableTres, cada uno representa una instancia de la clase a cual pertenece, es decir; a la Clase int, a la Clase string y a la Clase GameObject respectivamente. Estos "objetos" estan instanciados y tenemos acceso a ellos mediante su definicion dentro de la clase, es decir cuando queremos usarlos usamos las palabras que los definen, variableUno, variableDos y variableTres, eso es estar referenciado.
  2. Este es un tema de programación; teoría y conceptos, te voy a dar la respuesta puntual. Son lo mismo. Ahora para aclararte un poco, la palabra "Método" es la usada para definir este punto, es lo que vas a encontrar en los libros de programación sobre C# que es el lenguaje que usas en el ejemplo; no sabría decirte si es la misma palabra que se usa en todos los lenguajes, y la palabra "Función" esta es una palabra usada informalmente; generalmente la he observado en tutoriales como los que hay en youtube, pero en el caso se refieren al mismo proceso realizado dentro del lenguaje C#. PD: lo que dices que tu ejemplo devuelve un valor; estas equivocado, cuando encuentras información acerca de métodos que devuelven un valor se refieren a que te dan la instancia o referencia de un "objeto", en tu ejemplo este GameObject es destruido, pero esa es solo una acción, no estas recibiendo la referencia del objeto destruido
  3. Caesar

    RayCast

    En tu primer script usas -rC1.up para la dirección del ray, eso va depender como este posicionado el GameObject hijo dentro del padre; es decir, lo q para el hijo es abajo talvez para el padre es derecha o que se yo, es una posibilidad, podrías usar Vector3.down. En el segundo ejemplo el ray esta siempre activo por lo tanto numSaltos siempre va ser cero aunque le pongas numSaltos++ en el update, porque aunque este codigo le adicione una unidad al oprimir el salto inmediatamente al siguiente frame se hace cero por el raycast.
  4. "Sin la necesidad de un servidor intermediario" no es posible, los clientes no tienen la capacidad de coordinar con los otros clientes y si le das esa capacidad dejan de ser clientes y pasan a convertirse a servidor; es decir, el sistema servidor-cliente es parte de lo que propones. Ahora pasando de esto, lo que planteas depende de algunas cosas; como ya te mencionaron, puedes resolverlo de dos puntos de vista. 1) Realizas tu proyecto y le das la opcion de ser cliente o de ser servidor (pero a la vez ser parte de "partida"). 2) El proyecto lo construyes solo como cliente, y la tarea de servidor la realizas en otro programa a nivel consola para que no gastes tanto recursos.
  5. En la barra de interface de usuario cuando creas , respondes o editas un post; hay opciones, como color de fuente, tamaño de fuente, tipo d efuente, subrayar, emoticones, etc. Pues ahi una de las opciones es <>, y poder exponer nuestro codigo de manera correcta en un post, dejo una imagen tambien.
  6. La palabra que buscar es "interpolar" A B 0 -180 x y 1 180 [x-0]/[1-0] = [y - (-180)]/[180-(-180)] x = (y +180)/360 : para hallar A y = 360x -180 : para hallar B Asi que cuando A vale 0.15; reemplazando B = 360*(0.15) - 180, B= -126
  7. Ten en cuenta que cuando le pones un nuevo componente a un GameObject desde script, no es como cuando pones el componente de forma manual, las propiedades de la clase no se inician de la misma forma por eso debes darles los valores también desde script, aunque no sean las que quieres modificar.
  8. Ami me parece que es un problema de referencia; es decir, no esta referenciado el GameObject instanciado, al que le vas agregar el Rigidbody, me explico utilizas robot[elegido] que debe ser el prefab que se va instanciar, y luego utilizas este mismo para agregarle el componente Rigidbody, pero no es a este que le quieres agregar el componente, sino al GameObject que ahora esta en la escena. Debes poner algo como esto "GameObject prefab = (GameObject) Instantiate(robot[elejido],new Vector3(x,y,z),Quaternion.identity);", entonces a esta referencia ya puedes agregarle los componentes.
  9. Lo que debes buscar en el foro es de "GetComponent" parece que recién estas comenzando y este es un tema muy respondido
  10. Tenemos varios objetos (GameObject A, GameObject B, GameObject C, GameObject D, GameObject E, GameObject F), algunos en la misma escena otros en una escena distinta; cada una con el script "Pocion" agregado, es decir son varias instancia de la clase Pocion, osea que cada uno tiene su propia variable Hp, con esto quiero decir que lo que le pase al GameObject E no tiene nada que ver con lo que le pase al GameObject B. Eso va depender de lo que realmente quieras lograr, una respuesta sencilla seria utilizar la variable Hp como static
  11. solo crea un GUI o un UI donde pongas lo que se ve en la consola
  12. Vas bien solo te falto acceder a la variable "text", recuerda que hasta acá has hecho la referencia del objeto Text. solo tienes que poner en el debug esto. Debug.Log (txt.text); https://docs.unity3d.com/es/current/ScriptReference/UI.Text-text.html
  13. No se si todo el mundo o la gran mayoria usa php para "eso", yo como tu también uso C# y sockets, pero puedo suponer que porque los tutoriales estan de esa forma. Pero si buscas de manera mas general y no te limitas a los videotutoriales, puedes encontrar de formas distinta. Hasta donde tengo entendido las limitaciones del unity son cuando usas sus componentes de Networking, y el servidor que unity les brinda a los usuarios para usar, en el caso de usar sockets tu armas todo el tema del Cliente-Servidor desde cero así que no deberías tener problema con el numero de usuarios mas que el de tu equipo como servidor pueda darte
×
×
  • Create New...