{"id":5816,"date":"2025-05-19T08:00:32","date_gmt":"2025-05-19T08:00:32","guid":{"rendered":"https:\/\/canaltic.com\/blog\/?p=5816"},"modified":"2025-05-19T09:17:40","modified_gmt":"2025-05-19T09:17:40","slug":"como-disenar-videojuegos-educativos-con-chatgpt","status":"publish","type":"post","link":"https:\/\/canaltic.com\/blog\/?p=5816","title":{"rendered":"C\u00f3mo dise\u00f1ar videojuegos educativos con ChatGPT"},"content":{"rendered":"<p class=\"p1\">ChatGPT es un asistente muy interesante para generar c\u00f3digo en distintos lenguajes de programaci\u00f3n (HTML, Javascript, Java, Python \u2026) a partir de un prompt que describa qu\u00e9 debe hacer ese c\u00f3digo. No es necesario saber programar. En su defecto la dificultad se basa en la habilidad para describir el comportamiento del programa de forma detallada mediante lenguaje natural.<\/p>\n<p class=\"p1\">En este art\u00edculo vamos a ejemplificar c\u00f3mo podemos crear un videojuego educativo usando ChatGPT. Para ello se propone utilizar <a href=\"https:\/\/p5js.org\/\" target=\"_blank\" rel=\"noopener\">p5.js<\/a>. Se trata de una biblioteca de Javascript, inspirada en el lenguaje Processing, que facilita el dise\u00f1o de elementos visuales interactivos en el navegador web. El c\u00f3digo generado se copiar\u00e1 y pegar\u00e1 en nuestra cuenta gratuita de <a href=\"http:\/\/Openprocessing.org\">Openprocessing.org<\/a> para disponer de una interacci\u00f3n jugable y accesible por nuestro alumnado.<\/p>\n<h2 class=\"p1\">Paso 0. Definir las caracter\u00edsticas de la actividad<\/h2>\n<p class=\"p1\">Vamos a tratar de crear un juego para repasar las tablas de multiplicar con alumnado de 4\u00ba-6\u00ba Primaria. La especificaci\u00f3n de funciones del juego ser\u00e1:<\/p>\n<ul>\n<li class=\"p1\"><strong>Gr\u00e1ficos personalizados: <\/strong><em>nave.png<\/em>, nave del jugador (parte izquierda de la pantalla) y <em>bg.jpg<\/em>, fondo del juego.<\/li>\n<li class=\"p1\">En la parte inferior se propone una <strong>multiplicaci\u00f3n<\/strong> (1 cifra \u00d7 1 cifra)<\/li>\n<li class=\"p1\">En la parte derecha aparecen <strong>6 posibles resultados<\/strong>: se mueven de arriba a abajo y de abajo hacia arriba. Solo uno es la respuesta correcta.<\/li>\n<li class=\"p1\">Si se impacta el n\u00famero <strong>correcto<\/strong>: se <strong>suma<\/strong> 1 punto.<\/li>\n<li class=\"p1\">Si se impacta un n\u00famero <strong>incorrecto<\/strong>: se <strong>resta<\/strong> 1 punto.<\/li>\n<li class=\"p1\">Tras cada <strong>intento<\/strong> se muestra una <strong>nueva operaci\u00f3n<\/strong> y sus posibles resultados.<\/li>\n<li class=\"p1\"><strong>Temporizador<\/strong> regresivo desde 120 segundos.<\/li>\n<li class=\"p1\"><strong>Marcador<\/strong> de puntos<\/li>\n<li class=\"p1\"><strong>Controles<\/strong>: flechas arriba y abajo para mover la nave. Barra espaciadora para disparar.<\/li>\n<\/ul>\n<h2 class=\"p1\">Paso 1. Recopilar los elementos visuales<\/h2>\n<p class=\"p1\">Busca en Google la <b>imagen de fondo<\/b>. Se recomienda un formato JPG por su reducido peso de archivo y un tama\u00f1o de imagen aproximado de 800&#215;600 p\u00edxeles para cubrir adecuadamente el escenario. En este caso hemos elegido un fondo negro con estrellas que se mover\u00e1 en scroll infinito de derecha a izquierda. En este caso la imagen de fondo tendr\u00e1 como nombre de archivo <em>bg.jpg<\/em><\/p>\n<p class=\"p1\">Localiza tambi\u00e9n la <b>imagen de la nave<\/b>. El archivo tendr\u00e1 formato PNG con fondo transparente para una buena integraci\u00f3n. Si esta imagen no dispone de fondo transparente puedes utilizar herramientas en l\u00ednea para eliminar el fondo:<a href=\"https:\/\/www.pixelcut.ai\/es\/quitar-fondo-imagen\/fondo-transparente\" target=\"_blank\" rel=\"noopener\"> PixelCut<\/a> , <a href=\"https:\/\/www.remove.bg\/es\" target=\"_blank\" rel=\"noopener\">RemoveBG<\/a> , <a href=\"https:\/\/www.adobe.com\/es\/express\/feature\/image\/remove-background\/transparent\" target=\"_blank\" rel=\"noopener\">Adobe Express<\/a> \u00a0o <a href=\"https:\/\/www.photoroom.com\/es\/herramientas\/fondo-transparente\" target=\"_blank\" rel=\"noopener\">Photoroom<\/a>. Tambi\u00e9n es posible usar el software <a href=\"https:\/\/www.gimp.org\/\" target=\"_blank\" rel=\"noopener\">GIMP<\/a> para <a href=\"https:\/\/filmora.wondershare.es\/video-editing\/gimp-transparent-background-png.html\" target=\"_blank\" rel=\"noopener\">convertir el fondo en transparente<\/a> . La imagen de la nave tendr\u00e1 como nombre de archivo <em>nave.png<\/em>.<\/p>\n<p class=\"p1\">En este caso se proporcionan las dos im\u00e1genes utilizadas para facilitar el seguimiento del tutorial: <a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/activosVideojuego.zip\" target=\"_blank\" rel=\"noopener\">activosVideojuego.zip (40 KB)<\/a><\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/bg.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5818\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/bg-300x199.jpg\" alt=\"\" width=\"267\" height=\"177\" srcset=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/bg-300x199.jpg 300w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/bg-768x509.jpg 768w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/bg.jpg 900w\" sizes=\"auto, (max-width: 267px) 100vw, 267px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/nave.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-5819\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/nave.png\" alt=\"\" width=\"75\" height=\"75\" \/><\/a><\/p>\n<p class=\"p1\">Otra posibilidad es generar estas im\u00e1genes usando Copilot, ChatGPT \u2026 mediante un prompt descriptivo de las mismas.<\/p>\n<h2 class=\"p1\">Paso 2. Generar el c\u00f3digo en ChatGPT<\/h2>\n<p class=\"p1\">Ahora vamos a generar el c\u00f3digo del juego. Introduce en ChatGPT el siguiente prompt:<\/p>\n<p class=\"p1\"><span style=\"color: #ff0000;\"><em>Me gustar\u00eda que generes el c\u00f3digo de un juego educativo en lenguaje p5.js. Utiliza estos gr\u00e1ficos: \u201cnave.png\u201d para mi nave y \u201cbg.jpg\u201d para el fondo del juego. El fondo se mover\u00e1 de derecha a izquierda en un scroll infinito. En la parte inferior se propone una operaci\u00f3n de multiplicar un n\u00famero de una cifra por otro n\u00famero de una cifra. En la parte derecha se muestran en movimiento de arriba hacia abajo y de abajo hacia arriba, 6 posibles n\u00fameros y solamente uno de ellos es la soluci\u00f3n de la operaci\u00f3n. Si el jugador dispara e impacta con el n\u00famero correcto se sumar\u00e1 un punto al contador de aciertos. Si derriba un n\u00famero incorrecto se restar\u00e1 un punto. En cualquier de ambos casos se propondr\u00e1 una nueva operaci\u00f3n y otros 6 posibles n\u00fameros. Se muestra un contador de tiempo hacia atr\u00e1s de 120 segundos y un marcador de los puntos conseguidos. Mi nave se controlar\u00e1 con las teclas de flecha arriba y abajo y disparo con la barra espaciadora. Esta nave se mostrar\u00e1 completa en la parte izquierda de la pantalla.<\/em><\/span><\/p>\n<p class=\"p1\">Este prompt es una propuesta susceptible de modificaci\u00f3n en funci\u00f3n de la personalizaci\u00f3n de las condiciones del juego.<\/p>\n<p class=\"p1\">ChatGPT nos devolver\u00e1 un c\u00f3digo similar al siguiente <a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/codigoProgramaTablasMultiplicar.zip\" target=\"_blank\" rel=\"noopener\">codigoProgramaTablasMultiplicar.zip<\/a>\u00a0y pulsaremos en el bot\u00f3n <b>Copiar.<\/b><\/p>\n<h2 class=\"p1\">Paso 3. Crear el videojuego<\/h2>\n<p class=\"p1\">En este art\u00edculo se propone utilizar <a href=\"https:\/\/openprocessing.org\/\" target=\"_blank\" rel=\"noopener\">OpenProcessing<\/a> por su sencillez y prestaciones. Otro compilador para este lenguaje podr\u00eda ser <a href=\"https:\/\/editor.p5js.org\/\" target=\"_blank\" rel=\"noopener\">p5js.org<\/a><\/p>\n<p class=\"p1\">Es necesario registrarse como usuario en esta plataforma. A continuaci\u00f3n se seguir\u00e1n los siguientes pasos:<\/p>\n<p>1. Clic en el bot\u00f3n <b>CREATE A SKETCH<\/b><\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd01.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5822\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd01.jpg\" alt=\"\" width=\"110\" height=\"42\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>2. En el panel izquierda pega el c\u00f3digo proporcionado por ChatGPT.<\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd02-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5823\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd02-1024x653.jpg\" alt=\"\" width=\"602\" height=\"384\" srcset=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd02-1024x653.jpg 1024w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd02-300x191.jpg 300w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd02-768x490.jpg 768w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd02-1536x980.jpg 1536w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd02-2048x1307.jpg 2048w\" sizes=\"auto, (max-width: 602px) 100vw, 602px\" \/><\/a><\/p>\n<p>3. Clic en el bot\u00f3n <b>SAVE <\/b>para guardar.<\/p>\n<p>4. Completa los metadatos del juego introduciendo <b>T\u00edtulo, Imagen en miniatura<\/b> (thumbnail), <b>Licencia de uso<\/b> \u2026 y pulsa en <b>SUBMIT. <\/b><\/p>\n<p>5. Regresa al editor de c\u00f3digo pulsando en el bot\u00f3n <b>C\u00f3digo.<\/b><\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd03.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5824\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd03.jpg\" alt=\"\" width=\"237\" height=\"56\" srcset=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd03.jpg 440w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd03-300x71.jpg 300w\" sizes=\"auto, (max-width: 237px) 100vw, 237px\" \/><\/a><\/p>\n<p>6. En el panel derecho haz clic en la pesta\u00f1a <b>FILES <\/b>para arrastrar y soltar la imagen de fondo bg.jpg y la imagen de la nave nave.png. De esta forma los activos gr\u00e1ficos se subir\u00e1n al servidor.<\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd04.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5825\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd04.jpg\" alt=\"\" width=\"255\" height=\"211\" srcset=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd04.jpg 570w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd04-300x248.jpg 300w\" sizes=\"auto, (max-width: 255px) 100vw, 255px\" \/><\/a><\/p>\n<p>7. Prueba el v\u00eddeojuego pulsando en el bot\u00f3n <b>play.<\/b><\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd05.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5826\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd05.jpg\" alt=\"\" width=\"243\" height=\"63\" srcset=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd05.jpg 386w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd05-300x78.jpg 300w\" sizes=\"auto, (max-width: 243px) 100vw, 243px\" \/><\/a><\/p>\n<p>8. IMPORTANTE: antes de comenzar a jugar haz clic sobre el escenario del juego para situar el foco sobre \u00e9l. A continuaci\u00f3n podr\u00e1s jugar usando las teclas de flechas y la barra espaciadora.<\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd06.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5827\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd06-1024x779.jpg\" alt=\"\" width=\"601\" height=\"457\" srcset=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd06-1024x779.jpg 1024w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd06-300x228.jpg 300w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd06-768x584.jpg 768w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd06-1536x1168.jpg 1536w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd06.jpg 1596w\" sizes=\"auto, (max-width: 601px) 100vw, 601px\" \/><\/a><\/p>\n<h2 class=\"p1\">Paso 4. Compartir la URL del videojuego<\/h2>\n<p>1. Pulsa en el bot\u00f3n <b>Compartir <\/b>situado en la esquina superior derecha.<\/p>\n<p><a href=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd07.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-5828\" src=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd07.jpg\" alt=\"\" width=\"287\" height=\"325\" srcset=\"https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd07.jpg 694w, https:\/\/canaltic.com\/blog\/wp-content\/uploads\/2025\/05\/vd07-265x300.jpg 265w\" sizes=\"auto, (max-width: 287px) 100vw, 287px\" \/><\/a><\/p>\n<p>2. En la casilla <b>EMBED <\/b>dispones del c\u00f3digo para insertar esa animaci\u00f3n en tu blog. Otra posibilidad es copiar la URL que viene en este c\u00f3digo para disponer de un enlace de acceso directo a ese videojuego.<\/p>\n<pre>&lt;iframe src=\"<strong><span style=\"color: #ff0000;\">https:\/\/openprocessing.org\/sketch\/2652005<\/span><\/strong>\/embed\/\" width=\"800\" height=\"650\"&gt;&lt;\/iframe&gt;<\/pre>\n<p class=\"p1\">3. Env\u00eda la URL a tu alumnado para que pueda acceder al videojuego. No es necesario que se registren en Openprocessing.<span class=\"Apple-converted-space\">\u00a0 <\/span>Ejemplo: <a href=\"https:\/\/openprocessing.org\/sketch\/2652005\" target=\"_blank\" rel=\"noopener\">Tablas de multiplicar<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>ChatGPT es un asistente muy interesante para generar c\u00f3digo en distintos lenguajes de programaci\u00f3n (HTML, Javascript, Java, Python \u2026) a partir de un prompt que describa qu\u00e9 debe hacer ese c\u00f3digo. No es necesario saber programar. En su defecto la dificultad se basa en la habilidad para describir el comportamiento del programa de forma detallada [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5841,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[137,11],"tags":[83,145,38],"class_list":["post-5816","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-inteligencia-artificial","category-recursos","tag-gamificacion","tag-inteligencia-artificial","tag-recursos"],"_links":{"self":[{"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/5816","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5816"}],"version-history":[{"count":13,"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/5816\/revisions"}],"predecessor-version":[{"id":5843,"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/5816\/revisions\/5843"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=\/wp\/v2\/media\/5841"}],"wp:attachment":[{"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5816"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5816"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/canaltic.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5816"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}