Noticias

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

Funcionamiento de bucle

Iniciado por real3dvision, Septiembre 25, 2015, 07:58:49 AM

Tema anterior - Siguiente tema
[quote author=real3dvision" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="26410" data-ipsquote-contentcommentid="113830 date=1443282972]De nuevo te agradezco tus comentarios. Los leo con detenimiento y a ver si en no mucho tiempo puedo decirte un eureka!!Un saludo.  [/quote]Para hacer subir y bajar tu cubo no requiere de un bucle como el for (aa no ser que quieras mover muchos cubos almacenados en un array), una idea es usar un temporizador. Un tiempo para arriba y otro tiempo para abajo.Recuerda que el Update se comporta como un bucle. 

Bye Bye



Perfecto porque una rutina de un  temporizador sí que he logrado que funcione.Un saludo.[/quote]

pero toda la gente te dira, o al menos pensara, lo mismo que yo te estoy diciendo.[/quote]Y yo también lo pienso, sé que mi nivel de programación es bajo!!! La diferencia entre tú y esa gente, es hay formas y formas de decir las cosas...puedes hacerlo de una manera que realmente ayude, puedes ignorar o puedes hacerlo de forma destructiva y que no valga para nada, que es lo que tú haces. En fin, tu sabrás lo sobrado que andas de tiempo y fuerzas como para andar intentado, y digo bien intentando, fastidiar a alguien. Porque a mí actitudes como la tuya me motivan bastante. Así que de nuevo gracias!!Reconozco que ayer ,por un momento pensé que realmente te había ofendido a ti y al resto de usuarios del foro...que debía explicarme mejor. Pero por desgracia ya he visto revisando el foro que no es así, si no que eres un simple bufón, un intento cutre y poco original de "Risto Meijide" al que le gusta despacharse a gusto con los novatos del foro,...tú mismo!"Líneas chapuceras de código"...jua,jua..no seas modesto "megacrack"...tu ídolo jamás lo sería!Un saludo.

en serio figura, eres libre porque tu mismo abriste este tema pidiendo ayuda con una cosa que es de programacion basica que se realiza de la misma forma en Unity que en Unreal, en C# que en java, en entorno grafico o en linea de comandos ... programacion basica ! te di hasta enlaces donde buscar y crees que con esas cuatro chorradas me ofendes ? y tampoco era mi intencion ofenderte, aunque si lo haces porque alguien te recomienda que adquieras unas bases (todo el mundo lo hemos hecho antes, no es ninguna ofensa) pues tu sabras chico.el caso es que estas convirtiendo tu propio tema donde pides ayuda, en un debate con lo que estropeas la finalidad del mismo ... es mas dificil prestar ayuda en un tema "sucio" que en un tema donde solo se trata el asunto en cuestion.te di un consejo, no lo quieres aceptar ? pues me parece perfecto ... pero hazte un favor, lo ignoras y no me nombres porque te estas cargando tu propio tema chico. ese es otro consejo, al igual que con el anterior lo puedes aceptar o seguir, la verdad es que es tu problema y no el mio ... a mi me la pela que se este ensuciando tu tema pero mientras me nombres ... es lo que tiene, que dare la repica

Digamos que sería como frotar la lámpara para llamar al genio.

[quote author=iRobb" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="26410" data-ipsquote-contentcommentid="113884">Digamos que sería como frotar la lámpara para llamar al genio.[/quote]Puedo sentarme y observar también?  :emoticon_cincin:

Bye Bye



Septiembre 26, 2015, 11:14:25 PM #21 Ultima modificación: Septiembre 26, 2015, 11:27:08 PM por real3dvision
  [/quote]
   [/quote]Je,je. Por supuesto que os podeis sentar y observar,os guardo asientos en primera fila. 
Caray "Megacrack", para no estar ofendido parece que ya estás un poco calentito...En cuanto a lo de ensuciar el tema...sinceramente pienso, y eso es lo que me molestó, que eso es lo que tú hiciste contestando de la forma que contestaste.Oye, y una duda...¿Lo de decir "répica" es a posta, es un comando de c# básico que desconozco o simplemente ignorancia? Porque soy el primero que comete errores gramaticales pero todos sabemos que soy un vulgar novato...¿"repica"????... debe ser a posta ,porque alguien que sabe tanto de Unity,Unreal, C#, programación en entorno gráfico,Java, línea de comandos,... seguro que el castellano básico lo tiene chupado.Hasta aquí.Buenas noches.

[quote author=real3dvision" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="26410" data-ipsquote-contentcommentid="113901">Je,je. Por supuesto que os podeis sentar y observar,os guardo asientos en primera fila.Permitirme una  réplica más y lo ignoro...:lol:

Bye Bye



da igual, es lo que te decia antes http://unityspain.com/profile/25934-oak-human-flesh/?do=hovercard" data-ipshover="" href="<___base_url___>/profile/25934-oak-human-flesh/">@Oak Human Flesh ... antes me hacia gracia, ahora me da un poquillo de pena; tengo una sobrina que acaba de cumplir dos añitos, y cuando le dicen cualquier cosa que no le gusta, parece mas madura que otra gente que seguro tendra 30 o 40 años (con lo cual aun seria mas triste, casi mejor que tenga 14 añitos y ser un crio justificaria bastante esto)con lo facil que es, cuando te dan un consejo y no te interesa, simplemente ignorarlo ...

Cuanto tiempo libre tienen algunos...

Septiembre 27, 2015, 10:37:54 AM #25 Ultima modificación: Septiembre 27, 2015, 10:42:41 AM por real3dvision
Es fantástico! !!! Valoraciones sicológicas por Internet,  dotes adivinatorias y además eres de esos que van de "supermaduros", y cuando alguien les responde en su mismo registro lo tachan de "inmaduro" no dándose cuenta que la otra persona simplemente se ha puesto a su nivel...de verdad, eres fantástico! !! Si es que además te haces el dolido... Impresionante!Aprovechando que has metido a tu sobrina en esto, y repito que tú has metido a tu sobrina en la conversación. ..imagínate que cuando tenga el carné de conducir, una día pincha...aunque ha estudiado la teoría de cambiar una rueda preparando el carné, aunque su tío se ha preocupado en cambiar la rueda un par de veces con ella y aunque tiene el manual del coche...ese día, será por la hora,por el sitio,falta de luz...no logra encontrar el sitio donde enganchar el gato. Pide ayuda, y tiene la fortuna de que le para un tipo que es mecánico y cambia 100  ruedas al día.  Que suerte!! Tu sobrina, con toda la educación del mundo, le explica el problema, y se queda sin palabras cuando el tipo lo primero que le dice es que lo que pregunta es una choooooorrada!, que porque no se lee a fondo unos manuales generales de mecanica?! y después de 5 minutos burlándose de ella le pasa un par de links de you tube...y se pira. Tu sobrina, locuaz como su tío , le dice al tipo que ella ha estudiado como cambiar una rueda, que quizás sea que el coche esta en pendiente, que no hay mucha luz o que simplemente no tiene el día,y que por favor no le coloque el gato en su sitio para ver como se hace y poder cambiar la rueda .Este aun le dice que ni de coña, y que suerte que tiene porque le ha hecho ver su ignorancia y que bastante ha hecho con darle un par de links...A mí lo que realmente me da pena es entrar con toda la educación del mundo en el foro de una comunidad colaborativa como es la de de unity y llegar a esto. Menos mal que por lo que he visto es algo aislado y claramente focalizado.En fin, en serio, aquí acabo la conversación contigo. Di lo que te plazca ,no habrá contestación así que aprovecha cuanto quieras tu réplica. Es inútil seguir alimentando la hoguera.

Hola, ¿alguien me recuerda de qué iba este post? ¿Era una duda? ¿Ha sido resuelta, sí o no?Muchas Gracias.

Septiembre 27, 2015, 12:00:05 PM #27 Ultima modificación: Septiembre 27, 2015, 12:00:43 PM por real3dvision
Cita de: pioj date=1443344979" data-ipsquote="" data-cite="pioj" class="ipsQuote">Hola, ¿alguien me recuerda de qué iba este post? ¿Era una duda? ¿Ha sido resuelta, sí o no?Muchas Gracias./quote] Hola,http://unityspain.com/profile/25934-oak-human-flesh/?do=hovercard" data-ipshover="" href="<___base_url___>/profile/25934-oak-human-flesh/">@Oak Human Flesh  e http://unityspain.com/profile/27231-irobb/?do=hovercard" data-ipshover="" href="<___base_url___>/profile/27231-irobb/]@iRobb me han dado unas nociones, y ahora me toca a mi sacarles provecho.Como dije antes por mi parte no habrá mas respuesta que no tenga relación con los bucles...Volvemos a c# y Unity.Gracias. 

Hola,Pongo el código de los scripts , el primero hace que un cubo ascienda y descienda en un bucle continuo en el que el contador va asociado a los frames. Y el segundo que hace lo mismo pero el contador se asocia a time.deltatime por lo que se controla con los segundos que transcurren, además está dentro de un evento void FixedUpdate que por lo que he entendido hace que la frecuencia de ejecución sea constante.Me imagino que no estarán muy bien pero funcionar funcionan.Muchas gracias por la ayuda, lo de explicarme que el evento void Update funciona como un bucle y la recomendación de usar  un contador fue la clave.Un saludo.
using UnityEngine;
using System.Collections;

public class Bucle_frame : MonoBehaviour {

public float contador=250;
private float velocidad=0.05f;
private Transform thisTransform;


// Use this for initialization
void Start () {
thisTransform = transform;
}

// Update is called once per frame
void Update () {
   if (contador <= 250 && contador > 125) {
      contador --;
      Debug.Log("esta subiendo"+ contador);
      thisTransform.Translate (Vector3.up * velocidad );
   } else if (contador > 0 && contador <= 125) {
      contador --;
      Debug.Log("esta bajando"+ contador);
      thisTransform.Translate (Vector3.down * velocidad );
   } else {
      contador = 250;
   }

}
}
using UnityEngine;
using System.Collections;

public class Bucle_time_v2 : MonoBehaviour {

private float contador=0;
private float velocidad=5f;
private Transform thisTransform;

// Use this for initialization
void Start () {
   thisTransform = transform;
}

// Update is called once per frame
void FixedUpdate () {
   if (contador <= 15 && contador >=0 ) {
      contador +=Time.deltaTime;
      int segundos =Mathf.FloorToInt (contador);
      int minutes =Mathf.FloorToInt (contador/60F);
      Debug.Log("esta subiendo"+ contador);
      Debug.Log("minutos"+ minutes);
      Debug.Log("segundos"+ segundos);
      thisTransform.Translate (Vector3.up * velocidad * Time.deltaTime );
   }
   else if (contador > 15 && contador <30 ) {
   contador +=Time.deltaTime;
   int segundos =Mathf.FloorToInt (contador);
   int minutes =Mathf.FloorToInt (contador/60F);
   Debug.Log("esta bajando"+ contador);
   Debug.Log("minutos"+ minutes);
   Debug.Log("segundos"+ segundos);
      thisTransform.Translate (Vector3.down * velocidad* Time.deltaTime );
   }
   else {
      contador = 0;
   }
   }
   


         
}
 

Me alegro que vayas aprendiendo. Entiendo que lo del cubo es para aprender, porqué con una animación vas que chutas y mucho menos código (ya que puedes replicar el movimiento inverso siempre).

Etiquetas: