BigMiniBoss
  • Developer Blog
  • BigMiniGeek

estúpidos rigid bodies!!!

3/23/2014

1 Comment

 
Parece que ya encontré la solución al problema con mis combos:

Problema:
Si el personaje (player) se movía y lanzaba un ataque, el enemigo recibía el ataque y le marcaba daño.
Sin embargo, si el personaje se quedaba quieto y lanzaba un ataque, el enemigo solo registraba el primer golpe e ignoraba el resto.

Me di cuenta de que la razón de esto sucedía debido a que la forma en como se calcula la colisión obliga que uno de los objetos debe de ser un "rigid body".

Primero declaré al enemigo un Rgid Body, pero el problema seguía sucediendo. Así que lo regrese a su estado anterior.

Después declaré a la caja de colisión del ataque como un Rigid Body, y en esta ocasión si funcionaba... peeeeero... si el personaje saltaba y daba un golpe en el aire, la caja de colisión se desfasaba y quedaba en una posición más elevada, si se seguía dando golpes, el desface de la caja era cada vez más marcado. Así que lo regrese a su estado anterior.

Analizando la situación me di cuenta de que el principal problema se encontraba en el personaje. El personaje SI está declarado como un rigid body y mientras esté en movimiento, Unity identifica que está "despierto", pero en cuanto se queda en reposo, Unity lo coloca en estado "dormido". Este proceso se realiza de manera automática para poder optimizar el rendimiento de la escena y no tener que estar calculando simulaciones físicas cuando no sean necesarias.

Inicialmente creía que el problema radicaba en el enemigo o en la caja de colisión, pero había olvidado un pequeño detalle, la caja de colisión se encuentra emparentada al personaje, así que hereda muchas de sus propiedades, entre ellas, lo referente al Ridig Body. Es por eso que el golpe solo se detectaba cuando el personaje se movía por primera vez, pero posteriormente ya no.

Lo terminé haciendo fue agregar una acción en la cual cada que se de un golpe, el rigid body del personaje se "despierta", de esta forma conseguí que el enemigo detectara cada golpe que se recibía, sin importar que el personaje estuviera en movimiento o fijo. Además, cuando el personaje salta y da un golpe, la caja de colisión no se desfasa, se mantiene siempre en su mismo lugar =)
1 Comment
gustavo santos
3/23/2014 01:28:29 pm

me gustaría ayudar con tu proyecto o ver algo para aprender poco a poco

Reply



Leave a Reply.

    bigminiboss

    BigMiniBoss game studio, es una división de BigMiniGeek dedicada al desarrollo de videojuegos y proyectos especiales, como por ejemplo: Crear videojuegos llenos de virilidad, sabrosasss y harto MEROL!!!... a lo que muchos tarados conocen como "old school".

    Conformados por excelentes desquiciados y trastornados psicóticos cuyo propósito es el caos mundial mediante los videojuegos.

    Archivos

    October 2020
    March 2020
    October 2018
    March 2018
    February 2018
    March 2017
    May 2016
    March 2015
    February 2015
    November 2014
    September 2014
    August 2014
    July 2014
    May 2014
    March 2014
    November 2013
    August 2013

    RSS Feed

Powered by Create your own unique website with customizable templates.