martes, octubre 31, 2006

Vacaciones

Bueno, pues a partir de mañana salgo de vacaciones. Salgo de viaje unos días y luego pienso recluirme en casa de la vieja a trabajar en el proyecto, o mejor dicho, en los proyectos, porque tengo varios aunque algunos de ellos están muy relacionados.
Como desgraciadamente no tengo portátil y los puntos WiFi gratis no abundan aquí, el blog estará abandonado hasta mi regreso.

lunes, octubre 30, 2006

Terrain renderer

Como mencioné anteriormente logré echar a andar un primitivo renderizador de terrenos. Tenía pensado poner una imagen, pero el caso es que se ve fatal en mi tarjeta Nvidia Vanta LT a menos que se utilicen los drivers propietarios y desde que cambié a Visual C++ Express 2005 no he logrado que la versión para Windows vuelva a correr.
Aquí puede verse el cliente en ejecución:


Y esto es una muestra del servidor, recibiendo mensajes:

domingo, octubre 29, 2006

Eragon

Nuevamente Daisita me señaló esta peli, la primera de la trilogía El Legado de Christopher Paolini. De inmediato me di a la tarea de localizar el libro original, o más bien los dos primeros libros, pues el tercero aún no se ha terminado. Apenas terminé la serie Mallorea de Eddings inicié la lectura de Eragon.
Debo decir que aunque la novela es buena, hay un no se qué que no acaba de gustarme. Tal vez sea el toque magistral de autores más experimentados como Jordan, Kage Baker o el propio Eddings. Y no puedo dejar de pensar que algo raro hay detrás de la decisión de convertir El legado en una trilogía fílmica, habiendo obras maestras del género fantástico.
No quisiera dármelas de experto analista pero tal vez el hecho de que Paolini escribió este libro a los 15 años (ahora tiene unos 20) tenga algo que ver. Puede ser que estemos asistiendo a un nuevo fenómeno Potter, pero a la inversa.
Sea lo que sea, el joven C.P. ya tiene garantizado su futuro como escritor con esta producción cinematográfica.

sábado, octubre 28, 2006

Nueva comunidad de desarrolladores

Un nuevo sitio dedicado a reunir desarrolladores de juegos y artistas está disponible: Digital Reality. Aún no está muy concurrido pero pinta muy bien.

viernes, octubre 27, 2006

Crystal Space 3D V1.0pre1

Luego de un largo tiempo el motor para juegos Crystal Space libera una nueva versión, la primera de una serie de liberaciones que culminará con la 1.0 definitiva. La pre1 está considerada como estable.
Crystal Space es un motor extremadamente amplio y bastante complejo que abarca desde gráficos hasta física. Es el corazón del proyecto Planeshift y de algunos otros no tan conocidos.

miércoles, octubre 25, 2006

Nuevo server de Travian

A partir del viernes se abre la preinscripción para un nuevo server de travian.es. Este tiene la particularidad de ser un speed server, o sea, todo va más rápido y hay más recursos. La dirección de registro es speed.travian.es.

martes, octubre 24, 2006

Microsoft está decidida a sacar adelante Halo como película

Aunque Universal y Fox están retirando el apoyo al proyecto, dirigido por Neill Blomkamp y con producción ejecutiva de Peter Jackson y Fran Walsh, MS y Bungie han reiterado su propósito de convertir Halo en película. Todo se debe a un insignificante problema de menudo. Las compañías cinematográficas intentaron a última hora renegociar los acuerdos financieros para recortarle las ganancias a Jackson y comparsa, debido a que los gastos están sobrepasando los $135 millones asignados inicialmente.
MS y Bungie andan a la caza de nuevos socios que valoren adecuadamente la franquicia (léase que suelten la pasta sin tanta tacañería) y expresaron su firme decisión de llevar adelante el proyecto.
Vía Gamasutra y Bungie.

lunes, octubre 23, 2006

MPlayer 1.0rc1

Ayer fue liberada la Release Candidate 1 de este reproductor de video para Unix (y para Win también). La lista de cambios es extensa como de costumbre, y pueden consultarla aquí. A simple vista no veo nada significativo, si exceptuamos que ya el GUI funciona en Windows. Es de esperar que tengamos un RC 2 y luego, con suerte, la versión definitiva.
Mplayer es un reproductor bastante maduro, veterano diría yo. Aún recuerdo los tiempos en que tenía que arrancarles a los desarrolladores el enlace directo para descargarlo vía correo electrónico porque no tenía acceso a Internet. Yo diría que en este momento solo le falta manejar los menúes de DVD para ser perfecto.

sábado, octubre 21, 2006

Regnum Online

Tenía planeado hablar de Regnum Online, juego que descubrí gracias a este artículo que sin dudas podrá darles mejores detalles que yo. Sin embargo luego de esperar ansioso toda la noche a que descargara me encontré que por alguna razón, que posiblemente tenga que ver con estar detrás de un proxy, no puedo jugarlo. Nada, qué remedio, tendré que conformarme con decirles que pinta bien, es gratis (que no software libre) e incluso tiene versión para Linux.
No sé a ustedes pero a mí me causa muy buena impresión ver un trabajo así hecho por latinoamericanos y teniendo en cuenta las posibilidades del mercado (por llamarlo de alguna manera) de la región. Ojalá esto sirva de ejemplo, porque potencial hay, no solo de este lado del charco sino también en la península (y si no lo creen pues con echarle un vistazo a Glest basta).

jueves, octubre 19, 2006

IrrEdit 0.5

Ayer se liberó otra versión de IrrEdit, un editor de contenido para Irrlicht. Los cambios incluyen arreglos de fallos, algunas características nuevas y compatibilidad con Irrlicht 1.1.

martes, octubre 17, 2006

Renderizado de terrenos

Desde hace mucho tiempo vengo dándole vueltas a este asunto de la generación y renderizado de terrenos. Tutoriales hay a montones en internet pero no estaba preparado para entenderlos hasta que leí OpenGL game programming y Beginning OpenGL game programming, un par de libros que recomiendo muy especialmente. Están en mi lista de prioridades para cuando alguien me deba un favor y esté dispuesto a desembolsar su precio para pagármelos, porque obviamente están muy lejos de mi modesto salario.
Cada cual tiene su propio método, pero nadie explica el algoritmo para calcular la geometría del terreno de una forma tan clara y lo mismo para el proceso de renderizado, que incluso agrega agua y posteriormente es susceptible de ser mejorado con arreglos de vértices.
Me resultó muy fácil adaptar el código del libro, aunque en el proceso cometí varios errores.
Suponiendo que tengas un mapa de alturas en forma de arreglo bidimensional:

float hm[MAP_Z][MAP_X]={
{0,1.0,0,0,0,0,0,0,0,0,0,0},
{1.0,4.0,3.0,0,0,1.0,2.0,1.0,0,0,0,0},
{0,0,1.5,2.0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,2.0,3.5,1.0,0,0,0},
{1,2,3,2.7,2,1.1,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0},
{1,2.0,1,0,0,0,1.0,2.0,2.0,0,0,0},
{0,0,0,0,2.0,0,0,0,0,0,0,0},
{0,0,1.0,0,0,0,0,0,0,0,0,0},
{0,0.6,1.0,0.5,0,0,0,0,0,0,0,0},
{0,0,1.0,0,0,0,0,0,0,0,0,0},
{0,0,0.5,0,0,1.1,0,0,0,0,0,0}
};

Generar la geometría sería algo tan sencillo como:

GLfloat terrain[MAP_X][MAP_Z][3];
int z,x;
for (z=0;z < MAP_Z ; z++ )
for (x=0;x < MAP_Z ; z++ )
terrain[x][z][0]=x*ts;

terrain[x][z][1]=hm[z][x];
terrain[x][z][2]=z*ts;
}//for x
}//for z


Y el renderizado sería:

for (z=0;z < style="font-style: italic;"> glBegin(GL_TRIANGLE_STRIP);
for (x=0;x < style="font-style: italic;"> //vertex 0
glTexCoord2f(0.0,0.0);
glVertex3f(terrain[x][z][0],terrain[x][z][1],terrain[x][z][2]);
//vertex 1
glTexCoord2f(1.0,0.0);
glVertex3f(terrain[x+1][z][0],terrain[x+1][z][1],terrain[x+1][z][2]);
//vertex 2
glTexCoord2f(0.0,1.0);
glVertex3f(terrain[x][z+1][0],terrain[x][z+1][1],terrain[x][z+1][2]);
//vertex 3
glTexCoord2f(1.0,1.0);
glVertex3f(terrain[x+1][z+1][0],terrain[x+1][z+1][1],terrain[x+1][z+1][2]);
}
glEnd();
}

Nada, que este libro vale su peso en oro y es una herramienta que no debería faltarte si quieres dedicarte a la programación de juegos.

lunes, octubre 16, 2006

Ideas

Hace unos días conversaba otra vez con Daisita, esta vez sobre cine. Como podrán darse cuenta Daisita y yo somos dos personas muy curtas y apreparás, lo mismo leemos a David Eddings que sabemos un mundo de Hollywood. Pues una cosa lleva a otra y sacando cuentas llegamos a la conclusión de que las grandes ideas, esas que son originales de verdad y no una mala copia de algo que alguien ya hizo antes, se dan en la historia del cine más o menos con una periodicidad aproximada de una por década.
La gran idea de los 70 fue Star Wars. En los 80 Regreso al futuro. Sobre principios de los 90 Terminator y ya llegando a los finales Matrix. Casualmente todas ellas se convirtieron en trilogías.
Se nota cierta escasez de ideas. Sería interesante ir más atrás en el tiempo y hacer una lista de ideas originales en el cine para calcular con más exactitud el intervalo entre una y otra.

viernes, octubre 13, 2006

Beryl

Hace unos días me dio la idea de probar Beryl. En caso de que hayas estado viviendo bajo una piedra en los últimos tiempos, Beryl es un Windows Manager con capacidades composite que se apoya en OpenGL. O sea, que puedes tener todo tipo de efectos muy maricas como cubos y cosas así que harían parecer al cacareado Aeroglass de Vista una mala falsificación de la Mona Lisa hecha por un pintor de brocha gorda. A pesar de que con los años me he vuelto conservador y tacaño con los recursos de mi PC, decidí echarle un vistazo a ver qué tal.
No recuerdo cómo me encontré con ese nombre en específico, pero a partir de él valoré la otra variante, que es Compiz (Beryl es un fork de Compiz). Sin embargo Compiz requiere Xgl y Gnome. Beryl puede correr en Xorg 7.1 gracias a AIGLX.
Para empezar, Beryl no está en el portage. Al menos no logro que aparezca. Luego tengo el problema de que mi Xorg por alguna razón no ejecuta ciertas aplicaciones OpenGL, a pesar de que glxgears corre y glxinfo reporta Direct Rendering habilitado.
De todas formas aún no pierdo las esperanzas, hoy le pondré un poco de ganas otra vez a ver qué me sale.

miércoles, octubre 11, 2006

Opening de Naruto

Vía el blog de raruto acabo de ver lo que dice ser el opening #9 de Naruto. De paso, también el ending. Aunque está bueno, no llega a la altura de Haruka kanata. Más que la música lo interesante es el look y que vemos a Naruto entrenando con Neji y Rock Lee. El ending, pues nada del otro mundo. Y por supuesto, nada en cuanto al fin del relleno, así que habrá que esperar a ver qué sucede.

lunes, octubre 09, 2006

Conquer Online

Hace un buen tiempo, cuando probé Mu Online, alguien me señalaba la falta de contenido de los juegos online asiáticos. Más o menos por ese camino va Conquer Online, de la misma compañía si no ando equivocado. Aunque ambos juegos destacan en el apartado visual con unos escenarios sencillos pero llenos de colorido y una variedad casi infinita de aspectos para los personajes, luego de una semana de juego el aburrimiento se impone. Muy pocas cosas que hacer, muy pocos objetos, muy pocas habilidades y el hueco entre una y otra es de decenas de adormecedores niveles. Ni siquiera proyectos open source de bajo presupuesto adolecen de tal escasez creativa.

sábado, octubre 07, 2006

Las Crónicas de Belgarath

Gracias a mi amiga Daisita (¡que nunca se te caiga el pelo de los pies!) conseguí esta serie , de David Eddings. Ya Arturo Pérez-Reverte se me estaba haciendo pesado de leer y la siguiente opción era dispararme las Crónicas Vampíricas de la Rice.
Aunque me ocasiona un cierto deja vu y a ratos me parece que estoy leyendo La Rueda del Tiempo vuelta a escribir, el estilo es un poco más fresco y con algo de humor en los diálogos. Los libros no son tan largos, la trama no se diversifica innecesariamente a pesar de que los personajes centrales son varios y cada uno con su propia agenda, por decirlo de alguna manera. En fin, causa una buena impresión leerlo y atrapa luego que han pasado esas peligrosas primeras páginas que tanto trabajo cuesta vencer a veces.

martes, octubre 03, 2006

Método correcto para rascarse la oreja izquierda (según Microsoft)

  1. Levante la rodilla derecha hasta la altura del pecho.
  2. Pase el brazo izquierdo por debajo de la rodilla izquierda.
  3. Con la mano izquierda sujete firmemente el codo del brazo derecho.
  4. Sin soltar el codo, pase la mano derecha por detrás de la cabeza hasta alcanzar la oreja izquierda. Opcional: Puede ayudarse volteando la cabeza hacia la izquierda.
Bien ¿a qué viene todo esto? Pues sencillamente que luego de algunas indagaciones al fin he descubierto por qué rayos falla el enlace de las aplicaciones en el VC Express 2005.
Explico. Luego de instalar el SDK y configurarlo según las indicaciones, resulta que se produce un error de linkeo al no encontrar la librería msvcirtd.lib. Si buscas la librería está ahí, sólo que incluida en la plataforma AMD64. Interesante, ¿no? Y la solución es instalar un Visual Studio 6, y sacarla de ahí. Si tienes una sola PC y no quieres desinstalar tu VC Express, tengo entendido que basta con que instales Visual Basic 6.
Hay un problema similar con Visual Studio .Net 2003.