
Tutorial para convertir personajes de Half-Life (formato .MDL) a personajes de Entidad 3D (formato .ACT):
¿ Que necesitamos ?:
En cuanto a software:
Programa MilkShape 3D (no incluido en Entidad 3D ni en Genesis3D).
Un programa de edición gráfica 2D tipo Gimp o Adobe Photoshop (no incluido en Entidad 3D ni en Genesis 3D).
Programa Actor Studio (incluido en Genesis3D).
Programa Actor Viewer (incluido en Genesis3D).
Otros ficheros:
Fichero .MDL que contiene el personaje que queremos convertir (encontrarás muchos por Internet).
Ficheros .SMD que contienen las animaciones que queremos aplicar al personaje (incluidos en este tutorial).
Ficheros .MOT que nos servirán como nombres de animaciones (incluidos en este tutorial).
Preparando una carpeta de trabajo:
Creamos una nueva carpeta donde realizaremos todo el trabajo de conversión, por ejemplo la creamos como
'C:\conv_personajes'.
Dentro de esta carpeta creamos otra carpeta, por ejemplo llamada 'animaciones', con
lo que tendremos 'C:\conv_personajes\animaciones'.
Descargamos el fichero de animaciones de este tutorial (
animaciones.zip)
Descompactamos este .ZIP en 'C:\conv_personajes\animaciones'.
Copiamos el fichero .MDL a convertir en 'C:\conv_personajes', para nuestro ejemplo utilizaremos el
fichero 'salma.mdl'.
Descompactando el fichero .MDL:
Un fichero de personaje .MDL de Half-Life (formato por otro lado también utilizado por el juego Counter Strike), en realidad es un
archivo empaquetado (no en formato ZIP) que contiene toda la geometría, esqueleto, texturas y animaciones
de un personaje en concreto.
Este tipo de fichero no lo puede abrir directamente el programa MilkShape 3D, sino que necesitaremos
descompactar todo el contenido del fichero .MDL antes de poder tratarlo.
Para descompactar 'salma.mdl':
Abrimos el programa MilkShape 3D.
Utilizamos la opción de la barra de menú 'Tools \ Half-Life \ Decompile Normal HL MDL File...':

Seleccionamos el .MDL que queremos descompactar:

El cuadro que nos aparece lo dejamos así:

Ahora tendremos en la carpeta 'C:\conv_personajes' un fichero .smd que en nuestro ejemplo será 'salma.smd',
pero te puedes encontrar que el nombre de este fichero ni siquiera sea el mismo nombre que el del .MDL, el caso
es que aparezca un .smd.
También, en la misma carpeta, nos habrán aparecido todas las texturas en formato .BMP que utiliza ese personaje.

Editando las texturas del personaje:
En nuestro ejemplo nos han aparecido dos texturas ('alpha.bmp' y 'salma2.bmp') que podremos modificar a
nuestro gusto con nuestro programa preferido de edición 2D.
También en este punto es donde tendremos que adecuar las dimensiones de las texturas a las obligatorias
para Entidad 3D, que son:
64 x 64
128 x 128
256 x 256
Así que si ves alguna textura que se sale de esas dimensiones (que es muy habitual) tendrás que redimensionarla.
Es posible que en ocasiones un personaje acepte una dimensión intermedia como podría ser 128x256, pero
no es seguro que el personaje luego funcione en Entidad 3D.
También es obligatorio que todas las texturas tengan una paleta de sólo 256 colores por textura.
Cargado el personaje en MilkShape 3D:
Una vez arregladas las texturas ya estamos en disposición de cargar el personaje en MilkShape 3D.
Para ello utilizamos la opción de la barra de menú 'File / Import / Half-Life SMD":

Seleccionamos el fichero .SMD, en nuestro ejemplo 'salma.smd':

El siguiente cuadro lo dejamos como está por defecto:

Al validar el anterior cuadro aparecerá nuestro personaje en cuatro vistas:

A partir de aquí hay miles de cosas que se pueden hacer dentro de MilkShape 3D, pero como esto no es
un tutorial de MilkShape 3D ... pues voy a ir directo a lo que nos interesa en este tutorial.
Exportando nuestro personaje al formato .BDY:
Ahora tenemos que salvar todo nuestro personaje (geometría, esqueleto y texturas) a un formato que
pueda entender Actor Studio, que es el programa que que finalmente utilizaremos para montar todo nuestro
fichero .act definitivo.
Para crear el .BDY:
Utilizamos la opción de la barra del menú 'File / Export / Genesis3D BDY...':

En el cuadro que nos solicita un nombre de fichero ponemos en nuestro caso 'salma':

Esto nos habrá creado el archivo 'salma.bdy'.:

Aplicando animaciones a nuestro personaje:
El fichero .BDY que acabamos de crear no contiene ningún tipo de información acerca de las animaciones
disponibles para este personaje, a continuación procederemos a añadirle una serie de animaciones predefinidas.
La cantidad y el tipo de animación que queremos añadir a un personaje puede variar en función de la cantidad
de animaciones que deseamos para ese personaje o de las necesidades que impone el 'software' donde evolucionará
el personaje.
En el caso del uso de estos personajes en Entidad 3D son obligatorias las siguientes animaciones:
'Idle' para una posición estática del personaje.
'Shoot' el personaje disparando.
'Walk' el personaje andando.
'Run' el personaje corriendo.
'Die' el personaje muriendo.
'Die_de_frente' el personaje muriendo de otra forma.
'Die_rodilla' el personaje muriendo de otra forma.
'Die_vueltas' el personaje muriendo de otra forma.
'Hit' el personaje recibe un impacto.
La cantidad de animaciones que podremos añadirle a un personaje (y que funcionen bien) también depende de la
cantidad de ficheros de animación .SMD que tengamos. ¿ Qué donde están esos ficheros ?. Pues son los que incluye
el archivo 'animaciones.zip' y que hemos descompactado en la carpeta 'C:\conv_personajes\animaciones'.
En este caso este conjunto de ficheros .SMD nos proporcionarán 40 animaciones distintas
(las obligatorias de Entidad 3D incluidas) que dotarán a nuestros personajes de diferentes acciones dentro del juego.
Yo personalmente siempre les aplico el máximo de animaciones que tenga disponibles, aunque luego no las
utilice todas en un juego, para disponer de personajes con una cantidad de animaciones suficientemente
variada para realizar numeras acciones en futuros proyectos.
A continuación vamos a ver como aplicar una de estas animaciones al personaje que ya tenemos cargado en
MilkShape 3D. Este proceso lo deberás realizar de la misma forma para todas las animaciones que quieras
añadir al personaje.
Vamos a añadir la animación de andar al personaje que tenemos cargado en MilkShape 3D:
1.- Volvemos a utilizar la opción de importación de Half-Life 'File / Import / Half-Life SMD' ...

... pero esta vez, al solicitarnos el fichero .smd, nos dirigimos a nuestra carpeta 'animaciones' y
seleccionamos 'walk.smd' de entre todas las animaciones posibles:

2.- En la siguiente ventana que nos aparece simplemente pulsamos 'Si':

La animación ya se ha aplicado a nuestro personaje y lo que vamos a hacer ahora es exportar esta
animación en concreto a un formato que entienda Actor Studio, que será un archivo .MOT por animación.
3.- Utilizamos la opción de la barra de menú 'File / Export / Genesis3D MOT...':

4.- En el cuadro que nos solicita un nombre de fichero, seleccionamos para el caso de esta
animación, 'Walk.mot' de entre todos los ficheros .mot disponibles:

5.- Confirmar reemplazar este fichero:

6.- Finalmente borramos de la memoria esta animación:

Pues ya está creada esa animación para este personaje.
Para aplicarle otra animación tendríamos que volver a realizar lo mismo a partir del punto 1.- y
variando el nombre de la animación .smd al importar y del .mot al exportar.
Montando el fichero .ACT:
Pues ahora sólo nos queda montar nuestro fichero .act a partir del fichero .BDY
que hemos creado y del conjunto de ficheros .MOT que definirán las animaciones.
Creamos otra carpeta dentro de 'C:\conv_personajes\' que la llamaremos como nuestro personaje, en
nuestro ejemplo 'salma'.
Abrimos el programa 'Actor Studio':

Para crear un nuevo proyecto para nuestro personaje utilizamos la opción 'File / New':

Pulsamos en el botón 'Browse' y nos dirigimos a la carpeta 'conv_personajes' donde
seleccionaremos la carpeta que hemos creado anteriormente, en nuestro ejemplo 'salma':

Una vez dentro de la carpeta de nuestro personaje, introducimos el nombre del personaje como
nombre de fichero que nos solicita para el nuevo proyecto:

Una vez pulsado en 'Guardar' en la ventana anterior, nos aparecerá la siguiente ventana donde
deberemos desseleccionar 'Use Proyect Directory' y luego pulsar 'OK':

Una vez pulsado 'OK' tendremos acceso a una serie de pestañas.
Para la pestaña 'Target' no realizaremos nada, si hemos seguido correctamente todos los pasos
tendremos en la caja 'Output file' el nombre de nuestro personaje .act, que será en nombre de fichero
final de nuestro personaje:

Para la pestaña 'Body' utilizamos el botón 'Browse' para seleccionar el fichero .BDY que tenemos
en la carpeta 'conv_personajes', en nuestro ejemplo 'salma.bdy':

Para la pestaña 'Motions' pulsamos el botón 'Add' para añadir en nombre de la primera animación,
para el ejemplo que nos ocupa añadiremos la animación de andar poniendo 'Walk' en la caja 'Enter motion name':


Con la animación 'Walk' seleccionada pulsamos el botón 'Browse' y nos dirigimos a la carpeta
'animaciones' donde hemos salvado las animaciones .mot para este personaje y seleccionamos 'Walk.mot':

Pues ya tenemos una animación preparada, ya sabes lo que te toca para ir añadiendo todas las animaciones
.mot que hayas salvado para este personaje. Tendrías que volver a pulsar 'Add' y volver a realizar el
mismo proceso para cada animación.
Es muy importante que en nombre que entres en la caja 'Enter motion name' sea exactamente igual que el
del fichero .mot al que va asociada esa animación.
Una vez creadas todas las animaciones pulsamos en el botón 'Build' para que comience la creación
del fichero .act:

Si todo ha ido bien nos aparecerá este cuadro:

... y en la carpeta 'conv_personajes\salma' (en nuestro ejemplo) tendremos el fichero .act completamente
creado y listo para utilizar en Entidad 3D.
Si ha habido algún problema en la creación del .act en Actor Studio, nos aparecerá este cuadro:

Si ha habido algún error nos lo mostrará en el terminal. Normalmente los errores son porque el
programa no encuentra los ficheros .mot que no existen o los hemos asociado a carpetas incorrectas:

Sólo nos queda una prueba final para comprobar que el personaje funciona correctamente, prueba que
podremos realizar cargando el personaje con el programa 'Actor Viewer' y allí probando sus animaciones,
rotándolo o examinando como han quedado aplicadas las texturas:

Si al cargar el personaje con 'Actor viewer' te sale un mensaje como el siguiente, es que has
utilizado unas texturas para este personaje con dimensiones que no son 64x64, 128x128 ni 256x256:

Si quieres conservar el proyecto creado sólo tienes que utilizar la opción 'File / Save'.
Pues eso es todo. No ha sido tan difícil ... ¿ no ? :)
*** F I N ***
(Descargar este tutorial)
tutorial_mdl_a_act.zip (900 Kbytes)
/// (C) Abril/2004 por Jordi Pérez \\\