Jesús Bosch

XNA, programación gráfica y desarrollo de videojuegos por un Microsoft Student Partner
Despedida del blog

Ya hace tiempo que no escribo mucho por aquí. De hecho, desde que creé la empresa Plunge Interactive dejé de hacerlo, por lo menos en lo que a artículos técnicos se refiere.

Crear una empresa, y encargarse de hacerla funcionar es complicado, y además, la dedicación a Plunge cada vez me guía por caminos más lejanos a XNA. A pesar de ello, quiero seguir escribiendo, y voy a hacerlo, aunque no en Geeks. Crearé un nuevo blog de desarrollo de videojuegos, pero no se centrará en XNA, sino en otras tecnologías, y en especial Cocos2D-X. Tampoco me parece lógico hablar en geeks.ms de una tecnología no microsoftiana, y más cuando voy a hacerlo en inglés a partir de ahora, y esta es una comunidad en castellano, muy especializada en tecnologías Microsoft.

Cocos2D-X es un completo framework de desarrollo de videojuegos open source multiplataforma con lenguaje C++. Se basa en su hermano mayor Cocos2D de iPhone, que en mi opinión es en parte el responsable del éxito de muchos de los juegos de esa plataforma -de hecho Zynga pareció darse cuenta y fichó al equipo que lo creó-. Apuestan por él Google y Nokia, entre otras grandes empresas. De hecho, hay incluso un port a C# compatible con Windows Phone... (no lo he usado, imagino que tirará de XNA). En Plunge esta tecnología se esta convirtiendo en algo muy importante. Podéis encontrar más información al respecto en mi nuevo blog.

En cuanto a XNA, ahora mismo estoy trabajando en un proyecto relativamente importante para un cliente en Plunge Interactive, que saldrá publicado más adelante en algún momento de este año, seguramente en verano. Provablemente sea mi último proyecto en esta tecnología, ya que parece que Microsoft va a restarle mucha importancia en el nuevo Windows 8, y por otro lado en Plunge Interactive nos estamos especializando en tecnologías más multiplataforma.

 

Ha sido un placer formar parte de esta comunidad (ostias, es que mi primer post aquí fue en 2009!), además de "ser el raro" (porque cómo sabéis la mayor parte de blogs en geeks hablan de gestión y no de apps con gráficos en tiempo real cómo los juegos), y quien sabe... quizá en unos años el destino vuelva a traerme. De momento, os dejo la URL del nuevo blog: http://www.jesusbosch.com, y sabéis que estoy en twitter para lo que haga falta @jboschaiguade

Hasta pronto!

Posted: 9/6/2012 12:23 por Jesús Bosch | con 1 comment(s)
Archivado en:
Curso de Videojuegos 2012

En Plunge Interactive volvemos a realizar el Curso de Videojuegos que venimos organizando cada cierto tiempo. El objetivo principal del curso es formar a la vez que identificamos desarrolladores con talento con la posibilidad de incorporarlos a nuestra empresa. En esta ocasión ofrecemos varias novedades en el curso, destacando:

  • Precio más bajo.
  • Teléfono Android libre de regalo a los asistentes (ver condiciones específicas).
  • Concentración del curso en una semana del 9 al 14 de Júlio.
  • Programa que da una visión más ámplia de los paradigmas de desarrollo de videojuegos, cubriendo un gran número de plataformas.
  • Se requiere tener conocimientos mínimos de programación orientada a objetos y C++ para seguir el curso con garantías.

Entre los profesores hay alguna personalidad ampliamente reconocida en el sector como Rubén Lopez (Spear en XNA Community), director de I+D en Novarama. El programa del curso es el siguiente:

  1. Conceptos básicos de programación de videojuegos
    1. Cicle de vida, bucle principal
    2. Movimiento por frames
    3. Detección de colisiones
    4. Gestión de pantallas
    5. Máquinas de estados
  2. Programación 2D con HTML5
    1. Introducción a HTML5 y JavaScript
    2. Programación sobre el canvas
    3. Impact JS Game Engine
    4. Ejemplo práctico: space invaders
    5. Ejemplo práctico: carrera de obstáculos
    6. Otros ejemplos:
      1. Objetos del juego
      2. Animación de personajes
      3. Mapa de durezas
      4. Test de profundidad
  3. Programación 2D con XNA y MONO
    1. Implementación del ciclo de vida del juego
    2. Estructura de clases del framework
    3. Ejemplo práctico: asteroids
    4. Deploy sobre Android / iPhone / Windows Phone
  4. Programación 3D con OpenGL
    1. Introducción a OpenGL
    2. Carga de texturas
    3. Renderizado de mallas
    4. Input
    5. Demo juego de naves
    6. Ejemplos de shaders

 

Recordad que el curso se realiza de forma presencial en Lleida. Para más información, podéis dirijiros a info@plungeinteractive.com

Posted: 5/6/2012 17:03 por Jesús Bosch | con 2 comment(s)
Archivado en:
[XNA-WP7] Un juego que no os dejará indiferentes...

Hemos visto muchas formas de matar un zombie... con motosierras, a martillazos, a base de plomo, hachazos... de todo. Lo que nunca habíamos visto en WP7 es matar Zombies a base de... pedos! Así es xD En Plunge Interactive hemos estado trabajando últimamente en un juego cargadísimo de humor, que además ya ha tenido bastante éxito en su versión para iPhone. En este juego podrás luchar contra la versión zombie de personajes como Alfred Hitchcock, el Papa, Michael Jackson y Hitler entre otros... La fecha de lanzamiento está estimada para mitades de febrero!

Podéis ver el estado de desarrollo del juego aquí:

Algunos facts curiosos:

  • El código actualmente alcanza las 4.786 líneas de código.
  • Sólo el content, sin compilar, alcanza los 23mb, compilado... no váis a querer saberlo: 193mb!
  • El XAP ocupa actualmente 39mb!
  • El juego contiene 770 sprites y animaciones!
  • La banda sonora se compone de 8 canciones originales
  • Hay que matar un unicornio zombie

Ah, y feliz año a tod@s!

PhoneGap para WP7 con Visual Studio 2010

Cómo muchos de vosotros ya sabéis, PhoneGap es una fantástica herramienta que permite que nuestras apps/juegos basados en HTML5 puedan correr indistintamente en distintas plataformas móviles de forma nativa. Las plataformas soportadas son varias, pero las que tienen un soporte completo son Android, iOS, y recientemente Windows Phone (hasta hace poco sólo ofrecía un soporte parcial).

Esto pues, es una gran noticia para los desarrolladores, ya que haciendo el esfuerzo de desarrollo una vez, podemos publicar nuestra app en distintos markets y hacer que funcione en varios móviles. La experiencia me dice que esta tecnología no es útil para cualquier tipo de proyecto, pero sí que nos puede resultar de interés en muchas ocasiones. Es importante mencionar que PhoneGap se basa en HTML5, Javascript y CSS3, por lo que no es necesario conocer ningún lenguaje de programación específico de una plataforma concreta.

Empezar a trabajar con PhoneGap para Windows Phone es sencillo. No obstante, por algun motivo a mí el getting started de la página oficial no me ha funcionado -no he podido instalar el template de la forma en la que se indica en dicha web-. Por si álguien tiene el mismo problema, he encontrado unas instrucciones válidas de instalación en este enlace: http://windowsphonerocks.com/Developer/DeveloperArticles/tabid/64/Article/305/windows-phone-and-phonegap-article-2-installing-phonegap-and-getting-started.aspx

 

 

Nueva edición de los cursos de Diseño y Programación de Videojuegos en Lleida

Tras el éxito de la primera edición de los cursos de diseño y programación de videojuegos, en que se vió básicamente la creación de juegos 2D, llega la continuación de los cursos, en que el aprendizaje se basa en el desarrollo de videojuegos 3D multijugador.

Como siempre, destaca en el curso la elevada calidad docente. En esta ocasión tendremos como profesores a Rubén López (cofundador de Novarama) y a Arturo Galbete (trabajó también en Novarama y actualmente freelance). Por otro lado el objetivo final del curso (aunque opcional), es la realización de un videojuego 3D multijugador completamente funcional, con la colaboración de otros alumnos ya sea del curso de diseño o de programación.

La formación se realizará de forma presencial en el Parque Científico y Tecnológico de Lleida, mediante la organización de Plunge Interactive, y los cursos comenzarán el próximo 17 de octubre.

Toda la información puede ser consultada en este apartado de la web de Plunge Interactive: www.plungeinteractive.com/videojocs

Posted: 23/9/2011 13:40 por Jesús Bosch | con 1 comment(s)
Archivado en: ,
Nuevo juego XNA para Windows Phone 7: Kubik Adventures

Por fin! tras 400 horas de trabajo hemos lanzado el Kubik Adventures! Un adictivo juego de puzzles que te permite jugar con uno de los 3 personajes disponibles, en una aventura que te trasladará a 5 mundos distintos a lo largo de 25 niveles! El juego no sólo permite mover piezas con la pantalla táctil, además puedes alterar la gravedad mediante el acelerómetro, realizando múltiples combos que llenarán tu pantalla de espectaculares explosiones. Otro de los aspectos curiosos del juego es que los niveles proponen retos distintos, por ejemplo: conseguir un determinado número de puntos, eliminar una cantidad de mónstruos o recoger distintos tipos de tesoros, o lo más difícil... sobrevivir durante un tiempo determinado en una vertiginosa cuenta atrás!

El juego ha sido publicado esta misma madrugada en la plataforma Windows Phone 7, e increiblemente al cabo de unos pocos minutos ya podíamos encontrar los primeros reviews en internet! Por ejemplo en mobilitydigest resaltan el elevado nivel de cuidado en todos los detalles, y se aventuran a prever que el juego será un HIT!

Ah, el juego puede ser descargado aquí (trial gratis con varios niveles jugables): http://wp7applist.com/en-US/app/30611/kubik-adventures

Lo mejor será que os deje con algunos vídeos del juego...

Presentación de juegos XNA en la Universitat de Lleida

Algunos ya sabréis que hace unos meses lanzamos la primera edición del Curso básico de Programación de Videojuegos y el Curso básico de Diseño de Videojuegos en Plunge Interactive, de 40 horas de duración. Pues bien, los cursos han finalizado, y es hora de mostrar el trabajo de los alumnos! En concreto han unido sus esfuerzos los alumnos del curso de diseño y los del curso de programación, para producir un buen número de proyectos. Estos proyectos serán presentados en la Universitat de Lleida, más concretamente en la facultad politécnica, en la "Sala de Graus" (3.02) a las 19:30 del próximo viernes 16 de septiembre (la asistencia es libre).

El caso es que puedo decir que me siento orgulloso del trabajo realizado por los alumnos. En un curso de sólo 40 horas, de los cuales algunos no habían programado en su vida, y otros están justamente en el primer curso de informática de la universidad, los alumnos han sido capazes de organizarse y crear juegos que no están nada mal, para distintas plataformas: XBOX 360, Windows PC y Windows Phone 7.

Lo cierto es que los trabajos son muy creativos y variados. Algunos equipos han hecho desde un RPG con un motor própio, pasando por juegos de disparos, o un juego de lucha en el que puedes lanzar a tu adversario todo tipo de objetos (por ejemplo un gato o una vaca...). También hay un juego en el que un campesino debe limpiar sus tierras de los sucios aliens, y para ello contará con increibles armas, destacando un espectacular y doloroso lanzallamas. Otro de los juegos destacados es Jordi Gordi, en el que el protagonista es un niño que debe comer fruta sana, para mantener controlado su nivel de calorías (que para rebajarlo puede usar una bicicleta y hacer ejercicio!). En resumen, un montón de juegos y para mi un resultado espectacular!

Si queréis más información de los cursos, o apuntaros a la próxima edición (en breve comenzarán los cursos avanzados de programación y diseño 3D), podéis seguirnos en www.plungeinteractive.com y/o www.facebook.com/plungeinteractive y @plungeint

[WP7] Aplicación publicada: Metro Madrid

Este fin de semana hemos publicado la app "Metro Madrid". Como su nombre indica es una guía de metro de la capital española. Me sorprendió que no hubiera ninguna app en condiciones de este estilo en el marketplace/apphub, así que nos pusimos manos a la obra. La app tiene dos sistemas de mapas, uno offline, para poder consultar el plano del metro sin necesidad de conexión a Internet, y otro online, basado en un mapa de Bing, sobre el que se "pintan" las estaciones y las conexiones entre cada una de ella, así como la posición del usuario del teléfono respecto estas, de forma que es muy fácil encontrar una ruta a la estación más cercana. Además de eso tiene un sistema de optimización de caminos basado en una modificación del algoritmo A*, que te permite encontrar la ruta más rápida optimizada, teniendo en cuenta tanto la cantidad de paradas entre origen y destino, como la penaliación que suponen los transbordos.

Para verlo más claro, os dejo con algunos screenshots y un vídeo de la app:

 

  

  

Realizadas conferencias de Videojuegos con Novarama y BeautiFun Games

El pasado jueves 28 de julio se celebraron en el auditorio Joan Oró del Parque Científico y Tecnológico de Lleida varias conferencias en el marco del Curso de Diseño y Programación de Videojuegos organizado por Plunge Interactive.

Miembros de la Universitat de Lleida (Escuela Politécnica Superior), colaboradores del curso, presentaron las conferencias ante más de 70 personas.

Posteriormente inició su “masterclass” Rubén López, de la empresa Novarama Technologies -una de las empresas españolas líderes en desarrollo de videojuegos, y de primer nivel mundial-, explicando cómo desarrollan los videojuegos en su empresa, con un buen número de detalles de los juegos que han desarrollado, y principalmente InvizImals. También mostró un vídeo en primícia del próximo juego en el que están trabajando.

Posteriormente, Pol Urós, de BeautiFun Games introdujo las plataformas de desarrollo de videojuegos Unity y UDK. Comparó ambos frameworks y tras ver una breve introducción a cada uno de ellos vimos para qué situaciones es más útil cada una de las plataformas.

Parte de algunas de las ponencias pueden ser visualizadas en YouTube.

En breve organizaremos más eventos parecidos, puedes seguirnos en Facebook o Twitter:

 

 

[XNA] SpriteSheets

La importancia de los sprites recobra importancia con el "renacimiento" que están viviendo los juegos 2D en las plataformas móviles. Algo muy importante en el desarrollo de videojuegos, independientemente de la plataforma, es el uso de spritesheets para almacenarlos. Un spritesheet no es más que una textura que contiene muchas imágenes, que a pesar de estar concentradas en un solo fichero, se usarán de forma separada en el juego. A veces tendemos a pensar que sólo se deben usar para animaciones de sprites 2D, pero eso es un error. En general, el uso de un sprite sheet está recomendado por varios motivos:

 

  • Es mucho más rápido cargar 1 textura que contenga varias imágenes, que todas las imágenes por separado, aunque la imagen resultante sea la misma.
  • Es mucho más eficiente a la hora de hacer el render con la tarjeta gráfica, ya que no tenemos que estar enviándole a esta N texturas, sino que sólo tenemos que decirle qué partes queremos que renderice en cada momento.
  • Permiten controlar más facilmente que las dimensiones de la textura final (ancho y alto) sean una potencia de 2. Eso permite mantener a raya el tamaño de nuestras texturas (más info aquí). Esto siempre es importante, pero empieza a serlo mucho más en los juegos para móviles, donde los recursos de memoria son mucho más limitados que en otros sistemas.

 

Aquí tenemos un ejemplo típico de spritesheet:

¿Cómo se puede generar un spritesheet? Con photoshop, con paint... o bien, con Zwoptex, una herramienta que bien podemos comprar por sólo 15$, o bien usar online -versión flash- totalmente gratis. Esta app se encarga de organizar los sprites en un canva de dimensiones predeterminadas.  Otra ventaja de esta herramienta es que genera un fichero de coordenadas que nos indica cómo se localiza cada imagen, el cual después podríamos parsear desde nuestro juego de forma más o menos automatizada -no he encontrado ya hecho ningún content processor para XNA-.

También tenemos un empaquetador de Sprite Sheets en codeplex llamado "Sprite Sheet Packer", desarrollado por Nick Gravelyn del XNA team (lo que por sí solo ya es una garantía). Este hace una tarea similar, y tiene opciones como forzar a que la textura resultante tenga unas dimensiones que sean potencia de 2.

Para el caso concreto de XNA, tenemos una solución genial, en el App Hub tenemos un content processor que leerá una lista de texturas independientes, a partir de un XML especificado, y en tiempo de compilación las unificará en una sola, organizándolas él solito para que ocupen el mínimo espacio posible. Para ello se utiliza un content processor que puede ser descargado aquí. El procesador además incluye una clase que nos permite acceder de forma extremadamente fácil a cualquiera de los sprites de la hoja de sprites, ya sea por índice o haciendo referencia al nombre de la textura.

 

[XNA] Mapas de tiles

Los mapas de tiles consisten en diseñar los niveles de los juegos reaprovechando pequeños gráficos una y otra vez, hasta terminar confeccionando un mapa que puede ser muy grande. Esto se utilizaba en los primeros videojuegos para aprovechar los recursos de memória disponible, muy limitada en las primeras máquinas en las que se ejecutaban los juegos.

Pero además este recurso tiene otra ventaja: pocos recursos gráficos necesarios. Es decir, que para diseñar un nivel más o menos grande, no necesitas tener un artista trabajando días y días para diseñar un montón de detalles, ya que si formamos el nivel a partir de pequeñas partes, estas se pueden reaprovechar. Y esto es genial para los desarrolladores independientes Smile

Más información teórica de los mapas de Tiles en la Wikipedia.

En el caso concreto de XNA, tenemos distintas formas de trabajar con Tiles. Algunos valientes desarrollan su propio tile engine. Y muchos “mueren” en el intento –o mejor dicho, su proyecto “muere”-. No vale la pena reinventar la rueda… hay muchos tile engines disponibles, y además gratuitos, así que no nos rompamos el coco. Uno de los más usados, para distintas plataformas es el Tiled Map Editor. Es un engine open source (C++) multiplataforma (funciona en Windows / Mac / Linux). Lo bueno que tiene, además de sencillo, es que fenera ficheros en un formato estandarizado llamado TMX, que no es más que un XML con una estructura determinada. Aquí vemos una captura de pantalla:

An orthogonal map

Tiene muchas ventajas: gratuito, fácil de usar, permite establecer propiedades personalizadas a los tiles que después podemos parsear en XNA… es una pasada Smile

Tras trabajar con esta aplicación, al final tendremos un fichero tmx y sus spritesheets asociados, de los que se compone el tilemap.

Cómo utilizamos el mapa generado desde XNA? Nada más fácil! Nick Gravelyn y Jesse Chounard han desarrollado una extensión del content pipeline que lee perfectamente el tmx con un simple Content.Load<Map>. La librería se llama TiledLib, y contiene documentación más que suficiente, así como ejemplos que se descargan junto a las dll necesarias.

Esta captura muestra la facilidad de uso de la librería en un juego muy sencillo:

game.png

Y eso es todo por hoy. Hasta pronto!

Conferencias de Videojuegos en Lleida

El próximo 28 de junio, se realizarán en el Parque Científico de Lleida dos conferencias de videojuegos, en la que dos empresas nos contarán sus experiencias desarrollando videojuegos. La asistencia es gratuita, y únicamente hay que reservar la plaza por e-mail a la dirección info[-arroba-]plungeinteractive.com. Las conferencias están organizadas por la empresa Plunge Interactive, y cuentan con la colaboración de la Universitat de Lleida, el Parque Científico y Tecnológico de Lleida y el Ayuntamiento de Lleida.

Por un lado Rubén López, nos explicará sus experiencias de desarrollo en la empresa Novarama, en la que lleva años desarrollando videojuegos para PSP, Play Station 3, XBOX 360 y Wii, y entre los que destaca el conocidísimo InviZanimals, para PSP. A continuación Pol Urós, programador de la joven empresa BeautiFun Games dará una charla más técnica, y nos introducirá a las plataformas de desarrollo UDK y Unity 3D.

Estas conferencias se enmarcan en el Curso de desarrollo de Videojuegos ofrecido por Plunge Interactive, aunque como se ha dicho, la asistencia a estas charlas es gratuita.

Para más información, podéis acceder a la web de Plunge Interactive.

Experimentando Kinect + XNA (SDK oficial)

Esta tarde se ha lanzado el driver + SDK oficial (beta) para el Microsoft Kinect! Había mucha expectación al lanzamiento del SDK... el caso es que no ha sido muy sorprendente que estas librerías sean totalmente distintas a las que se utilizan para desarrollar videojuegos para XBOX 360, y que además su licencia incluya el uso no comercial de las aplicaciones desarrolladas. En definitiva: que es un SDK para experimentar, y muy fácil de usar. Las posibilidades tanto a nivel académico como profesional (aunque sea a nivel experimental) son enormes. Además todo ello viene acompañado con varios ejemplos y documentación (tanto en C++ como C#), descargables en: http://research.microsoft.com/en-us/um/redmond/projects/kinectsdk/ 

Además he podido ver en la documentación que la SDK proteje del "mal uso" que podamos hacer de Kinect, así que es prácticamente imposible estropear el hardware desde nuestro código (ya sea a nivel de motor o lentes). Eso es muy positivo, porque de no existir algunas limitaciones sobre el uso de los sensores, según la documentación sería relativamente sencillo estropear el dispositivo.

Lo que sí me ha sorprendido un poco es que Microsoft Research comente en su documentación que no se haya testado el SDK sobre XNA. Mal asunto! En mi caso he querido hacer una primera prueba, que a estas horas de la noche creo que no es lo mejor del mundo, pero es mi primer hello world :) El ejemplo pinta por pantalla los datos obtenidos por la cámara de profundidad, por la cámara de vídeo, y los puntos de unión del esqueleto detectado (puntos rojos en la captura).

Cosas chulas del SDK:

  • Permite acceso "raw" a todos los sensores
  • Seguimiento del esqueleto
  • Increïbles funcionalidades de audio como reconocimiento de voz, que permiten reconocer el orígen del sonido, e incluso interpretar órdenes
  • Documentación completísima, y ejemplos listos para funcionar, como este "minijuego", que es genial: http://research.microsoft.com/apps/video/default.aspx?id=150286

Varias observaciones / datos curiosos tras hacer esta pequeña prueba de XNA + Kinect:

  • Las imágenes obtenidas de la cámara de vídeo y de profundidad funcionan a 30fps, con una resolución de 640x480 y 320x240 respectivamente.
  • La velocidad de refresco del esqueleto en XNA es horrible, aunque supongo que debo tener algun fallo en el código...
  • Los puntos del esqueleto están pintados en la pantalla sobre un vector 2D, no un vector 3D (obviamente el SDK devuelve parámetros tridimensionales).

 

He adjuntado el Hello World de XNA + Kinect por si álguien quiere jugar un poco con él :-) 

 

Nuevo juego para Windows Phone 7: Sketchy Blocks

Este juego -hecho con tecnología XNA- es un homenaje al viejo tetris -y técnicamente hablando un experimento de ports multiplataforma, porque ya estoy trabajando en el port a iPhone-. Lo que más me gusta es la increible jugabilidad, a pesar de tener que mover las piezas con la pantalla táctil, y por otro lado la música. La banda sonora es totalmente original, adquirida a un grupo de música ruso, y podréis comprobar por vosotros mismos que es altamente... divertida (ver vídeo del grupo más abajo).

Como curiosidades, el juego dispone de 35 niveles (yo sólo he podido alcanzar el 26 hasta el momento), un ranking global con el que puedes picarte y competir con jugadores de todo el mundo, además de estar disponible en 6 idiomas distintos, y unos bonitos gráficos. Otra ventaja que tiene el juego es el control total del tombstoning, una correcta gestión del tombstoning para mi es esencial en cualquier juego, y esto consiste en mantener la experiencia de usuario del jugador en el móvil. Imagina que estás jugando, y vas por el nivel 30, y recibes una llamada de tu madre o similar, y pierdes todo el avance en tu partida!! Eso no debe ocurrir en ningún juego, y por supuesto no ocurre en Sketchy Blocks. Cuando se pulsa el botón de inicio durante el gameplay, podemos recuperar la partida justo en el punto en el que la dejamos ya sea volviendo atrás o bien volviendo a acceder a la app mediante su icono correspondiente.

Por cierto, quien consiga superar los 35 niveles tendrá una increíble sorpresa visual y auditiva xD Podéis haceros una idea del juego en este vídeo: http://www.youtube.com/watch?v=nqrx-v8Vtho

 

Más información y descarga de la app:

http://www.windowsphoneapplist.com/sketchy_blocks-a21410.html


Aquí va un vídeo del grupo de música que ha compuesto la banda sonora del juego:

https://www.youtube.com/watch?v=LiG8DKOnT20

Posted: 9/6/2011 8:32 por Jesús Bosch | con 6 comment(s) |
Archivado en: ,
Aplicación de Mourinho en el Marketplace de Windows Phone y Android

 Hace un par de días he publicado una nueva aplicación. En este caso es una parodia de Mourinho y sus frases míticas. La aplicación se encuentra disponible para Windows Phone y Android. Además se han añadido algunos fakes como el mítico "sugus azules". No es la app más sofisticada del mundo... pero es un divertido experimento de portabilidad. Tanto si amas como odias a este personaje, es una divertida app que no puedes dejar de probar :-)

Los features de la versión WP7 son:

- Mourinho mueve (y cruza xD) los ojos con el acelerómetro

- Al darle a la cabeza, suelta toda clase de ruidos divertidos

- Puedes seleccionar tu frase favorita de una extensa lista

- Mourinho mueve la boca al hablar


Enlace a la versión de Android
Enlace a la versión de Windows Phone


La versión Android tiene menos funcionalidades, a falta de la posibilidad de mover la boca al hablar, así como mover los ojos con el acelerómetro -funciones que se añadirán en el próximo update-

Aquí van un par de capturas de pantalla de la aplicación:

Posted: 31/5/2011 16:05 por Jesús Bosch | con 11 comment(s) |
Archivado en: ,
[MONO] Vientos de cambio en la plataforma MONO

Las listas de MonoTouch y MonoDroid son un auténtico hervidero estos días... La europea Attachmate ha comprado a Novell por unos 2.200 millones de dólares. La primera preocupación de la comunidad fue acertada: qué pasará con Mono? Y es que al parecer Mono no se encuentra entre las prioridades de Attachmate, y los ingenieros de estadivisión podrían incluso haber sido despedidos. Lo único seguro es que algunos de estos ingenieros, con Miguel de Icaza en la cabeza, podrían haber fundado una nueva empresa que seguiría desarrollando la plataforma Mono, que se llama Xamarin.

Xamarin tiene muy buenas prespectivas, seguirán desarrollando Mono (que es una plataforma open source), el único cambio se encuentra en MonoDroid y MonoTouch, que son librerías propietarias. No obstante, Xamarin ha afirmado que en septiembre o en octubre ya podrían tener las primeras versiones disponibles de nuevas plataformas mono para estos dispositivos móviles.

 

Más info en el blog de Miguel de Icaza.

Cursos de diseño y programación de videojuegos en Lleida

El próximo jueves 12 de mayo se presentará en la Universitat de Lleida (Eidifici EPS, Sala de Graus, aula 2.03) los cursos de diseño y programación de videojuegos ofrecidos por Plunge Interactive. Destacar de este curso en primer lugar que los profesores tiene experiencia contrastada de años de trabajo en conocidas multinacionales del sector, por otro lado, es la primera vez que se realizan cursos de estas características en toda la provincia de Lleida.

Los cursos de varios niveles y de 40 horas de duración, seran presenciales y se realizarán en en Parque Científico y Tecnológico de Lleida a partir del mes de Junio. Las personas interesadas en inscribirse al curso pueden contactar con el e-mail que aparece en el cartel.

[WP7] Nueva app en el Marketplace: Guía de la Tele

Este fin de semana he recibido un mensaje de Microsoft notificándome que la aplicación "Guía de la Tele" había sido aprobada. Esta app, hecha en Silverlight, permite comprobar la programación del día en la TDT española. La novedad respecto otras aplicaciones del mismo tipo son:

  • Gran cantidad de canales: hasta 60, con la posibilidad de añadir más a petición de los usuarios.
  • Posibilidad de buscar programas en la programación del día con un buscador incorporado
  • Gestión de canales favoritos

En definitiva, una sencilla pero creo que útil aplicación. Si queréis descargarla, aquí os dejo el enlace:

http://social.zune.net/redirect?type=phoneApp&id=9983909a-513e-e011-854c-00237de2db9e

Dado que veo que está recibiendo bastante buena crítica, seguramente lanzaré alguna actualización en breve, con algunas peticiones de canales, y algunas funcionalidades mejoradas y un mejor diseño gráfico.

Posted: 4/4/2011 21:55 por Jesús Bosch | con 4 comment(s)
Archivado en: ,
[XNA] Conociendo a XNA Touch

XNA Touch es una extensión de MonoTouch y MonoDroid que permite ejecutar código XNA sobre Open GL en las plataformas Mono. Traduciendo... significa que tenemos una ENORME portabilidad multiplataforma en nuestros juegos hechos con XNA!! Es decir, que nos será relativamente fácil que nuestros juegos se ejecuten en Windows, Windows Phone 7, XBOX 360, iPhone y Android.

 

Vale, muy bonito. ¿Pero funciona? Eso mismo me he preguntado yo... y aquí está el resultado de mis pruebas iniciales. Tengo que decid que me he sorprendido gratamente. En mi caso quiero ejecutar código XNA en iPhone (guauuuu!), así que para ello necesitamos lo siguiente:

 

  • Un ordenador Mac con el SO Snow Leopard (imagino que también pueden valer virtualboxes y similares... pero he oído que la gente tiene muchos problemas con la tarjeta gráfica)
  • Mono SDK (plataforma base)
  • Mono Touch (trial gratuito, la única limitación es publicar las apps y desplegarlas en el móvil, pero se pueden ejecutar en el emulador)
  • XNA Touch
  • Mono Develop (IDE de desarrollo parecido a Visual Studio)

 

Doy por supuesto que tenemos instalado y funcionando todo lo aquí comentado. A partir de aquí en mi caso lo único que he hecho para crear un proyecto XNA para iPhone ha sido:

 

  1. Compilar XNA Touch, y guardarme bien guardada la DLL
  2. Crear un proyecto MonoTouch vacío, ya que, que yo sepa, XNA Touch no tiene plantillas de proyecto a día de hoy (corregidme si me equivoco)
  3. Añadir la clase de inicio Program.cs y la clase Game.cs (más o menos como lo haríamos en un proyecto XNA con Visual Studio de toda la vida!!)
  4. Agregar un directorio "Content" a la solución. Añadir archivos (en mi caso un spritefont) y modificar la propiedad "Build action" a "Content"
  5. Escribir nuestro código XNA usando el namespace XNATouch... y a ejecutar!

 

En mi caso este es el resultado de la ejecución de un sencillo código que renderiza un spritefont y lo hace girar por la pantalla, en base a uno de los propios ejemplos de XNA Touch. En nada, en 2 minutos tenemos esto funcionando:

 

Espero que os haya gustado. Personalmente creo que XNA Touch es un proyecto con mucho futuro. Ah por cierto, os he adjuntado el código de este pequeño proyecto de ejemplo :-)

[OT] Oferta empleo: programador videojuegos

En Plunge Interactive S.L. (http://www.plungeinteractive.com) estamos buscando un programador de videojuegos, para nuestra oficina en el Parque Tecnológico de Lleida. En este momento nuestro foco es el desarrollo de videojuegos para dispositivos móviles, principalmente iPhone, pero también Android y Windows Phone 7. Nos interesa un perfil que se asemeje al siguiente:

  • Persona creativa, resolutiva, con empuje y apasionada con el desarrollo de videojuegos
  • Formación superior (preferiblemente ingeniería en informática) + Postgrado o Máster relacionado con Videojuegos
  • Conocimientos de programación 2D y 3D
  • Ámplios conocimientos de programación gráfica con distintas plataformas, y al menos las siguientes tecnologías:
    • XNA
    • OpenGL
  • Se valorarán conocimientos y experiencia en frameworks de desarrollo de videojuegos
  • Se valorarán conocimientos y experiencia en diseño de videojuegos

Ofrecemos un salario atractivo, en un entorno de trabajo abierto, joven y flexible, donde lo más importante somos las personas.

Los interesados podéis encontrar e-mail de contacto en la web http://www.plungeinteractive.com

 

Más artículos Página siguiente >