Jump to content

p3dr0h4ck

Fosiles
  • Content Count

    11
  • Joined

  • Last visited

Community Reputation

0 Neutral

About p3dr0h4ck

  • Rank
    Iniciado
  1. Buenas, estoy intentando acceder a un Sprite que esta dentro de un sprite multiple, con Resources.Load() Me funciona si accedo al sprite original de la siguiente manera: Sprite elemento = Resources.Load<Sprite>("nombreSpriteOriginal"); El sprite original se encuentra dentro de la carpeta Resources. Pero si intento acceder a un sprite obtenido a raíz de este original como Sprite multiple no accede y da lugar a null. Por lo cual el error es debido a que estoy poniendo mal la ruta o path, pero desconosco cual puede ser he probado con Sprite elemento = Resources.Load<Sprite>("nombreSpriteOriginal/nombreSpriteObtenido"); pero no funciona. Si lo cargo con Resources.LoadAll(""); se obtienen tanto el original como el obtenido de este, pero tengo el problema de que aun sigo desconociendo la ruta. Y quiero obtener especificamente uno de los sprites obtenidos del sprite original, pues tengo varios sprites obtenidos del sprite original.
  2. Debí de haber dicho que estaba utilizando C# de nada
  3. Gracias, aunque me di cuenta que al realizar el código debía utilizar using UnityEngine.UI; //Para declarar el uso de la clase UI y poder utilizar la clase UI, muchas gracias amigo. Un saludo
  4. Buenas estaba viendo que algunas cosas han cambiado en Unity 5 respecto a la versión anterior, dejando código obsoleto, tras esto tengo el siguiente problema: Estoy intentando acceder a un elemento Image de la UI para poder modificar el recurso de imagen(Source Image)de este, "Sprite" desde un Script. Una vez tengo acceso a este elemento: GameObject elemento = GameObject.FindGameObjectWithTag ("elementoui"); No se como acceder para modificar la imagen, he intentado obteniendo distintos componente mediante: elemento.GetComponent<t> (); t es una clase, he probado algunas como GUITexture o CanvasRenderer pero con ninguna de los dos puedo modificarlo. Alguien tiene una solución para poder por tanto modificar el recurso de imagen de un elemento Image de la UI en Unity 5 mediante un Script
  5. Gracias espero que esto ayude a más gente
  6. Podría ser una opción, ya que en OnGUI se esta redibuja constantemente el código que existe por lo cual en referencía a lo que usted dice el codigo quedaria de la sigiente forma más o menos: using UnityEngine; using System.Collections; public class NewBehaviourScript : MonoBehaviour { //Array de tipo booleano que almacenara cual de los tres elementos esta activo bool[] posiciones = new bool[3]; char[] letras = new char[3]; void Start () { //Por defecto estara activo el primero de ellos posiciones [0] = true; posiciones [1] = false; posiciones [2] = false; //El 0 lo utilizamos para representar el que esta marcado, como vemos corresponde con la posicion //en posiciones - true letras [0] = 'O'; letras [1] = 'X'; letras [2] = 'X'; } void Update () { //Si pulsamos "A" vamos hacia atras, y si estamos en el primero al ultimo if (Input.GetKeyUp (KeyCode.A)) { //El bucle debera cerrarse en caso de realizarse un cambio bool cierreBucle=false; for (int i=0; i<posiciones.Length && !cierreBucle; i++) { //Se ejecutara cuando estemos en el selecionado y no sea el primero, si no se produciria //un error debido a que lo pasariamos al posiciones[-1] que no existe if (posiciones [i] && i != 0) { posiciones [i] = false; posiciones [i - 1] = true; cierreBucle=true; print ("Pasamos del: " + i + " - " + posiciones [i] + " al " + (i - 1) + " - " + posiciones [i - 1]); //Si es el primero este se vuelve a false y true el ultimo } else if (posiciones [i] && i == 0) { posiciones [i] = false; posiciones [posiciones.Length - 1] = true; cierreBucle=true; print ("Pasamos del: " + i + " - " + posiciones [i] + " al " + (posiciones.Length - 1) + " - " + posiciones [posiciones.Length - 1]); } } //Si pulsamos "D" vamos hacia adelante, y si estamos en el ultimo al primero } else if (Input.GetKeyUp (KeyCode.D)) { //El bucle debera cerrarse en caso de realizarse un cambio bool cierreBucle=false; for (int i=0; i<posiciones.Length && !cierreBucle; i++) { //Se ejecutara cuando estemos en el selecionado y no sea el ultimo, si no se produciria //un error debido a que lo pasariamos al posiciones[3] que no existe if (posiciones [i] && i != (posiciones.Length - 1)) { posiciones [i] = false; posiciones [i + 1] = true; cierreBucle=true; print ("Pasamos del: " + i + " - " + posiciones [i] + " al " + (i + 1) + " - " + posiciones [i + 1]); //Si es el ultimo este se vuelve a false y true el primero } else if (posiciones [i] && i == (posiciones.Length - 1)) { posiciones [i] = false; posiciones [0] = true; cierreBucle=true; print ("Pasamos del: " + i + " - " + posiciones [i] + " al 0 " + posiciones [0]); } } } } void OnGUI () { for (int i=0; i<posiciones.Length; i++) { //vamos igualando donde la posicion sea true añadimos el el elemento letra que //sea igual a "O" if(posiciones[i]){ letras[i]='O'; }else{ letras[i]='X'; } } //Podriamos automatizarlo pero de esta manera es mas rapida para una simple prueba GUI.Button (new Rect (10, 10, 100, 50), "Opc: "+letras[0]); GUI.Button (new Rect (110, 10, 100, 50), "Opc: "+letras[1]); GUI.Button (new Rect (210, 10, 100, 50), "Opc: "+letras[2]); } } Con este ejemplo conseguimos lo que se ve en la imagen, si ha alguien se le ocurre otra forma, agradecería que la compartiera. Un saludo y gracias
  7. Probare haciéndolo directamente con la UI, aunque me gustaría que lo pudiera mover la selección del cuadro (BOX) con el teclado. Un saludo De esa forma es cierto que podría saber cual esta seleccionado, http://docs.unity3d.com/ScriptReference/GUI.Button.html , Ya que devuelve un valor boolean cuando se esta presionando pero repito, me refiero a utilizarlo sin clickeo, o tactil, solamente con las teclas. Un saludo
  8. Buenas estoy probando a tener un pequeño inventario/menú con 5 elementos diferentes el caso es que el método GUI.Box http://docs.unity3d.com/ScriptReference/GUI.Box.htm es un método de tipo void y por lo cual no me devuelve nada, y me gustaría manipular este menú mediante las teclas, es decir algo parecido a esto: -Ver imagen. Mi idea es que pudiera acceder a estas distintas cajas mediante un array, pero lo dicho, como no devuelve nada no se como acceder a ello, ¿alguien tiene alguna idea, o ha tenido una situación parecida? Un saludo y gracias.
  9. Muchas gracias a ambos los tendré en cuenta, si veo entonces algún significado que no entienda bien lo preguntare en el foro si no lo encuentro ya respondido Un saludo y gracias
  10. Buenas a todos, seguramente no sea el único al que algunos conceptos o palabras de Unity como Stripping Level, Anti Aliasing , Draw call ,Lod Bias, etc. Es cierto que estos conceptos vienen definidos en la documentación de Unity, pero la mayoría de veces necesitan ser traducidos del ingles al español y la traducción de google no suele ser muy buena, por ello me gustaría saber si alguien tiene recopilado el significado de estas palabras (De una forma sencilla de entender, a poder ser sin muchos técnicos) que suele estar relacionados con la compilación del proyecto en distintas plataformas para que este pueda estar optimizado. Un saludo y gracias por la ayuda PD: No me digan aprenda Ingles, ya que algunas definiciones incluso sabiendo ingles se pierde uno por tecnicismos, que solo son sabidos por gente que lleva mucho tiempo en el mundillo
UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...