3.7 - MoleMash usando Vídeo

 https://www.youtube.com/watch?v=MciKu0q_yYw&list=PL5tA44GpyFntFHtHd6Zxb2xQZpxwOfeu3&index=24

 Interacción con cámara web y micrófono en Scratch

🎯 Objetivo de este tutorial

Vamos a crear un juego de "golpear al topo" (Whack-a-Mole) pero utilizando la cámara web como control. En lugar de hacer clic con el ratón, moverás la mano sobre el personaje para hacerlo desaparecer. Además, aprenderás a usar el micrófono para detener el juego con un grito. Aprenderás a:

  • Activar la cámara web desde Scratch.

  • Ajustar la transparencia del vídeo para mezclarlo con el juego.

  • Usar el sensor movimiento del vídeo en este objeto.

  • Hacer que un personaje reaccione al movimiento detectado.

  • Usar el sensor intensidad del sonido para controlar eventos.

  • Detener el programa con la voz.


📷 Paso 1: Activar la cámara web

Scratch 2.0 y 3.0 incluyen la posibilidad de usar la cámara web (webcam) como sensor de movimiento.

  1. Ve a la categoría Sensores.

  2. Marca la casilla que dice "vídeo encendido" (en Scratch 3.0, busca el bloque encender vídeo).

  3. Al activarlo, verás que la imagen de la cámara aparece detrás del escenario.

Código básico para encender la cámara:

text
al presionar bandera
encender vídeo

💡 La cámara se mostrará como fondo detrás de los objetos. Puedes moverte frente a ella para ver tu imagen reflejada.


🎨 Paso 2: Ajustar la transparencia del vídeo

El bloque fijar transparencia de vídeo a [ ] controla cuánto se ve la cámara en relación con el escenario.

  • Transparencia 0%: el vídeo se ve completamente, tapando el fondo.

  • Transparencia 100%: el vídeo es completamente transparente (no se ve).

Para que el juego se vea bien, usa un valor intermedio (por ejemplo, 60%).

Código:

text
al presionar bandera
encender vídeo
fijar transparencia de vídeo a [60]%

Con este valor, podrás ver tanto el fondo del juego como tu imagen superpuesta, ideal para interactuar.


🧲 Paso 3: Usar el sensor de movimiento

El sensor movimiento del vídeo en [este objeto] devuelve un número que indica cuánto movimiento se detecta en la zona donde está el objeto.

  • Valor 0: nada se mueve.

  • Valores positivos (hasta 100): hay movimiento (cuanto más alto, más intenso).

Código para leer el movimiento:

text
por siempre
    fijar [tmp] a (movimiento del vídeo en [este objeto])

Mueve la mano sobre el objeto y verás cómo el valor cambia en tiempo real.


🐧 Paso 4: El juego – Golpear al pingüino

Vamos a hacer que un pingüino (o cualquier otro objeto) se esconda y reaparezca en otro lugar cuando detecte movimiento encima de él.

Diseño del juego:

  • El pingüino aparece en un lugar aleatorio.

  • Si mueves la mano sobre él, se esconde.

  • Tras un segundo, reaparece en otra posición aleatoria.

Código completo del pingüino:

text
al presionar bandera
encender vídeo
fijar transparencia de vídeo a [60]%
mostrar
ir a x: (número al azar entre (-240) y (240)) y: (número al azar entre (-180) y (180))

por siempre
    si <(movimiento del vídeo en [este objeto]) > [50]> entonces
        esconder
        esperar [1] segundos
        ir a x: (número al azar entre (-240) y (240)) y: (número al azar entre (-180) y (180))
        mostrar
    fin

Ajuste de sensibilidad: El valor 50 es un umbral. Si el juego es demasiado sensible o poco, cámbialo (prueba con 30 o 70).


🔊 Paso 5: Usar el micrófono para controlar el juego

Además de la cámara, Scratch permite usar el micrófono integrado del ordenador. El sensor intensidad del sonido devuelve un valor de 0 a 100 (aproximadamente) según el volumen captado.

Vamos a añadir una función: si el jugador grita fuerte (intensidad > 50), el juego se detiene por completo.

Código añadido al pingüino (o en el escenario):

text
por siempre
    si <(intensidad del sonido) > [50]> entonces
        detener [todos]

🔇 Prueba: Habla o grita cerca del micrófono. Si el volumen supera el umbral, el programa se detendrá.


🧪 Paso 6: Probar el juego completo

  1. Presiona la bandera verde.

  2. La cámara se activará y verás tu imagen detrás del pingüino.

  3. Mueve la mano sobre el pingüino para que desaparezca y reaparezca en otro lugar.

  4. Si gritas fuerte, el juego se detendrá.


💡 Paso 7: Mejoras y ampliaciones

MejoraCómo hacerla
PuntuaciónAñade una variable que sume 1 cada vez que el pingüino sea golpeado.
TemporizadorAñade un contador de tiempo para limitar la partida.
Múltiples objetosClona varios pingüinos para hacer el juego más difícil.
Efectos visualesCambia el disfraz al golpear (ej: estrella, explosión).
Sonido al golpearUsa tocar sonido [pop] cuando se detecte el movimiento.
Control por gestosPrueba a detectar movimiento en diferentes zonas de la pantalla para controlar al personaje.

📚 Resumen del tutorial 3.6

ConceptoUso
Cámara webencender vídeo y fijar transparencia de vídeo para mezclar imagen real con el juego.
Sensor de movimientomovimiento del vídeo en [este objeto] → devuelve 0-100 según movimiento sobre el objeto.
Reacción al movimientoUsar un condicional si <... > [umbral]> entonces para activar eventos (esconder, reaparecer).
Micrófonointensidad del sonido → mide el volumen captado por el micrófono (0-100).
Control por vozUsar el micrófono para detener el programa o activar eventos.

🎬 ¡Ya tienes un juego interactivo con cámara y micrófono!

Esta lección te ha mostrado cómo llevar la interacción más allá del teclado y el ratón, usando el movimiento físico y la voz como controles. Es una forma divertida de crear juegos inclusivos, accesibles y muy originales. ¡Anímate a experimentar con diferentes umbrales y efectos

Comentarios

Entradas más populares de este blog

1.4 - Interfaz de usuario-Xnergic TCM

1.7 - Bloques de uso más común-Xnergic TCM

1.5 - Personajes-Xnergic