Saludos amigos.
Hoy os traigo un ejercicio sencillo de como calcular la altura máxima
que alcanza un objeto en un momento determinado.
El planteamiento básico consiste en hacernos las siguientes preguntas:
1- ¿Que quiero medir?
2- ¿Con respecto a qué?
3- ¿Siempre, o en un momento determinado?
Y en este caso, las respuestas serían la posición en el eje Y, con respecto al mundo y en
cualquier momento, o mejor dicho, a partir de un momento específico que yo le indique.
Un ejemplo practico, podría ser la medición de la altura de rebote de una pelota
después de colisionar con el suelo.
Para esto, lo que tendremos que comparar en la función "Update" es la posición del objeto
en cuestión (var posActual : Vector3), de la cuál sacaremos la altura (var altura : float).
La altura máxima la almacenaremos en una nueva variable (var alturaMax : float), mediante
un simple "if" que nos compare si la altura es menor o igual que la altura máxima "if(alturaMax <= altura)".
Y si esto es así, almacene el valor en "alturaMax".
Por último, incluiremos un reset para usar de la manera que queramos.
En el ejemplo de la pelota, podríamos resetear en una función "OnCollisionEnter"
poniendo la variable resetAltura = true, eso os lo dejo a vuestra elección.
#pragma strict
var alturaMax : float;
private var altura : float;
private var posActual : Vector3;
var resetAltura : boolean = false;
function Update () {
posActual = transform.position;
altura = posActual.y;
if(alturaMax <= altura){
alturaMax = posActual.y;
}
if(resetAltura){
ResetAlturaMax();
}
}
function ResetAlturaMax () {
alturaMax = altura;
resetAltura = false;
}
No hay comentarios:
Publicar un comentario