Invitado para el 15 de junio

El 15 de junio tendremos en el salón de clase como invitado a Cristian Caroli, Ingeniero de Computación de la Universidad Simón Bolívar, y co-fundador de Powerdot, desarrolladores web y de juegos. En esta ocasión Cristian estará conversando con nosotros sobre Advergames, juegos hechos para fines publicitarios.

Posted in TERM201122 | Leave a comment

Lecturas para la evaluación 2

Los temas para la evaluación 2, que será el 8 de junio, serán los que hemos visto en clase, en particular sobre la Toma de Decisiones, los Tipos de Diversión y las emociones relacionadas con diversión. Estos temas están resumidos en las siguientes dos lecturas:

Nos vemos el próximo miércoles.

Posted in TERM201122 | Leave a comment

Código de la clase del 18/05/2011: Moroco


A continuación les presento el código completo del juego que comenzamos el miércoles 18/05. Se trata de una versión muy simple de Guitar Hero, donde cada figura representa una tecla que deben presionar cuando esté pasando por el cursor azul. Cuando la figura es un círculo rojo, deben presionar A, y cuando es un cuadrado verde, deben presionar B. El juego indica qué tan bien lo hicieron, y cada figura se rodea con un borde amarillo cuando está sonando.

El código lo pueden descargar a continuación: Moroco - (zip, 113.72 kB, 22 descargas) Los sonidos provienen de http://www.freesound.org.

Posted in TERM201122 | Leave a comment

Ejemplos de Pygame de un curso del Simpson College

He aquí unos ejemplos del curso de Introducción al Computer Science del Simpson College que emplean Pygame: http://cs.simpson.edu/?q=python_pygame_examples. Hay un enlace para descargar todos los ejemplos en un archivo .ZIP.

Posted in Electiva | Leave a comment

Notas de la Evaluación 1

Las notas de la Evaluación 1 ya están publicadas. Tendremos revisión la próxima semana. Pueden consultarlas en esta dirección: Notas.

Posted in TERM201122 | Leave a comment

Código de la clase del 11/05/2011: Asteroids con física

En la clase de hoy vimos una introducción al uso de la librería Pymunk, una librería que conecta a Chipmunk, una librería escrita en C para hacer simulación de física de cuerpos rígidos en 2D de manera rápida y sencilla.

Para instalar Pymunk en Windows basta con descargarse el instalador en .exe o el .msi correspondiente a la versión de Python que usan. En OSX van a requerir descargar la fuente comprimida en un archivo .zip, descomprimirlo, y en el terminal, parados sobre el directorio donde descomprimieron, escribir ‘python setup.py install’.

En primer lugar vimos los ejemplos correspondientes al tutorial SlideAndPinJointsExample que está en el wiki de Pymunk. Los scripts que mostré en clase se pueden descargar en este archivo: Ballsandjoints - (zip, 4.65 kB, 146 descargas)

A continuación mostré un juego que utiliza Pymunk, que armé en una tarde, y por lo tanto tenía algunos detalles sin pulir. Aprovechamos la clase para arreglar algunas cosas:

  1. Que los disparos de la nave no colisionaran entre sí (asignándoles un grupo)
  2. Que los asteroides rotaran correctamente (asignándoles correctamente sus vértices en el espacio) y que desapareciesen al contacto de un disparo (asignando un manejador de colisión)
  3. Que la nave rotase sobre un eje fijo en el espacio, se pudiese mover un poco y que los disparos salieran de su parte frontal.

El código del juego previo a la clase se puede descargar aquí: Asteroids con física - (zip, 211.45 kB, 22 descargas) y el que resultó después de la clase se puede descargar acá: Asteroids después de la clase - (zip, 212.36 kB, 34 descargas)

Al final, hice la mención de dos librerías para interfaces gráficas: OcempGUI y PGU, recomendando la segunda para su proyecto si lo necesitan, y mostré algunos de los ejemplos que trae con el código.

Posted in TERM201122 | Leave a comment

Understanding Games, 4 episodios

A mis estudiantes siempre les presento este curso interactivo llamado Understanding Games, de 4 episodios, donde resume de manera muy entretenida lo que hemos visto en estas semanas sobre el vocabulario crítico de los juegos. A continuación los enlaces:

Les recomiendo encarecidamente que los revisen para que amplíen su conocimiento sobre los juegos.

Posted in TERM201122 | Leave a comment

Código de la clase del 04/05/2011

En la clase del 4 de mayo estuvimos trabajando sobre el código del juego de plataformas que llevamos haciendo desde hace unas semanas. En esta ocasión agregamos animación a nuestro personaje, cortando los sprites de un spritesheet y poniéndolos en imágenes separadas de tamaño fijo (30×34). La animación depende de lo que esté haciendo el personaje, y tiene animación de correr hacia la derecha y hacia la izquierda.

En otro script doblamos el tamaño de la pantalla haciendo uso de la función pygame.transform.scale2x().

El código se puede conseguir en el siguiente enlace: Tile3.zip - (zip, 502.23 kB, Sin descargas)

La tarea para la próxima clase sería:

1) Conseguimos que la clase Rect para establecer la posición del personaje trunca los valores en x e y que se le asignan. Esto es lo que causa que el personaje sea un poco más lento yendo a la derecha que a la izquierda, y que al pararse se deslice bien hacia la izquierda mas no hacia la derecha. Restar 0.05 a 140 y truncar da como resultado 139, mientras que sumar 0.05 a 140 y truncar da como resultado 140. Averiguar cómo corregir ese código.

2) Agregar más estados de animación, como saltar y caer. En el zip está incluido un spritesheet con fines educativos.

 

Posted in TERM201122 | Leave a comment

Día Python este 7 de mayo de 2011

Para los interesados en el lenguaje de programación y lo que puede ofrecer, un día dedicado a charlas. Estaré dando una charla sobre PyGame, muy probablemente cubra lo mismo que hemos cubierto en las clases :-) .

Posted in TERM201122 | Leave a comment

Código de la clase del 27/04/2011

En esta clase, aparte de conversar sobre la mecánica, dinámica y estética, estuvimos elaborando sobre el código del tilemap que habíamos hecho en la clase del 27 de abril. Esta vez reemplazamos el arreglo que especifica los tipos de bloques en el tilemap por la carga de una imagen PNG que contiene una información similar, a pedido de la clase para facilitar la edición de niveles. También corregimos los problemas de colisión que presentaba el código de esa clase, y definimos una forma de hacer scrolling dentro de un nivel que sea más grande que la pantalla. El código en el siguiente enlace: Tilemap con colision corregida y scrolling - (zip, 9.92 kB, 22 descargas)

Posted in TERM201122 | Leave a comment