Autor Tema: CHIPMUNK en bennu  (Leído 269159 veces)

Prg

  • Hero Member
  • *****
  • Mensajes: 1569
  • Karma: 140
    • Mi pagina
Re:CHIPMUNK en bennu
« Respuesta #435 en: Marzo 06, 2013, 05:44:57 pm »
Hola. No veo ese comportamiento. ¿Podrías poner un pequeño ejemplo?

Gracias
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

Erkosone

  • Hero Member
  • *****
  • Mensajes: 882
  • Karma: 51
Re:CHIPMUNK en bennu
« Respuesta #436 en: Junio 09, 2013, 02:37:22 pm »
Hola Prg, quería compartir algo contigo, he estado integrando tu función de generación de terrenos con mi PhysicsMotionAPI para que la gente pueda generar un terreno simplemente con:


Physics_scenario_terrain_Build( file, graph, umbral );


Y he visto un problema en el algoritmo que genera la lista de polígonos, bueno, en el que genera la lista de vectores de un polígono mejor dicho, el algoritmo en si mismo es genial, no puedes imaginarte cuanto te agradezco esta parte del trabajo que has hecho, es una pasada en serio, me encanta.


Pero..


El problema viene en un juego tipo plataformas como un mario o un sonic o juegos así, las plataformas tienen que ser planas y tu generador de terrenos las hace "casi" planas, con lo de planas me refiero a que en el segmento donde va a caer un personaje, si no es PERFECTAMENTE HORIZONTAL el personaje o lo que sea se va desplazando hacia un lado por que hay una pequeña pendiente.


He logrado solucionarlo después de pegarme un buen rato analizando como habías montado la función del generador de terrenos ;)


Te paso la nueva función genTerr() para que le des un vistazo, no quería dejarlo simplemente en "vale, lo he arreglado, ya está..", te lo comparto por que es un dato curioso que seguramente querrás modificar en el pack de ejemplos que tienes publicado ;)


Lo que he añadido es una variable llamada "INT CORRECTION_" que se usa en un blucle tipo for, la variable va de cero a 3, y lo que hace el bucle es comparar si la diferencia en Y de ambos vectores tiene una diferencia menor de 3, si es así los iguala para generar un plano horizontal perfecto.


Es una pequeña corrección a tu algoritmo de escaneo de vectores en polígonos que me parece buenísimo pero he creído que con esto ya es mas que buenísimo, ahora es perfecto  ;D



function genTerr(int l)
private
   cantL, cantP,objeto,i;
   cpVect * c1;
   cpVect * c2;
   int ln;
   int correction_;
begin
   cantL=cantElement(l);
   for (z=0;z<cantL;z++)
      objeto=getElement(l,z);
      cantP=cantElement(objeto);
      for (i=0;i<cantP-1;i++)
         c1=getElement(objeto,i);
         c2=getElement(objeto,i+1);
         if(c1.y < c2.y)
            for( correction_=0; correction_<3; correction_++ )
               if(c1.y == c2.y - correction_)
                  c1.y = c2.y;
                  break;
               end
            end
         else
            for( correction_=0; correction_<3; correction_++ )
               if(c2.y == c1.y - correction_)
                  c2.y = c1.y;
                  break;
               end
            end
         end
         pLinea(c1,c2);
         ln++;
         draw_fcircle(c1.x,c1.y,4);
      end
      draw_fcircle(c2.x,c2.y,4);
   end
   say("lineas generadas = "+ ++ln);
end




Gracias por este trabajo que has hecho, es una pasada poder disfrutar de ChipMunk en bennuGD amigo  ;)
« última modificación: Junio 09, 2013, 02:40:07 pm por Erkosone »

emov2k4

  • Full Member
  • ***
  • Mensajes: 224
  • Karma: 4
Re:CHIPMUNK en bennu
« Respuesta #437 en: Agosto 07, 2013, 07:17:00 pm »
Alguien me puede ayudar, quiero hacer un juego en TOP-DOWN utilizando Chipmunk , pero al no ponerle gravedad igual quedan flotando los graficos... saludos

Erkosone

  • Hero Member
  • *****
  • Mensajes: 882
  • Karma: 51
Re:CHIPMUNK en bennu
« Respuesta #438 en: Agosto 08, 2013, 04:14:36 am »
Pero que es exactamente lo que quieres hacer? algún vídeo demostrativo?

emov2k4

  • Full Member
  • ***
  • Mensajes: 224
  • Karma: 4
Re:CHIPMUNK en bennu
« Respuesta #439 en: Agosto 08, 2013, 02:07:17 pm »
Estimado ,gracias por responder... ya encontré la solución, utilicé el demo de bomberman.  saludos


emov2k4

  • Full Member
  • ***
  • Mensajes: 224
  • Karma: 4
Re:CHIPMUNK en bennu
« Respuesta #440 en: Febrero 20, 2014, 03:50:05 pm »
Estimados,
Tengo un proceso que comienza en eje x -50 , en el PC me lo muestra bien..., pero al portar a android el eje me lo muestra en 0

mirar acá código
http://forum.bennugd.org/index.php?topic=3813.0

Saludos