Información sobre la clase
Cursos: desde 2.º de la ESO hasta 2.º de Bachillerato (los estudiantes deben tener como mínimo 13 años para participar en esta clase)
Duración del programa: una hora
Herramienta de trabajo: modo Creativo de Fortnite
Entorno de aprendizaje: un dispositivo compatible con Fortnite por estudiante, con conexión a internet. Un aula de informática o un escritorio móvil para portátiles conformarían el entorno idóneo.
Autores y datos de contacto
Autores: Steven Isaacs y Brian Dickman
Correo electrónico: [email protected] | [email protected]
Twitter: @mr_isaacs | @cleverlike
LinkedIn: https://www.linkedin.com/in/steve-isaacs/ | https://www.linkedin.com/in/cleverlike
DESCRIPCIÓN DE LA CLASE/ENTORNO DE APRENDIZAJE
Esta lección se ha diseñado para la Hora del Código con motivo de la Semana de la Educación en Informática.
Puede impartirse como lección independiente o en combinación con otras actividades para completar un proyecto de mayor tamaño.
Steve Isaacs, autor de esta clase, es el jefe del programa educativo de Epic Games. Entre sus funciones se encuentra ayudar a que herramientas como Unreal Engine, el modo Creativo de Fortnite y Twinmotion lleguen a las aulas de profesores y estudiantes de educación secundaria. Steve, antes de trabajar en Epic, solía enseñar diseño y desarrollo de videojuegos en un entorno de aprendizaje en el que los alumnos tenían que elegir entre diferentes opciones para darles diferentes enfoques a los resultados del aprendizaje en función de sus intereses, tanto en términos de contenido como en opciones del proyecto.
Brian Dickman, también autor de esta clase, estudió informática y trabaja a tiempo completo en un estudio de desarrollo de videojuegos, donde participa en la creación de contenido didáctico y divertido a partir de videojuegos populares.
Presentación de la lección
Las carreras de obstáculos llevan siendo una gran fuente de entretenimiento, además de una prueba de habilidad, desde el siglo XIX. En general, una carrera de obstáculos es una competición cronometrada en la que el jugador tiene que completar un recorrido plagado de desafíos. El jugador debe demostrar velocidad, fuerza, agilidad y, a veces, una mente astuta para superar ciertas pruebas.
¿Alguna vez has creado tu propia carrera de obstáculos en casa, al aire libre, en el colegio o en un campamento? ¿Has visto programas o vídeos en los que personas o animales tratan de completar una?
Vas a usar el modo Creativo de Fortnite para diseñar una carrera de obstáculos divertida a la vez que desafiante. Al crear el recorrido, haremos uso de los conceptos de programación detección de colisiones y arquitectura dirigida por eventos.
PREPARADOS, LISTOS, ¡A CONSTRUIR!
Resultados deseados
¿Cuáles son los resultados de aprendizaje para los estudiantes?
PREGUNTAS ESENCIALES/GRANDES IDEAS
¿Pueden los estudiantes aprender conceptos de informática englobados en actividades de peso en lugar de estudiar sintaxis de forma aislada?
¿Se adquirirá un entendimiento general de los conceptos en un entorno de programación al aprender conceptos informáticos como las funciones a través de una actividad en el modo Creativo de Fortnite?
¿Pueden los estudiantes aprender conceptos informáticos con las mecánicas de los videojuegos?
¿Es más fácil motivar a los estudiantes a aprender informática y programación si se familiarizan con los conceptos en un entorno lúdico?
Resultados/objetivos del aprendizaje
Los estudiantes podrán:
Demostrar comprensión de la detección de colisiones y los eventos como conceptos informáticos.
Poner en práctica los conocimientos sobre colisiones, activadores y eventos en el contexto de un juego.
Crear una carrera de obstáculos con desafíos que incorporan el uso de detección de colisiones, eventos y activadores.
Actividades formativas
Introducción a las colisiones y los eventos
En programación, sobre todo de videojuegos, a menudo nos interesan las colisiones que se producen entre objetos. Cuando un objeto colisiona con otra acción, suele producirse un evento. Vamos a fijarnos en el ejemplo de Pac-Man. Si Pac-Man colisiona con una bolita, el jugador recibe puntos. En caso de colisionar con uno de los fantasmas, este pierde una vida. Y si el fantasma es azul por un potenciador, conseguirá puntos al comérselo. Esta sería la idea.
En programación, un evento es una acción que se produce como resultado del usuario u otra fuente, como un clic del ratón (o una colisión). Un controlador de eventos es una rutina que se ocupa del propio evento, lo que permite al programador escribir código que se ejecutará cuando se produzca el evento.
– Fuente: Computer Hope: Event (en inglés)
En este ejemplo de MakeCode Arcade se muestra la programación por bloques de código. El juego consiste en un jugador y un cono de helado. El jugador se mueve por la pantalla tratando de comerse el helado.
El código (debajo) indica que si el jugador se superpone (colisiona) con el helado (comida), se activarán una serie de eventos. En este caso, el jugador recibe un punto (la puntuación cambia en 1), el helado se desplaza a una posición al azar en la zona de juego y el tiempo aumenta 10 segundos, lo que permite al jugador volver a intentar conseguir el cono de helado.
Mira el ejemplo en acción en CollisionEvent de Arcade MakeCode.
Conexión: Matemáticas y programación
Si bien la detección de colisiones puede parecer un proceso sencillo u obvio, ten en cuenta lo siguiente:
Todas las imágenes del ordenador son rectangulares. Si el contenido visible de la imagen no ocupa el rectángulo completo, ¿cómo podemos detectar las colisiones? Ten en cuenta que, en la colisión del ejemplo A, las imágenes colisionan, pero no el personaje y los obstáculos. El resultado esperado que se muestra en el ejemplo B es un concepto más complicado de implementar. La detección de colisiones crea una oportunidad única de explorar aplicaciones de la geometría y la trigonometría.
Actividades
Los estudiantes construirán una carrera de obstáculos en el modo Creativo de Fortnite. La carrera de obstáculos debería incorporar eventos de colisión que activen eventos en el juego.
Consulta la Guía para profesores para conocer las instrucciones paso a paso de la actividad.
Los estudiantes deberán acceder y trabajar con la Guía para estudiantes para crear su propia carrera de obstáculos.
RECURSOS EXTERNOS
Computer Hope: Event definition (en inglés)
Juego de muestra de colisión/evento
Mapeo de estándares
Estándares CSTA para estudiantes
1B-AP-10 Se crean programas con secuencias, eventos, bucles y condiciones.
1B-AP-12 Se modifican, mezclan o incorporan porciones de un programa existente a un trabajo propio para desarrollar algo nuevo o añadir funciones más avanzadas.
1B-AP-15 Se hacen pruebas y se depura un programa o un algoritmo, es decir, se identifican y solucionan sus errores para asegurarnos de que funciona como es debido.
2-AP-10 Se usan diagramas de flujo o pseudocódigo para abordar problemas complejos como algoritmos.
2-AP-13 Se dividen los problemas y los subproblemas por partes para facilitar el diseño, la implementación y la revisión de los programas.
2-AP-17 Se prueban y mejoran los programas sistemáticamente con varios precedentes.
3A-AP-13 Se crean prototipos que usen algoritmos para solucionar problemas computacionales recurriendo al conocimiento previo de los estudiantes, así como a sus intereses personales.
3A-AP-16 Se diseñan y desarrollan elementos computacionales repetidamente a fin de practicar, expresarse uno o abordar una cuestión social con eventos para desencadenar instrucciones.
3A-AP-17 Se dividen los problemas en componentes más pequeños mediante análisis sistemáticos usando constructos, como procedimientos, módulos u objetos.
3A-AP-22 Se diseñan y desarrollan artefactos computacionales en equipo a través de herramientas colaborativas.
CONEXIONES INTERDISCIPLINARIAS EN RELACIÓN CON EL SIGLO XXI
Esta lección aborda áreas relacionadas con la programación y la informática.
Conexiones del siglo XXI:
Pensamiento crítico
Creatividad
Colaboración
Comunicación
Alfabetización tecnológica
Flexibilidad
Liderazgo
Iniciativa
Habilidades sociales
MODIFICACIONES Y ADAPTACIONES
Pueden implementarse adaptaciones y modificaciones según las necesidades de los estudiantes de acuerdo con los programas de educación individualizada, IEP, el plan 504, etc.
Los estudiantes pueden trabajar por equipos para adoptar un enfoque de programación conjunto.
Se puede facilitar un mapa de muestra para que los estudiantes lo descompongan o modifiquen.
Es importante disponer de un mando especial para personas con movilidad reducida en caso de que fuera necesario.