Google
 

viernes, octubre 20, 2006

'Radiosity' en tiempo real

Es impresionante ver como han conseguido renderizar una escena calculando la luz en tiempo real. Ha sido posible gracias a siete años de investigaciones según dicen en la web. Hay disponible una pequeña entrevista que nos ofrece más detalles de esta pequeña maravilla tecnológica.

jueves, octubre 19, 2006

Cuidao que me espiño

Bil Gates no inventó internet ni Valve, con su Half-Life 2, la física en los juegos. Fun-motion nos trae una interesante lista de juegos en los que la física juega un papel importante. Crear corrientes de agua, construir puentes o apilar objetos son algunas de las cosas que tendrás que hacer. Para que luego digan que la originalidad en los videojuegos ha muerto.

miércoles, octubre 18, 2006

IA Básico: Ejemplo

He subido el código fuente de un ejemplo que resuelve un pequeño juego usando la técnica más básica.

Seguro que todos conoceréis el juego; en un tablero de tres por tres casillas tenemos desordenados ocho cubos numerados del 1 al 8, el objetivo consiste en ordenarlos de una forma predeterminada (la que más os guste) arrastrando un cubo al hueco que queda, pero ojo, únicamente podemos mover los cubos contiguos al agujero.

El funcionamiento del programa no debería daros demasiado problema. Lo único que hace es probar todas las combinaciones posibles y escoger la ganadora. Lo que realmente ocurre es que mediante algún algoritmo (Breadth First o Depth First) elegimos en el grafo (todos los movimientos posibles) un camino que nos lleve a la victoria.

Es un método bastante simple pero sólo sirve para usarlos en juegos en los que participe un único jugador, que tengamos toda la información del juego en todo momento y que el número de movimientos sea mínimo pues consume demasiada memoria y CPU.

Los Videojuegos en los hogares españoles

aDeSe ha publicado recientemente un estudio sobre los videojuegos en los hogares españoles. Nos ofrecen algunas conclusiones interesantes como que España representa el 2,6% del mercado mundial de videojuegos, que la gente no considera piratear un videojuego como delito con lo que la recuperar la inversión inicial no es fácil debido a que es la principal forma de acceso a los videojuegos o que, aproximadamente, el 5% de los juegos comercializados representan el 90% de las ventas. Es altamente recomendable echarle una ojeada al resumen del informe.

martes, octubre 17, 2006

I.A. Básica

La forma más básica de usar la inteligencia artificial en un juego se convierte en algo tan sencillo como probar todas las posibilidades y escoger la que te lleve al premio gordo. Es fácil de efectuar con una lista. Hay tres algoritmos básicos que te pueden ayudar:
- Breadth First
- Depth First
- A*
La diferencia entre esos algoritmos es mínima, únicamente cambia la posición en la que añadimos y quitamos cosas de la lista. El pseudo-código estándar podria ser así:
hacer
estado_actual = quitar_estado_de_la_lista
si estado_actual contiene la solucíon entonces final_de_juego
array_de_estados_hijos = expandir(estado_actual)
añadir_a_la_lista(array_de_estados_hijos)
mientras no_acabe_el_juego
La diferencia entre los diferentes algoritmos es:
- Breadth First: los elementos se añaden siempre en una cara de la lista y se quitan de la cara opuesta.

- Depth First: los elementos se añaden y se quitan de la misma cara de la lista.

- A*: los elementos se añaden a cualquier cara de la lista pero se eliminan primero los mejor puntuados según una función heurística (podríamos puntuar, por ejemplo, los que estén más cerca del objetivo). Reduce enormemente el número de elementos pero a base de usar un algoritmo más lento.