Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Camara En 3ª Persona

Iniciado por Lord Trancos 2, 04 de Julio de 2004, 06:38:08 PM

« anterior - próximo »

Lord Trancos 2

 ¿Como "os lo montais" para "crear" una camara en 3ª persona? (o como lo hariais si no lo habeis hecho nunca)

Yo actualmente uso un sistema muy simple, pero queda muy rudo. Simplemente me quedo a la espalda del personaje siempre a la misma distancia (excepto cuando la camara colisiona con una pared y no puede retroceder mas).

En principio no queda del todo mal, aunque se nota muy rigida; le falta fluidez. El problema es que cuando la camara tropieza con una pared y despues deja de tropezar o viceversa; resulta muy brusco....  :(

Me gustaria saber como lo haceis vosotros.  (ole)  
on los años y mucho esfuerzo he llegado a atesorar una ignorancia total sobre casi todas las cosas.
Gate to Avalon (mi Blog)

NeLo

 Pues exactamente así, pero añadiéndole "masa".

Con lo cual tendría aceleración, inercia, no sería tan brusca.

Si el personaje se pone a correr, que la cámara no se ponga a moverse a 5 m/s (por ejemplo) al instante; si no que acelere hasta alcanzar la velocidad del personaje (tampoco muy despacio que si no se alejaria). En realidad no se tienen que notar que la camara acelera y no va siempre a la misma distancia del personaje, a no ser que te fijes. Inconscientemente se notará una cámara más suave. Y al pararse el pesonaje igual, desacelerará y se parará a una distancia levemente menor de la que debe estar, así que se alejará lentamente.

Saludos.
Drowning deep in my sea of loathing

egf

 pues mira yo ahora estoy con la camara del toro y le e puesto lo siguiente

lanzo un rayo desde el personaje hasta x distancia cada frame, despues le digo que a la camara que se mantenga a la distacia del rayo menos un poco mientras no encuentre nada y si encuentra algo use el resultado quitando el poco y se lo ponga a la camara

jode que mal explicao  :huh:

   :) personaje pos
    |
    |
    |
    |
    v CAMARA pos
    |
    | RAYO

--------------- muro

/////////////////////////////////

   :) personaje
    |
    |
    |
    v CAMARA   pos
    |
    |
--------------- muro
    | RAYO

/////////////////////////////////


   :) personaje
    |
    |
    v CAMARA  pos
    |
    |
--------------- muro
    |
    | RAYO

/////////////////////////////////


cuando el personaje se mueve hacia la pared la camara se mueve a la velicidad del player hacia palante y hacia patras


Lord Trancos 2

 gracias por los comentarios, ya tengo algo mas o menos decente  (uoh)  
on los años y mucho esfuerzo he llegado a atesorar una ignorancia total sobre casi todas las cosas.
Gate to Avalon (mi Blog)

ethernet

  basta con usar dV/dt = k*V; para tener un movimiento curioso :) (k = cte, V la velocidad. Las condiciones de contorno las impondria el movil, en este caso el cuerpo )  

Lord Trancos 2

 Gracias ethernet, pero creo que mejor no lo toco (ademas no acabo de comprender como implementar eso; soy muy malo con las matematicas :P), ya que funciona bastante bien;

Weno, al final lo he dejado de la siguiente forma:

 - Lanzo un rayo desde el personaje hacia una posicion un poco mas elevada a su espalda. (Detecto si hay alguna colision para que la camara no caiga dentro de una pared).
 (eso es lo que hacia hasta ahora)

 - Y despues, muevo la posicion actual de la camara (velocidad constante por ahora; pero no queda mal) hacia el punto que he calculado con el rayo anterior. (de nuevo detecto si hay alguna colision durante el trayecto de la camara).

Queda bastante chulo, no se traga ninguna pared, y cuando se atasca en una esquina o similar reacciona bastante bien.

Si eso intentare darle un poco de aceleracion/desaceleracion para que sea mas suave.
on los años y mucho esfuerzo he llegado a atesorar una ignorancia total sobre casi todas las cosas.
Gate to Avalon (mi Blog)

tamat

 yo usaba un metodo más simple, interpolaba por un coeficiente la posición de la camara en el frame anterior con la posición 'ideal' en este frame (que sería justo detras del prota), si el coeficiente era cercano a uno entonces era muy 'dura', se movía bruscamente, si era cercano a cero era muy 'blanda' y si ahcias giros bruscos podias perder la nave de sitio, pero weno, el resultado era bueno.
Por un stratos menos tenso

Lord Trancos 2

 Acabo de ponerle "aceleracion/deceleracion", y como me ha gustado como ha quedado, lo subo para que me deis vuestra opinion.

Solo quiero la opinion del movimiento/collision de la camara. Abstenerse de comentarios sobre otros temas; en especial sobre el "artwork" :P

http://www.geocities.com/dxlab/tmp/walk_demo.html

Si os va bien de velocidad, podeis modificar el archivo _test.map, la línea;

# Floor Layer
MAP.AddLayer = floor.lay, 0

por

# Floor Layer
MAP.AddLayer = floor.lay, 1

para que quede mas chachi.  (uoh)  
on los años y mucho esfuerzo he llegado a atesorar una ignorancia total sobre casi todas las cosas.
Gate to Avalon (mi Blog)

BeRSeRKeR

 Mola, mola. :)

Con las reflexiones activadas funciona a unos 40-50 fps en un P4 1,4, 512MB RAM y Radeon 9600 128MB.

Y nada, supongo que después, además del yaw (rotación en Y), también le añadirás el pitch (rotación en X), ¿no?. Para cuando el personaje mire hacia arriba o hacia abajo.

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

BeRSeRKeR

 Por cierto, las colisiones parecen muy bien implementadas por el momento, con su sliding y todo... :)

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

Lord Trancos 2

 Todavia no se si sera necesario para el personaje mirar arriba y abajo, asi que por ahora paso de implementar eso, o el movimiento de la vista mediante el raton.  :P

Ahora lo que quiero implementar es la transicion entre animaciones.  ;)

El bajo framerate se explica por varios motivos; ya que hago bastante el animal por ahora (por ejemplo; me miro todos los poligonos para las colisiones)... ya lo ire optimizando.  (ole)

La implementacion de las collisiones no hubiesen sido posibles sin la ayuda del paper de Kasper Fauerby (www.peroxide.dk).  :lol:
on los años y mucho esfuerzo he llegado a atesorar una ignorancia total sobre casi todas las cosas.
Gate to Avalon (mi Blog)

BeRSeRKeR

Cita de: "Lord Trancos 2"La implementacion de las collisiones no hubiesen sido posibles sin la ayuda del paper de Kasper Fauerby (www.peroxide.dk).  :lol:
Sí, muy buen paper el de Telemachos. Tiene otro muy bueno sobre stencil soft-shadow volumes. Y la verdad es que se está currando un engine impresionante. Bueno, qué digo engine, ¡juego!. Me dijo hace un tiempo que tenía en mente montar una empresa de videojuegos.

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

rrc2soft

 Lord Trancos, te ha quedao chulo  :)

36 fps (reflex. activadas) en un PIV a 2Ghz con una GeForce2 MX.

seryu

 el movimiento de la camara esta bastante bien, para mi gusto no deja ver mucho horizonte, pero claro dependiendo del tipo de juego.. centrandome en el movimiento, es suave y reacciona bastante bien, deberias poner el codigo de la camara para discutirlo entre todos, ya qe estas. Deberias comprobar qe funcione bien con objetos intermedios qe colisiones, como puertas, sillas, mesas, otra gente.. lo qe no me gusta mucho es que empiece a mirar al suelo cuando giras, depende del juego como digo, pero en general eso molesta mucho.

el nivel con el reflejo activado me ha recordado un webo al hospital de un survival horror qe ando haciendo en mis ratos libres (uoh)   x cierto mu maja la leelo que te has pillado  :lol: aunque espero que no sea el personaje de tu juego, porque te aviso que la prota pelirroja ya esta pillada :D

me va a unos 94/95 frames (varia mucho entre 90 y 100) en un amd xp3000 con una radeon 9600 pro.


pd. me gusta eso de "engine"

ethernet

 La unica pega que tengo es q la tia tiene pocas tetas :)
(se puede decir tetas?)






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.