Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
#2
General (Antiguo) / Funcionamiento de bucle
Octubre 08, 2015, 11:40:23 AM
[quote author=mrpacogp" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="26410" data-ipsquote-contentcommentid="116982 date=1444296882]Haz coquletas!! Enviado desde mi iPhone utilizando Tapatalk[/quote]Eh? Lo dices por lo de desmenuzar?
#3
General (Antiguo) / Funcionamiento de bucle
Octubre 08, 2015, 07:43:37 AM
Te agradezco los comentarios! Los voy desmenuzando y te cuento.Un saludo.
#4
General (Antiguo) / Funcionamiento de bucle
Octubre 07, 2015, 02:41:44 PM
Hola,Finalmente he terminado. Es una escena con tres cubos y un Gameobject vacío que dirige el cotarro... El script hace que cada cubo se haga visible/visible y haga un recorrido cuadrado en función a un bucle de tiempo que hay en el Gameobject vacío. Dejo el código del gameobject vacío(Organizador_trayectoria) y de uno de los cubos por si a alguien le pudiera servir de algo(trayectoria_C1)...aunque sea para saber como no se hacen las cosas..using UnityEngine;
using System.Collections;
public class Organizador_trayectoria : MonoBehaviour {
private float contador=0;
public GameObject Cubo_1;
public trayectoria_C1 Cubo_1_Script;
public GameObject Cubo_2;
public trayectoria_C2 Cubo_2_Script;
public GameObject Cubo_3;
public trayectoria_C3 Cubo_3_Script;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void FixedUpdate () {
Cubo_1= GameObject.Find("Cubo_1");
Cubo_1.SetActive(true);
if (contador < 1 && contador >= 0) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Subir_C1 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Invisible_C3 ();
} else if (contador >= 1 && contador < 2) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Dcha_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Subir_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Visible_C3 ();
} else if (contador >= 2 && contador < 3) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Bajar_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Dcha_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Subir_C3 ();
} else if (contador >= 3 && contador < 4) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Izqda_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Bajar_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Dcha_C3 ();
} else if (contador >= 4 && contador < 5) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
//Cubo_1= GameObject.Find("Cubo_1");
//Cubo_1.SetActive(false);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Invisible_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Izqda_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Bajar_C3 ();
} else if (contador >= 5 && contador < 6) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Invisible_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Invisible_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Izqda_C3 ();
}
else {
contador = 0;
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Visible_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Visible_C2 ();
}
}
}
using System.Collections;
public class Organizador_trayectoria : MonoBehaviour {
private float contador=0;
public GameObject Cubo_1;
public trayectoria_C1 Cubo_1_Script;
public GameObject Cubo_2;
public trayectoria_C2 Cubo_2_Script;
public GameObject Cubo_3;
public trayectoria_C3 Cubo_3_Script;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void FixedUpdate () {
Cubo_1= GameObject.Find("Cubo_1");
Cubo_1.SetActive(true);
if (contador < 1 && contador >= 0) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Subir_C1 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Invisible_C3 ();
} else if (contador >= 1 && contador < 2) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Dcha_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Subir_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Visible_C3 ();
} else if (contador >= 2 && contador < 3) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Bajar_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Dcha_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Subir_C3 ();
} else if (contador >= 3 && contador < 4) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Izqda_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Bajar_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Dcha_C3 ();
} else if (contador >= 4 && contador < 5) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
//Cubo_1= GameObject.Find("Cubo_1");
//Cubo_1.SetActive(false);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Invisible_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Izqda_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Bajar_C3 ();
} else if (contador >= 5 && contador < 6) {
contador += Time.deltaTime;
int segundos = Mathf.FloorToInt (contador);
int minutes = Mathf.FloorToInt (contador / 60F);
Debug.Log ("contador" + contador);
Debug.Log ("minutos" + minutes);
Debug.Log ("segundos" + segundos);
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Invisible_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Invisible_C2 ();
Cubo_3_Script = GameObject.FindGameObjectWithTag ("Cubo_3").GetComponent<trayectoria_C3> ();
Cubo_3_Script.Izqda_C3 ();
}
else {
contador = 0;
Cubo_1_Script = GameObject.FindGameObjectWithTag ("Cubo_1").GetComponent<trayectoria_C1> ();
Cubo_1_Script.Visible_C1 ();
Cubo_2_Script = GameObject.FindGameObjectWithTag ("Cubo_2").GetComponent<trayectoria_C2> ();
Cubo_2_Script.Visible_C2 ();
}
}
}
using UnityEngine;
using System.Collections;
public class trayectoria_C1 : MonoBehaviour {
private float velocidad=5f;
private Transform thisTransform;
public Renderer ver;
// Use this for initialization
void Start () {
thisTransform = transform;
}
public void Subir_C1(){
thisTransform.Translate (Vector3.up * velocidad * Time.deltaTime );
}
public void Dcha_C1(){
thisTransform.Translate (Vector3.right * velocidad * Time.deltaTime );
}
public void Bajar_C1(){
thisTransform.Translate (Vector3.down * velocidad * Time.deltaTime );
}
public void Izqda_C1(){
thisTransform.Translate (Vector3.left * velocidad * Time.deltaTime );
}
public void Invisible_C1(){
ver=this.gameObject.GetComponent<Renderer>();
ver.enabled = false;
}
public void Visible_C1(){
ver=this.gameObject.GetComponent<Renderer>();
ver.enabled = true;
}
}
#5
General (Antiguo) / Buenas
Octubre 01, 2015, 07:56:30 AM
Buenos días,Ya sabéis...baile de nombre. No es un título universitario,es lo que ahora se llama un grado superior de FP, antes era un ciclo superior. Y efectivamente se tocaba solo un poco la programación, se daba una asignatura de C muy básica , otra que la mitad del tiempo era para VBA también básica y lo que sí se daba era gestión de bases de datos con SQLGracias.
#6
General (Antiguo) / Buenas
Octubre 01, 2015, 07:10:39 AM
Buenos días,Una vez resuelto mi primer post me presento...un novato que ha llegado a Unity por su aplicación en visualizaciones arquitectónicas pero que cada vez tiene más curiosidad. De programación las nociones de C y en VBA que tuve en el ciclo de Administración de sistemas.Un saludo y gracias.
#7
General (Antiguo) / Funcionamiento de bucle
Septiembre 30, 2015, 03:07:02 PM
[quote author=iRobb" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="26410" data-ipsquote-contentcommentid="114887 date=1443618360]Eso mismo, por extrapolación y el movimiento inverso.[/quote]Ok, gracias de nuevo.Un saludo.
#8
General (Antiguo) / Funcionamiento de bucle
Septiembre 30, 2015, 03:00:18 PM
[quote author=iRobb" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="26410" data-ipsquote-contentcommentid="114879 date=1443617288]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).[/quote]Gracias!!!. Sí, es para aprender. Ahora para ver como va lo de la comunicación entre scripts haré varios cubos que se vayan dando las salidas entre ellos.En lo de la animación ... ¿te refieres a qué Unity te permite,como por ejemplo Max, poner el objeto en posición inicial desplazarlo a la posición final y él ya te hace la animación o algo similar?Un saludo.
#9
General (Antiguo) / Funcionamiento de bucle
Septiembre 30, 2015, 02:42:56 PM
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;
}
}
}
#10
General (Antiguo) / Funcionamiento de bucle
Septiembre 27, 2015, 12:00:05 PMCita 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.
#11
General (Antiguo) / Funcionamiento de bucle
Septiembre 27, 2015, 10:37:54 AM
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.
#12
General (Antiguo) / Funcionamiento de bucle
Septiembre 26, 2015, 11:14:25 PM[/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.
#13
General (Antiguo) / Funcionamiento de bucle
Septiembre 26, 2015, 10:16:48 PMpero 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.
#14
General (Antiguo) / Funcionamiento de bucle
Septiembre 26, 2015, 09:43:19 PMPerfecto porque una rutina de un temporizador sí que he logrado que funcione.Un saludo.[/quote]
#15
General (Antiguo) / Funcionamiento de bucle
Septiembre 26, 2015, 05:56:12 PM
[quote author=Oak Human Flesh" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="26410" data-ipsquote-contentcommentid="113658 date=1443217594]A estas alturas tal vez esto ya esté sobrado, pero ahí vaSi pongo un bucle dentro de otro bucle, cual bucle termina su trabajo primero?Antes de salir del fin del primer bucle, obviamente debe haber terminado el bucle interno.Luego imaginar una malla de un objeto 3d en donde las ubicacines de sus vértices deben ser procesadas usando este método no esta mal.En palabras podría ser algo así, por cada vértice asignar un valor a su eje x otro para el eje y, y otro para el eje z.Bucles dentro de otros con un resultado. .. la posición del vértice en sus tres ejes en un frame.Luego la malla si está compuesta por n vértices, entonces, para poder dibujarla en un frame se deben calcular todas las posiciones de cada uno de sus vértices, antes de que pase el frame, de ahi es muy usable un bucle dentro de otro, pero si la malla contiene demasiados poligonos crash, la capacidad del render es superada, entonces o no se ven o se queda esperando a que se calcule toda la malla.[/quote]De nuevo te agradezco tus comentarios. Los leo con detenimiento y a ver si en no mucho tiempo puedo decirte un eureka!!Un saludo.
... 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.