modding con Blender: age of Empires i.

Comenzaremos descargando los programas necesarios. Los enlaces son para la plataforma Windows 32 bits:
1) Blender:
- instalar Python 2.5.2 http://www.Python.org/ftp/Python/2.5.2/Python-2.5.2.msi
- instalar última versión de Blender.
http://download.blender.org/
2) openglextractor:
http://members.chello, at/alexan/ogle/glxtractor.zip
3) visualizador del granny3d.
http://gr2decode, altervista.org/files/gr2_viewer.zip
Listado de juegos que podemos utilizar con el visualizador granny3d.
http://gr2decode, altervista.org/gamelist.html
4) extractor de archivos.bar (donde se encuentran los recursos del juego)
http://forums.heavengames.com/redir/...les/aoe3ed.exe
Esta herramienta incluye un conversor de archivos.ddt a.tga.
5) también utilizo un visualizador de imágenes http://www.xnview.com
Creamos una carpeta temporal en el directorio raíz donde añadiremos los programas necesarios.

Clic en la imagen para ver su versión completa. 

Nombre: 1.jpg 
Visitas: 1575 
Tamaño: 52.2 KB 
ID: 166341


Extraemos los 3 archivos en la misma carpeta y los eliminamos.

Clic en la imagen para ver su versión completa. 

Nombre: 2.jpg 
Visitas: 1579 
Tamaño: 99.1 KB 
ID: 166342


Buscamos los archivos. Bar dentro de la carpeta del juego. Para esto, he utilizado el visualizador xnview en lugar del buscador del Windows Vista.

Clic en la imagen para ver su versión completa. 

Nombre: 3.jpg 
Visitas: 1508 
Tamaño: 77.6 KB 
ID: 166343

Clic en la imagen para ver su versión completa. 

Nombre: 4.jpg 
Visitas: 1525 
Tamaño: 75.9 KB 
ID: 166344


Seleccionamos todo y copiamos a la carpeta del proyecto.

Clic en la imagen para ver su versión completa. 

Nombre: 5.jpg 
Visitas: 1583 
Tamaño: 102.3 KB 
ID: 166345


Antes de comenzar, vamos a crear dos carpetas, una para guardar las mallas y otra para guardar las texturas.

Clic en la imagen para ver su versión completa. 

Nombre: 6.jpg 
Visitas: 1550 
Tamaño: 44.9 KB 
ID: 166346

Clic en la imagen para ver su versión completa. 

Nombre: 7.jpg 
Visitas: 1600 
Tamaño: 48.1 KB 
ID: 166347


Lanzamos el extractor de archivos.bar llamado archiveviewer, exe y abrimos art1.bar para extraer todo en la misma carpeta.

Clic en la imagen para ver su versión completa. 

Nombre: 8.jpg 
Visitas: 1552 
Tamaño: 116.7 KB 
ID: 166348


Hacemos lo mismo con art2.bar y ar3.bar, ya que en art1.bar no se encuentran todas las texturas de las mallas.

En font, bar encontraremos varios tipos de fuentes de texto y en sound, bar una colección de sonidos en formato.wav.

Este sería el resultado.

Clic en la imagen para ver su versión completa. 

Nombre: 9.jpg 
Visitas: 1483 
Tamaño: 50.7 KB 
ID: 166349


Las mallas en formato.gr2 junto a sus texturas en formato.ddt se encuentran en las carpetas buildings, homecity, objects, Terrain y units.

En la carpeta cursors encontraremos una colección de cursores para el ratón del ordenador.

Antes de visualizar las mallas con el granny viewer, vamos a convertir los archivos.ddt a.tga.

Primero realizaré una búsqueda de los archivos.ddt en la carpeta art desde el xnview.

Clic en la imagen para ver su versión completa. 

Nombre: 10.jpg 
Visitas: 1519 
Tamaño: 86.2 KB 
ID: 166350


Seleccionamos todo y lo copiamos a la carpeta texturas creada anteriormente.

Clic en la imagen para ver su versión completa. 

Nombre: 11.jpg 
Visitas: 1558 
Tamaño: 51.6 KB 
ID: 166351


Con la herramienta fileconverter, exe seleccionamos todos los archivos.ddt de la carpeta texturas para convertirlos a.tga.

Clic en la imagen para ver su versión completa. 

Nombre: 12.jpg 
Visitas: 1534 
Tamaño: 165.1 KB 
ID: 166352


Ahora, en la carpeta texturas eliminamos todos los archivos.ddt dejando solamente los archivos.tga, que son los que utilizaremos con Blender.

Sólo falta convertir el formato de la malla.gr2 a un formato que reconozca Blender. Para esto, vamos a utilizar glxtractor, exe. Elegimos la aplicación desde la cual visualizaremos las mallas.gr2 para realizar la captura, en este caso granny3d viewer.

Clic en la imagen para ver su versión completa. 

Nombre: 13.jpg 
Visitas: 1584 
Tamaño: 97.9 KB 
ID: 166353


Marcamos la opción capture texture cords.

Clic en la imagen para ver su versión completa. 

Nombre: 14.jpg 
Visitas: 1526 
Tamaño: 89.7 KB 
ID: 166354


También establecemos a la carpeta mallas, creada anteriormente, como destino de las capturas del proceso y, aunque es opcional, el nombre del archivo (*.obj) por captura. Guardamos los cambios realizados pulsando el botón save.

Vemos que la combinación de teclas utilizadas para realizar la captura es Control + mayúsculas+f.

Pulsamos el botón start application para iniciar el proceso.

Clic en la imagen para ver su versión completa. 

Nombre: 15.jpg 
Visitas: 1487 
Tamaño: 86.1 KB 
ID: 166355


Ya desde el granny viewer abrimos un archivo.gr2 seleccionando la opción load file, desde una de las subcarpetas que encuentran dentro de art.

Clic en la imagen para ver su versión completa. 

Nombre: 16.jpg 
Visitas: 1477 
Tamaño: 46.2 KB 
ID: 166356

Clic en la imagen para ver su versión completa. 

Nombre: 17.jpg 
Visitas: 1514 
Tamaño: 68.1 KB 
ID: 166357


Antes de realizar la captura voy a eliminar los ejes, la rejilla y resetear la orientación de la malla.

Aquí dejo unas imágenes del proceso.

Clic en la imagen para ver su versión completa. 

Nombre: 18.jpg 
Visitas: 1502 
Tamaño: 104.9 KB 
ID: 166358

Clic en la imagen para ver su versión completa. 

Nombre: 19.jpg 
Visitas: 1580 
Tamaño: 112.4 KB 
ID: 166359

Clic en la imagen para ver su versión completa. 

Nombre: 20.jpg 
Visitas: 1461 
Tamaño: 87.6 KB 
ID: 166360


Finalmente, volvemos al menú inicial para realizar la captura de pantalla pulsando Control + mayúsculas+f.

Anotación: para visualizar las mallas debemos estar situados en la pestaña scene preview. Si queremos seguir realizando nuevas capturas de otras mallas debemos pulsar sobre clear all, es decir limpiar todo, para limpiar el escenario. A continuación, pulsamos sobre load file para cargar la nueva malla.

Clic en la imagen para ver su versión completa. 

Nombre: 21.jpg 
Visitas: 1418 
Tamaño: 33.8 KB 
ID: 166361

Clic en la imagen para ver su versión completa. 

Nombre: 22.jpg 
Visitas: 1446 
Tamaño: 64.0 KB 
ID: 166362


Cerramos la aplicación granny viewer y desde Blender abrimos el archivo (*.obj) que se encuentra en la carpeta mallas.

Clic en la imagen para ver su versión completa. 

Nombre: 23.jpg 
Visitas: 1459 
Tamaño: 35.7 KB 
ID: 166363


Durante la captura se han guardado formas que no forman parte del objeto 3d que estamos tratando.

Si nos acercamos al centro del escenario haciendo un zoom con la rueda del ratón y rotamos la vista manteniendo pulsada la rueda del ratón mientras lo desplazamos, podremos localizar el edificio representado por el objeto 3d.

Clic en la imagen para ver su versión completa. 

Nombre: 24.jpg 
Visitas: 1500 
Tamaño: 38.4 KB 
ID: 166364


Desde modo objeto selecciona la malla con el bdr (botón derecho del ratón) para cambiar a modo edición, donde de-seleccionamos todo pulsando a, y a continuación seleccionamos las partes de la malla que representan el edificio utilizando la orden del menú select--> border select o pulsa tecla de acceso rápido b.

Clic en la imagen para ver su versión completa. 

Nombre: 25.jpg 
Visitas: 1388 
Tamaño: 75.2 KB 
ID: 166365


Invertimos la selección con la orden del menú select-->inverse o pulsar Control + i, para eliminar el resto de la malla pulsando la tecla.

Suprimir y seleccionando la opción Faces, es decir caras.

Clic en la imagen para ver su versión completa. 

Nombre: 26.jpg 
Visitas: 1424 
Tamaño: 35.4 KB 
ID: 166366

Clic en la imagen para ver su versión completa. 

Nombre: 27.jpg 
Visitas: 1466 
Tamaño: 29.3 KB 
ID: 166367


El edificio esta formado por dos partes. Si seleccionamos ambas partes por separado podremos ver las coordenadas del mapeado desde la ventana del UV/Image Editor.

Clic en la imagen para ver su versión completa. 

Nombre: 28.jpg 
Visitas: 1469 
Tamaño: 133.5 KB 
ID: 166368


En el mapeado de la imagen superior apreciamos que la base del edificio esta proyectada de tal forma que abarca toda la zona del mapeado, superponiéndose a otras zonas del edificio. Esto significa que la base del edificio utiliza una textura diferente al resto.

Clic en la imagen para ver su versión completa. 

Nombre: 29.jpg 
Visitas: 1636 
Tamaño: 128.9 KB 
ID: 166369


En cambio, en el mapeado de la otra parte del edificio no encontraremos ese problema, para encontrar las texturas que utiliza esta malla he buscado en la carpeta texturas los archivos que contienen la palabra church con xnview, estas serían las texturas a utilizar.

Clic en la imagen para ver su versión completa. 

Nombre: 30.jpg 
Visitas: 1512 
Tamaño: 111.6 KB 
ID: 166370


Desde Blender.

Clic en la imagen para ver su versión completa. 

Nombre: 31.jpg 
Visitas: 1465 
Tamaño: 68.3 KB 
ID: 166371


Después de abrir la imagen, esta no aparece en la ventana del UV/Image Editor, pero sí aplicada sobre la malla. Vemos que la disposición de la textura sobre la malla esta invertida verticalmente por lo tanto, habrá que invertir verticalmente (eje y) el mapeado. (con el puntero del ratón sobre la ventana del UV/Image Editor pulsa a hasta seleccionar todo, a continuación, ejecuta la orden del menú UVS-->mirror-->y axis).

Clic en la imagen para ver su versión completa. 

Nombre: 32.jpg 
Visitas: 1514 
Tamaño: 102.0 KB 
ID: 166372


Seleccionamos la otra parte de la malla donde tendremos que deseleccionar las zonas que comprenden la base del edificio. Para esto marcamos el botón Sync UV and Mesh selection, es decir sincronizar vista del mapeado y malla seleccionada, y desde la ventana 3d de-seleccionamos utilizando border select en su forma circular pulsando dos veces consecutivas la tecla b. Para deseleccionar vértices con esta herramientas establece la circunferencia de selección girando la rueda del ratón y pulsar ese mismo botón para deseleccionar.

Clic en la imagen para ver su versión completa. 

Nombre: 33.jpg 
Visitas: 1500 
Tamaño: 183.3 KB 
ID: 166373


También tendremos que invertir las coordenadas del mapeado verticalmente.

Clic en la imagen para ver su versión completa. 

Nombre: 34.jpg 
Visitas: 1462 
Tamaño: 165.3 KB 
ID: 166374


Utilizando la misma herramienta de selección circular, seleccionamos la zona que corresponde a la base del edificio y abrimos la imagen donde se encuentra la textura.

Clic en la imagen para ver su versión completa. 

Nombre: 35.jpg 
Visitas: 1612 
Tamaño: 165.6 KB 
ID: 166375


Después de abrir la imagen vemos que mientras en la ventana del UV/Image Editor sigue apareciendo la textura anterior, sobre la malla sí se a aplicado la nueva textura (tendremos que invertir verticalmente las coordenadas del mapeado de nuevo). Pulsamos sobre el botón con la imagen de un paquete, para empaquetar la imagen en el (*.blend) de la malla.

Finalmente, establecemos un nombre a la malla (me) y al objeto (ob) que utiliza Blender, y eliminamos el material creado durante la importación del archivo.obj.

Clic en la imagen para ver su versión completa. 

Nombre: 36.jpg 
Visitas: 1938 
Tamaño: 76.0 KB 
ID: 166376


Para crear un nuevo material que nos sirva en la utilización del modelo 3d desde un motor de juego, donde marcamos el botón Texface.

Clic en la imagen para ver su versión completa. 

Nombre: cats.jpg 
Visitas: 1469 
Tamaño: 92.2 KB 
ID: 166377


El ejemplo utilizado ha sido obtenido desde la carpeta art\homecity y se trata de un edificio con dos puntos de vista diferentes, donde se han eliminado algunas de sus partes para reducir el número de polígonos ya que durante el juego se mantiene un ángulo de visión fijo.

Si buscamos edificios cerrados totalmente, debemos buscar en la carpeta art\buildings.

-- IMÁGENES ADJUNTAS --