Bennu Game Development

Foros en Español => Mesa de Ayuda => Topic started by: BlySntK on July 21, 2012, 09:02:25 PM

Title: Acercamiento o alejamiento de personaje
Post by: BlySntK on July 21, 2012, 09:02:25 PM
A ver si me explico bien... Necesito hacer que el gráfico del personaje que manejo simule profundidad de campo al alejarse en la misma pantalla o se acerque hacia nosotros progresivamente. He probado con size y no lo hace de manera progresiva (o quizás no encuentro el algoritmo adecuado para ello). Se agranda o empequeñece pero, no simula alejamiento ni acercamiento... cómo debería hacerlo?
Title: Re:Acercamiento o alejamiento de personaje
Post by: KeoH on July 21, 2012, 09:42:40 PM
deberias de hacer que la variable size se compruebe en cada fotograma, y su valor dependa de algo que indique cuan profundo esta el personaje. Como se va a recalcular en cada frame, esas variaciones de valor deben ser pequeñas. A ver si asi te vale de algo xDD
Title: Re:Acercamiento o alejamiento de personaje
Post by: FreeYourMind on July 21, 2012, 11:27:30 PM
algo así ?

http://www.youtube.com/watch?v=DMuH8gLtW8I (http://www.youtube.com/watch?v=DMuH8gLtW8I)

es solo cuestion de ajustar bien los valores
Title: Re:Acercamiento o alejamiento de personaje
Post by: Futu-block on July 21, 2012, 11:33:14 PM
eso, hay que contar con una Z que te proponga la profundidad del personaje en cuestion y aplicarle un porcentaje de size...

creo que me he explicao bien ;)
Title: Re:Acercamiento o alejamiento de personaje
Post by: BlySntK on July 22, 2012, 01:01:08 AM
Quote from: FreeYourMind on July 21, 2012, 11:27:30 PM
algo así ?

http://www.youtube.com/watch?v=DMuH8gLtW8I (http://www.youtube.com/watch?v=DMuH8gLtW8I)

es solo cuestion de ajustar bien los valores

EXACTLY! This is just it need :) Entonces iba bien encaminado (en cierta manera lo sabía pero no sabía exactamente si tenía que controlar algo más) Entonces, decis que la variable size la vaya controlando cada frame además de guardar la z anterior y modificarla en el siguiente frame, ¿algo así?
Title: Re:Acercamiento o alejamiento de personaje
Post by: KeoH on July 22, 2012, 07:33:20 AM
mas o menos sip
Title: Re:Acercamiento o alejamiento de personaje
Post by: Erkosone on July 22, 2012, 04:12:50 PM
tienes que tener en cuenta que distancia quieres simular y entre que "alturas" se comprande, entonces haces algo tan simple como esto:


Si lo mas cerca es el centro de la pantalla por ejemplo "en el eje Y", y lo mas lejos es por encima del centro del eje Y unos 100 pixeles.. entonces tienes que por ejemplo para una resolución de 320x480 a '240 de Y' el size debe ser de 100, y a 140 debe ser de "n" en función de la distancia que quieres simular, con una sencilla regla de 3 sacas la formula, y la aplicas al gráfico, siempre teniendo en cuenta su posición en el eje Y.


Esa es una forma simple y efectiva, seguro que hay mejores, pero con eso puedes simularlo perfectamente, y además, también te sirve para dejar en automático la Z de los objetos, por ejemplo con algo muy similar a lo anterior, si la resolución en Y es de 480, lo que se suele hacer es esto:  Z = (n' + (480 - Y)) donde n' es el valor mínimo de Z, de esta forma tienes los objetos que dependiendo de su altura en la pantalla se visualizarán por delante o por detrás de los demás objetos en función de su altura o "lejanía";)
Title: Re:Acercamiento o alejamiento de personaje
Post by: BlySntK on July 22, 2012, 06:30:15 PM
Sí, es lo que estaba realizando actualmente, guardando la z en un inicio, ajustado el size del grafico y, con esa línea hacer que tanto el size como la z se vayan actualizando poco a poco para que parezca alejarse... De todas formas iré haciendo pruebas pero, hecho está casi. Gracias por vuestras respuestas :)
Title: Re:Acercamiento o alejamiento de personaje
Post by: Futu-block on July 22, 2012, 09:59:18 PM
si, pero no la llamemos z que la liamos ;)