AS3 webcam augmented reality AR Card Game

AS3 webcam y Augmented Reality

Hace poco realize un proyecto para una clase, no es la gran cosa por que solo fue eso, un proyecto para una clase, pero fue el pretexto perfecto para meterme de una vez por todas con AR.

La idea fue lograr la funcionalidad de un juego de cartas usando AR, particularmente esos juegos de ROL con cartas como magic o yugioh (tal vez recuerden la serie y como los monstruos salian holograficamente de las cartas)

Basicamente fue crear cartas de tamaño estandar e imprimirles un patron. Y detectar si la carta se encontraba horizontalmente o verticalmente en la pantalla. Esto fue solo un experimento y en su mayoria fue con fines de exploracion, sin embargo considero que este concepto tiene potencial en juegos por internet.

Carta en modo de ataque

Carta en modo de defensa

Mas cartas

Download

Baja el codigo del proyecto si quieres jugar con el o experimentar distintas cosas. Usa FLARManager y PaperVision2D

ArCards.rar (4.53Mb)

Compra el ps3 eye

Para este proyecto compré la camara del ps3, el ps3 eye. Si quieres realizar cosas con multitouch o AR realmente ocupas comprarla.

Haz click aquí para mas información sobre el PlayStation Eye

Los drivers los puedes encontrar aqui:
CL-Eye Platform Drivers

Chrome Flash Embed Fix

Si usas chrome y haz tenido problemas para ver ciertos flash en algunas paginas especificas lo mas seguro es que el error sea de lo autores de la pagina que no han embeddeado el flash adecuadamente.

Muchos webmasters ven que el flash corre en IE y piensan que lo hicieron bien, pero en browsers de verdad no correra, por eso, con el afan de corregir ese error y permitir al mismo tiempo a todos poder seguir viendo los videos/animaciones hice un user script para chrome que corrige ese problema. La solución es un quick and dirty fix pero funciona.

Un ejemplo de una pagina que no me funcionaba: http://www.explosm.net/comics/1990/

Que hace

Busca “embed” tags que no esten dentro de algun tag “object”, que es muy probable sea codigo incompleto, e intenta corregirlo reconstruyendolo por completo.

Instalarlo

Recuerda que este fix es solo para chrome, si usas chrome da click aqui: Instalar
Eso deberia instalarlo

Desinstalarlo

Entra en la lista de extenesiones de chrome,  busca flashfix y presiona desinstalar.

Conclusión

Con este script pude ver el video que no podía ver, y es probable que no funcione en todas las paginas, como dije, es un solución rápida y bastante sucia, así que si intentas usarlo y te causa problemas simplemente desinstatalo y deja un comentario con el link de la pagina a la que intentaste entrar.

Solo lo probé con la versión de chrome que uso, que es la 4.1.2, no es seguro que este problema existirá en versiones futuras de chrome.

Plasma Ball Mod

El mod consiste en 2 cosas, una, convertir un USB Plasma Ball para que funcione con baterias, y la segunda es hacer que solo se encienda al levantarla.

More »

Experimento: Ventanas y Física

Este experimento consiste en esferas que caen con física, pero no solo eso, si mueves la ventana las esferas se mueven como si estuvieran dentro de una caja. La idea aquí era experimentar un poco con la interacción entre un juego y su ventana, tal y como lo hace un iphone con los acelerometros.
More »

Maneras de encender la luz

Hace ya algunos años tenia la idea de que prender la luz usando el switch de la pared no tenía sentido, si las televisiones podían ser controlados remotamente, la luz con mayor razón debería hacerlo. Así que hice algunos métodos de controlar la luz sin tocar el switch, y en algunos incluso sin usar las manos. : )

A continuación una lista de 12 métodos que realice en aquella época, mas 2 nuevos (sin vídeo) que hice después.

Nota: Son 12 vídeos, así que la página puede cargar lento.

Método 0

Con un switch


Método 1

Con un icono en la computadora


More »

Luz de la habitación como despertador

A veces ignoro el despertador y pienso que con “5 minutitos más” bastará, pero como a mi cuarto no entra nada de luz me quedo dormido y despierto mucho después. Por eso, decidí que la mejor manera para evitar ese problema era prender la luz automáticamente a la hora que me fuese a despertar, así, aunque ignore el despertador la luz seguirá ahí para recordarme que debo levantarme.


Ese pequeño circuito solo ocupa 5V a unos cuantos miliamperes para permitir pasar o no pasar la corriente de 120VAC, y lo que es mejor, esta aislado opticamente por lo cual podemos controlarlo directamente con el puerto paralelo de la computadora. Esto significa, luz controlada por computadora. Ese hueco es donde estaba el switch, y obviamente planeo conectarle un switch en paralelo para poder controlar manualmente la luz, a como esta ahorita, si la computadora se apaga la luz también se apagaría.
More »

ASCII Random Infinito

Introducción

En mi antiguo blog empece a tener mucho spam, particularmente tenía bots que entraban a la pagina y posteaban random. Eso me molestaba bastante, así que trate de idear una manera creativa de detenerlos, y no solo detenerlos sino también entretenerlos, infinitamente… Lo que se me ocurrió fue regalarles ascii infinito en vez de mi pagina, de esa manera el bot se mantendría de manera indefinida esperando a que la pagina terminara de cargar, pero jamas lo haría, por que es ASCII infinito : ).

Demo

Para no desperdiciar bandwidth con bots, silenciosamente los redirigía a esta dirección:
http://emiliobool.110mb.com/ (recomiendo entrar usando firefox)
More »

Conectar cualquier cámara con flash

El problema

Flash Player tiene soporte para conectar webcams por lo cual podemos hacer uso de ella mediante AS3. Sin embargo, no todas las cámaras funcionan correctamente, y en algunos casos provoca que flash player y el explorador completo se cierren.

La solución

Utilizar otro software que funcione como proxy y que sea el quien envié las imágenes al FlashPlayer.

More »

AS3 WebCam Still Shot

Introducción

Hay varios tutoriales por ahí de como guardar imágenes de una webcam en flash cuando se detecta movimiento, sin embargo, no hay ninguno (que yo haya encontrado) con el cual tomar webcam shots únicamente cuando se deja de detectar movimiento.

El Problema

Recientemente ocupaba guardar imágenes de una cámara conectada a flash (el como hacerla pasar como webcam sera tema de otro post). Mas específicamente la cámara era una cámara intraoral, la cual es una cámara para poder inspeccionar el interior de una boca humana, inspeccionar dientes, etc. La cámara contaba con un botón de freeze, sin embargo, la cámara únicamente manda vídeo constante, tal y lo que se vería en una pantalla es lo que manda a la computadora, y querer guardar imagen por imagen resultaría tedioso ya que habría que ir hasta la computadora y guardar.

La solución

Aprovechar el botón de freeze.
La idea es simple, si la imagen se mantiene congelada guardas la imagen automáticamente solo una vez, si esta en movimiento la ignoras.
More »

GLaDOS Still Alive

Como tributo al juego Portal de Valve, hice esta replica del ending “still alive”, lo que significa que si no haz jugado el juego mejor no lo veas y ve a terminar el juego : ).

Pero si ya lo jugaste y terminaste es muy probable que te gusto el ending tanto como a mi, asi que si no quieres volver a pasarlo para poder verlo de nuevo solo haz click en la imagen:

Especificaciones

Esta hecho con javascript y html, y el audio sincronizado en un swf. Algo interesante de la forma en que lo hice es que el audio es un streaming así que se baja a como lo vas viendo y no tienes que esperar mucho tiempo para que cargue.
Ademas, eso permite que el texto este asignado a ciertas partes de la canción lo que hace que no se desincronize.

GLaDOS is still alive : )