lunes, 17 de julio de 2006

Síntesis procedural

El otro día leí un artículo que hablaba sobre una técnica de programación llamada síntesis procedural. Se basa en utilizar funciones que describen objetos, en lugar de introducir toda la información de cada objetos. Este artículo viene básicamente a desarrollar la idea de que si las tarjetas gráficas implementaran esas funciones (por ejemplo, "crea un árbol aquí"), cuando se cambiara de máquina se podría seguir jugando al mismo juego pero con unos gráficos mejorados (la nueva tarjeta tendría el contenido de esa función mucho más mejorado).

Hay un grupo llamado .theprodukt. que ponen a disposición de la comunidad de la demoscene sus herramientas de programación. Su obra maestra es .kkrieger. Se trata de un juego mata-mata en primera persona y tres dimensiones. Lo revolucionario es que ocupa sólamente ¡96 KB!. No se basan en compresión, sino en "sintetizar" los objetos, texturas, música, etc... a partir de las funciones matemáticas que las definen (síntesis procedural).

Todo esto me llevó a recordar las "demos" que me tanto me fascinaron hace unos años. Son pequeños programas que conjuntan gráficos y música para hacer una pequeña obra de arte, que quepa en el menor tamaño posible de código y utilizando técnicas para aumentar su velocidad de ejecución, llegándose a programar gran parte de ellas directamente en ensamblador. Se compite en diferentes categorías en función del tamaño del programa (hay una categoría para menos de 64KB).

Categoría: Informática


No hay comentarios: