Resultados 1 al 14 de 14

Tema: Cómo hacer un único pulso positivo negativo con el sensor keyboard del BGE

  1. #1
    Madmaxista convencido Avatar de lordloki
    Fecha de ingreso
    Mar 2004
    Ubicación
    a punto de comprarme un huerto
    Mensajes
    381
    Gracias (Dadas)
    60
    Gracias (Recibidas)
    66

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Buenas. Estoy intentado generar un pulso único con el keyboard sensor, pero no doy con el tema (o género 2 o ninguno o 1 y después de un tiempo otro, etc). ¿alguien me puede arrojar algo de luz al tema?
    Con el property sensor si lo he conseguido (ver imagen adjunta) pero necesitaba algo más interactivo para facilitarme el desarrollo de un modulo.

    -blender_module1.jpeg

    Gracias por adelantado.
    Última edición por lordloki; 01-09-2011 a las 18:26

  2. #2
    Vampiro Giovanni Avatar de Pepius
    Fecha de ingreso
    Feb 2004
    Ubicación
    Guadassuar, Valencia
    Mensajes
    4,998
    Gracias (Dadas)
    18
    Gracias (Recibidas)
    105

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Activa el tap, creo que es eso (eso no existía cuando yo lo usaba.

  3. Gracias lordloki Agradece este post
  4. #3
    Ninja Fever Avatar de Mars Attacks
    Fecha de ingreso
    Jun 2003
    Ubicación
    Castellón
    Mensajes
    12,746
    Gracias (Dadas)
    339
    Gracias (Recibidas)
    343

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Creo que esa parte nunca la he visto muy bien explicada. Un evento de pulsación de tecla tiene tres fases posibles:
    No pulsada->pulsada (botón, en el ge)
    Pulsada->pulsada (ningún botón)
    Pulsada->no pulsada (botón ··· en el ge).
    (Con el inv tendríamos también el no pulsada->no pulsada).

    Para que cuando alguno de esos flancos se repita (por ejemplo, en el caso pulsada->pulsada), el botón tap hace que sólo se envíe el primero de ellos.

  5. Gracias Pepius Agradece este post
  6. #4
    Vampiro Giovanni Avatar de Pepius
    Fecha de ingreso
    Feb 2004
    Ubicación
    Guadassuar, Valencia
    Mensajes
    4,998
    Gracias (Dadas)
    18
    Gracias (Recibidas)
    105

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    No lo había entendido nunca como flancos de una señal, ahora tiene sentido todo.

  7. #5
    Ninja Fever Avatar de Mars Attacks
    Fecha de ingreso
    Jun 2003
    Ubicación
    Castellón
    Mensajes
    12,746
    Gracias (Dadas)
    339
    Gracias (Recibidas)
    343

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Bueno, el único problema es que no funciona, o no está implementado así, o yo entendí mal el sentido. Edito: revisando, si tenemos el botón tap pulsado responde así:
    Nada activado -> un pulso cuando pasa de no pulsado a pulsado.

    True activado (···, antes lo puse al revés) -> un pulso en cada frame.

    False activado (, antes lo puse al revés) -> un pulso cuando pasa de no pulsado a pulsado. Esto me marea cantidad.

    En resumen: vaya cosa rara montaron ahí cada vez que me pongo a hacer algo, me toca probar combinaciones hasta dar con la que me interesa.
    Última edición por Mars Attacks; 03-09-2011 a las 20:48

  8. #6
    Vampiro Giovanni Avatar de Pepius
    Fecha de ingreso
    Feb 2004
    Ubicación
    Guadassuar, Valencia
    Mensajes
    4,998
    Gracias (Dadas)
    18
    Gracias (Recibidas)
    105

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Pero entonces el false no es lo mismo que nada activado? Por otra parte, creo que la funcionalidad la cambiaron, porque antes de estar el botón tap ya se podía hacer el mismo efecto solo con los true/false modes. Diría que era activando el false, aunque no te lo sabría decir seguro.

  9. #7
    BlenderAdicto Avatar de Caronte
    Fecha de ingreso
    Dec 2004
    Ubicación
    Valencia-España
    Mensajes
    14,689
    Gracias (Dadas)
    174
    Gracias (Recibidas)
    770

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    ¿Para que usáis eso? Yo con el tap y el invert me apaño perfectamente, no entiendo la utilidad de esos botones, a no ser que dependan de un script asociado.
    "Algún día todo será digital". Caronte.
    Mi web: NicoDigital.com

  10. #8
    Vampiro Giovanni Avatar de Pepius
    Fecha de ingreso
    Feb 2004
    Ubicación
    Guadassuar, Valencia
    Mensajes
    4,998
    Gracias (Dadas)
    18
    Gracias (Recibidas)
    105

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Pero antes no existía el tap que yo sepa. Más que nada porque yo no los había utilizado nunca y no sabía que existían. Como digo arriba, cuando fui a probar lo que pedía Lordloki lo intenté hacer solo con los true y false que es como lo hacía yo antes y no funcionaba. Entonces es cuando advertí que habían puesto el botón tap.

    Hay que tener en cuenta que no uso el ge de Blender igual desde, la 2.3x o 2.43 como mucho.

  11. #9
    Madmaxista convencido Avatar de lordloki
    Fecha de ingreso
    Mar 2004
    Ubicación
    a punto de comprarme un huerto
    Mensajes
    381
    Gracias (Dadas)
    60
    Gracias (Recibidas)
    66

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Yo creo que mi caso no es un caso representativo puesto que al no enlazar un actuador sino un módulo de c no tiene igual comportamiento.

    He revisado el código de los actuadores y todos evitan el pulso negativo, aunque tú no quieras:
    Código:
    Bol bnegativeevent = sca_iactuator:isnegativeevent(),
    Sca_iactuator:removeallevents().
    
    If (bnegativeevent)
    Return; // do nothing on negative events.
    .

    Voy hacer lo mismo en el modulo:
    Código:
    Sca_isensor* e_sensor = object->findsensor(keyboard), if (e_sensor->getstate () &&.e_sensor->getprevstate ())
    Cout << solo pulso positivo\n;
    . Gracias.

  12. #10
    Ninja Fever Avatar de Mars Attacks
    Fecha de ingreso
    Jun 2003
    Ubicación
    Castellón
    Mensajes
    12,746
    Gracias (Dadas)
    339
    Gracias (Recibidas)
    343

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Bueno, reitero que en teoría, el pulso false debería lanzarse cuando termina el evento. Esto es utilísimo para el tema de clicks sobre objetos (en los que tú quieres que ocurra la acción cuando sueltas el botón, no cuando lo pulsas) y en general para evitar repeticiones de eventos en acciones.

    Un ejemplo clásico: imaginad un juego dónde tienes el botón de pausa y, cuando lo pulsas, tienes el en mismo lugar el botón de continuar el juego. Si no se lanza el evento en los flancos de desactivación (el false), lo que ocurriría es que se lanzaría el evento de pausa en cuanto pulsaras, se lanzaría el evento de continuar en el mismo frame o en el siguiente frame (depende de la implementación, y en el segundo caso probablemente no te habría dado tiempo a soltar el ratón) y lo que notarías es que el juego no se pausa cuando pulsas ese botón, o que hay un extraño parpadeo y luego todo sigue igual.

    Con el flanco de false te aseguras de que un botón no funciona si antes no se ha hecho click sobre el (pulse true) y efectúa su acción cuando lo sueltas (flanco false).

    Pero repito que no sé cómo porras han implementado esto.

    Por cierto, ¿cómo incrustas módulos de c? ¿te refieres a empotrándolos desde Python o haces alguna otra cosa?

  13. #11
    BlenderAdicto Avatar de Caronte
    Fecha de ingreso
    Dec 2004
    Ubicación
    Valencia-España
    Mensajes
    14,689
    Gracias (Dadas)
    174
    Gracias (Recibidas)
    770

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Pero, todo eso que explicas se resuelve fácilmente con el tap y el invert.
    "Algún día todo será digital". Caronte.
    Mi web: NicoDigital.com

  14. #12
    Ninja Fever Avatar de Mars Attacks
    Fecha de ingreso
    Jun 2003
    Ubicación
    Castellón
    Mensajes
    12,746
    Gracias (Dadas)
    339
    Gracias (Recibidas)
    343

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Yes, y know, pero ni siquiera deberían hacer falta con una implementación estándar. Claro que igual su protocolo para esos botones es otro, el caso es que nunca he encontrado una documentación decente y clara sobre ellos.

  15. #13
    BlenderAdicto Avatar de Caronte
    Fecha de ingreso
    Dec 2004
    Ubicación
    Valencia-España
    Mensajes
    14,689
    Gracias (Dadas)
    174
    Gracias (Recibidas)
    770

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Yo siempre he pensado (y sigo haciéndolo) que esos botones no funcionaban bien, no se les ve ninguna lógica.
    "Algún día todo será digital". Caronte.
    Mi web: NicoDigital.com

  16. #14
    Madmaxista convencido Avatar de lordloki
    Fecha de ingreso
    Mar 2004
    Ubicación
    a punto de comprarme un huerto
    Mensajes
    381
    Gracias (Dadas)
    60
    Gracias (Recibidas)
    66

    Como hacer un unico pulso positivo o negativo con el sensor keyboard del BGE

    Por cierto, ¿cómo incrustas módulos de c? ¿te refieres a empotrándolos desde Python o haces alguna otra cosa?
    Hay un repositorio en https://github.com/makersf/blenderdev que te permite cargar modulo en c con un nuevo controller. El problema (por el que ya he dejado de usarlo) es que, al utilizar más funciones de Blender te obliga a enlazar a las diferentes librerías internas con lo que al final tienes un módulo que te ocupa tanto como el blenderplayer con lo cual no tiene mucha utilidad. Quizás se pueda utilizar solo si se quieren hacer cálculos que consuman mucha cpu, pero no teniendo que llamar a funciones de Blender.

Temas similares

  1. ¿Qué debo hacer para calibrar sensor de proximidad?
    Por robfret001 en el foro Impresoras 3D
    Respuestas: 0
    : 09-02-2021, 04:53
  2. Respuestas: 5
    : 02-01-2012, 10:34
  3. Cómo agregar varias caras de un mismo objeto en un único documento UV
    Por Shoto_Reaper en el foro Materiales y Texturizado
    Respuestas: 6
    : 17-09-2011, 16:05
  4. Duda vértices deben estar en z positivo
    Por juanjo3Dmax en el foro Modelado
    Respuestas: 1
    : 01-03-2011, 21:39
  5. Que tal tienes el pulso
    Por rcar_2001 en el foro Todo menos Infografía
    Respuestas: 21
    : 19-10-2005, 07:39