Archive for May, 2007

Más tutoriales y ejemplos en creators.xna.com

El XNA Team ha agregado más contenidos en el sitio que agrupa a creadores detrás de la tecnología XNA (http://creators.xna.com). Los nuevos agregados incluyen:

. Un nuevo minigame llamado Catapult.
. Un tutorial en video que explica como hacer un juego en 60 minutos con toda la experiencia adquirida en artículos anteriores.
. Más tutoriales relacionados a colisiones (rectángulos y colisión por pixel).
. Más demostraciones (sistemas de partículas con point sprites, picking, aiming, y más).

La comunidad XNA está creciendo rápidamente y con ella la cantidad de demostraciones y tutoriales de calidad. Para descargar todos estos contenidos nuevos, podés dirigirte al sitio oficial de creadores de XNA: http://creators.xna.com.

El Tokamak Physics Engine ahora es open source

tokamak-scrProbé el engine de física Tokamak hace como tres años y me pareció bastante bueno. Muy fácil de usar y de muy buena performance. Lo único criticable tal vez haya sido su diseño no demasiado elegante y la ausencia de ciertas características (más tipos de joins, por ejemplo) presentes en otros motores como el Novodex (ahora Ageia) y el ODE.

Otro aspecto criticable era su falta de actualización. Los autores habían prometido una versión 2 hace mucho tiempo y el proyecto pareció quedar abandonado desde entonces. No siendo un proyecto open source esto parecía ser un problema. Sin embargo, hoy podemos dar la buena noticia que el proyecto ahora sí es open source y promete una actualización más frecuente gracias a aportes de la comunidad.

http://sourceforge.net/projects/tokamakp/

XBOX 360 – Para algunos se acabó lo que se daba

Era de esperar, una cuestión de tiempo, que Microsoft decidiese bannear a las XBOX 360 que tuviesen un firmware de DVD “adulterado”.

Quienes poseían la consola reflasheada se han encontrado con la no grata sorpresa de una pantalla comunicando que el serial de su consola había sido banneado, lo que cual impedirá toda conexión a la red de Microsoft (para descarga de cualquier tipo de contenido, jugar online, hablar con otros usuarios, etc.). Para ellos la consola ahora será exclusivamente offline, aunque de todos modos – dejando de lado aspectos éticos – tal vez no haya sido un mal negocio ya que habiendo jugado al menos 7 juegos no originales, habrán ahorrado el equivalente a una consola nueva.

bannedxbox

Modelos MD2 (Quake 2) [parte 1]

El formato MD2 fue creado por Id Software para su juego Quake 2 y es utilizado principalmente en los modelos de los jugadores y de los personajes no jugador. El formato se destaca por su simpleza, cantidad de modelos hechos por terceras partes y cantidad de herramientas para la creación de modelos que existen en la red.

md2-q2scn

En este primer tutorial veremos cual es el formato de los archivos MD2. Más adelante veremos como realizar la carga, visualización y animación en lenguajes C# y C++ utilizando DirectX.

(Read the article)

Se viene el Starcraft 2

Hace algunos días que Blizzard nos venía jugando al misterio respecto al cual sería su próximo gran juego. En la red las especulaciones estuvieron a la orden del día pero siempre sonaron fuerte dos títulos: Starcraft 2 y Diablo 3 (sí, sí, después había delirantes que sugerían cosas como World of Starcraft y cosas así, pero nadie los tuvo en cuenta).

Finalmente Blizzard anunció que el juego será Starcraft 2, inauguraron sitio oficial con screenshots, wallpapers y demás.

starcraft2-scn1

En esta página de la IGN se anuncian cuales serán las nuevas unidades.

Violencia en los videojuegos

Martin Romero escribió un breve artículo relacionado a la violencia en los videojuegos de la que tanto venimos escuchando en los noticieros cuando sucede alguna tragedia. Es bueno leer a alguien coherente de vez en cuando :)

Click aquí para acceder a la nota.

ZakEngine v1.0 released

Zak ha lanzado la versión 1.0 de su motor ZakEngine.

ZakEngine es un motor de juegos 2D creado en C++ que utiliza DirectX. Posee muchas características interesantes como soporte a sprites animados, mapas generados a partir de AnaConda Map Editor y Mappy, soporte a scripts basado en AngelScript y mucho más.

Vale la pena evaluarlo. El sitio oficial es: http://www.zakengine.com

Cómo colaborar con fuzzyGameDev

Bueno, dado que la gente no deja de pararme por la calle para preguntarme como pueden colaborar con el sitio (:D) decidí escribir el siguiente FAQ:

P: ¿Puedo escribir artículos para que sean publicados en este foro?
R: La filosofía de fuzzyGameDev siempre ha sido compartir información relacionada a videojuegos con la comunidad desarrolladora y aceptamos gustosamente las participaciones de los usuarios que usualmente se acercan a este sitio. Sin embargo, es mucho más complaciente para nosotros recibir extensiones de los temas tratados que la creación de temas nuevos (como la codificación de ejemplos en distintos lenguajes, la profundización de alguno de los temas tratados o la aplicación en diversos contextos de los mismos).

P: No tengo tiempo/conocimientos suficientes/ganas para escribir nada ¿De que otro modo puede participar?
R: Puedes participar difundiendo la existencia del sitio a tus amigos o en otros foros de programación. Para ellos puedes pasarles un link (http://www.fuzzygamedev.com) o incluir el siguiente cartel 80×15: 80x15. Para ellos puedes agregar el siguiente código HTML en una página web:


<a href="http://www.fuzzygamedev.com" target="_blank">
<img src="http://www.fuzzygamedev.com/_images/80x15.gif"
width="80" height="15" alt="fuzzyGameDev Desarrollo de Videojuegos">
</a>

O el siguiente código en la firma de tu usuario de foro tipo phpBB:


[url=http://www.fuzzygamedev.com][img]http://www.fuzzygamedev.com/_images/80x15.gif[/img][/url]

P: ¿Por qué el código de los tutoriales suele ser C++ o C#?
R: Porque son los lenguajes que mejor conozco y que más suelo utilizar (y los mejores del universo ;) ) sin embargo el código expuesto en cada tutorial es ejemplificativo y la idea aquí es expresar un concepto más allá de una implementación en particular.

P: ¿Puedo escribirte a algún lado para darte mis comentarios del sitio?
R: Sí, podés enviarme un mensaje privado al usuario fuzzyLogic en el foro de discusión (hacer click aquí).

Google y su publicidad ingame

Aparentemente este tema se viene medio pesado porque hay novedades dignas de destacar semana tras semana.

En esta ocasión Google, que compró recientemente AdScape Media (una empresa especializada en publicidad en videojuegos) ahora recibió una patente relacionada a un sistema para analizar el comportamiento de un jugador dentro de un videojuego y poder, de este modo, armarse un perfil psicológico del mismo para ofrecerle publicidad relacionada a sus intereses.

Existen algunas frases a destacar extraídas de la pantente, a ser:

+ La conversación de un jugador puede ser utilizada para clasificarlo (si es analfabeto, maleducado, cortés, callado, hablador, etc.). Además, el modo en el que juega puede servir también para caracterizarle (por ejemplo, si es sigiloso, estratégico, arriesgado, agresivo, honesto, deshonesto, etc.).

+ Por ejemplo, si un jugador pasa mucho tiempo explorando entonces quizá esté intereado en viajes, por lo que el sistema le ofrecería anuncios de viajes. Si el usuario pasa mucho tiempo conversando en lugar de luchando sugiere que quizá esté interesado en teléfonos móviles o llamadas internacionales (!).

+ Las tarjetas de memoria de las consolas también almacenan información que puede ser interesante para los anunciantes. Si en ellas, por ejemplo, se almacenan datos de carreras de coches en las cuales se utilizan automóviles BMW y alemanes, quizá significa que el usuario es una aficionado a este tipo de coches, por lo que quizá encuentre interesantes los anuncios sobre ellos.

+ Si un jugador ha estado jugando dos horas sin parar, el sistema podría mostrar anuncios de Pizza Hut, Coca-Cola, café u otros productos relacionados.

Veremos en las próximas semanas como sigue tomando forma esta nueva movida.

Implementando la clase “Cámara”

En este tutorial aprederemos como crear una clase que encapsule el manejo de una cámara en un mundo 3D. Está codificado en C++ utilizando DirectX 8 pero fácilmente podría ser convertido a otros lenguajes utilizando otras librerías como OpenGL.

El punto desde el cual observamos una escena está determinado por la matriz de vista, mientras que el modo en que la vemos y cuanto vemos de ella está determinado por la matriz de proyección. Es conveniente poseer en nuestro juego una clase que encapsule los componentes necesarios para crear una matriz de vista adecuada a nuestros fines en cada caso (aunque también dependiendo de la flexibilidad que deseemos lograr podría ser necesario tener componentes para crear una matriz de proyección).
Nuestra clase que llamaremos “Camera” podrá moverse por el entorno y rotar por medio de los tres ejes posibles (X, Y, Z).

De este modo su manipulación será muy sencilla y podremos utilizarla para navegar por el terreno o mapa de nuestros juegos libremente o para que represente un jugador o vehículo del mismo (al estilo de un FPS).

(Read the article)

Next Page »