Comunidad de diseño web y desarrollo en internet

Tutorial de instalación y uso de FAMES

En primer lugar hay que dejar las cosas claras, ESTO NO ES PARA PRINCIPIANTES, si acabas de empezar con Flash, eres diseñador o simplemente no estas familiarizado con el AS2.0 puedes leer esto (te hará ver que hay otro mundo detrás), pero no esperes entender mucho. Así mismo mi intención no es la de traducir lo ya escrito, si no la de rescribirlo con mis propias experiencias, aprovechando para castellanizar los mas contenidos posibles.

osFlash u openSourceFlah, Carlos Rovira lo llama "FAMES", (Flashout - ASDT - MTASC - Eclipse - Swfmill) un nombre bastante "comercial" y aceptado por la comunidad - personalmente a mi me gusta bastante. FAMES es una alternativa a MM Flash libre y open source, que se basa en el entorno de desarrollo Eclipse, junto con algunos plugins y programas extra.

Eclipse
Es un excelente IDE para lenguajes de todo tipo, sobretodo usado para Java, pero a través de plugins puedes hacer que compíle de todo. Entre otras funciones destacan compilación mientras se escribe, coloración del código y una robustez exquisita

Flashout y ASDT
Básicamente proveen los plugins necesarios para Eclipse

MTASC
Motion Tween Action Script Compiler, es el "compilador" de nuestros sueños, una insuperable rapidez de trabajo

Swfmill
Es un "XML2SWF2XML" Lo que hace Básicamente es traducir un XML en un SWF y los SWF en XML... la sintaxis es increíblemente fácil, sirve para agregar "objetos" a nuestros swf que posteriormente usaremos.

INSTALACIÓN de todo este rollo.

Se necesita

  • Un amigo con Flash
  • "Buena conexión a Internet ... o paciencia; en su defecto un amigo con los dos requisitos, ya que eclipse con unas cuantas megas y el JDK también.

ECLIPSE
Primero necesitaremos instalar Eclipse y el JDK de Java Una vez descomprimido todo e instalado el JDK, quizás debas añadir una variable a tu sistema, [en Windows - Inicio >> Panel de Control >> Sistema >> Opciones Avanzadas >> Nueva "JAVA_HOME" y como valor ka ruta donde este nuestro JDK - a mi no me hizo falta, pues Eclipse funcionaba perfectamente sin hacer esto - ]

MTASC
Bajate el programita Y lo descomprimes donde quieras, pero recuerda la ruta! RiendoRiendo

Flashout
Bajate el flashout , lo descomprimes y encontraras un "Flashout.as" y una carpeta "Plugins". En la carpeta encontraras algo como "com.potapenko.flashout_0.1.7.9" COPIALA a la carpeta "Plugins" de Eclipse [estará en el directorio donde lo instalaste]
Copia el archivo Flashout.as a la carpeta de las clases de MM Flash (Aquí en donde interviene tu amigo, si no tienes flash le pides que te copie la carpeta, en windows suele estar por:

C:\Documents and Settings\USUARIO\Configuración Local\Datos de programa\Macromedia\Flash MX 2004\es\Configuration\Classes

En Mac suele ser:

/Users/USUARIO/Library/Application Support/Macromedia/Flash MX 2004/es/Configuration/Classes

Ahora Re-inicia Eclipse o abrelo si lo tenias cerrado
Ve a Preferences → Flashout → Compilation.
(si no te aparece tendrás que ejecutar eclipse con " -clean" desde la línea de comandos)
Después en el panel de flashout rellenas los datos (no es muy difícil no) Donde esta el MTASC y las clases de MM.

AS Development Tool (ASDT)
Bajate el plugin Veras una carpeta org.asdt_0.0.7" o similar (ya saben... las versiones!). Copiala a la carpeta de plugins de eclipse (como la otra)
RE-inicia eclipse y ve a Preferences → ActionScript 2 → MTASC.
Selecciona “Use MTASC Compiler to check ASFiles”. Y Después vuelves a rellenar los path de donde dejaste las clases de MM y el MTASC. Nos vamos a Window >> Customize perspective y seleccionamos ActionScript. Hasta aquí todo bien no?

Nota: Cuando se inicia un nuevo proyecto ASDT tienes que añadir un "." en el classpath (en MAC no hace falta) Project → Preferences → ActionScript 2 Project Preferences y añade "." (sin comillas)

swfmill
Bajate el programita Extraelo donde quieras, funciona solo, ejemplo de uso (Desde MSDOS o una terminal):

swfmill simple tuArchivo.xml elOutPut.swf 

Con esto ya tienes tu pack completo para empezar a trabajar!

Creando la primera aplicación SWF en FAMES

Después de instalar FAMES estarán ansiosos de poder probarlo. Lo mejor es que partan de cero, en vez de intentar compilar algo que ya tengan hecho en flash... y es que la cosa cambia un poquillo. Así que les daré la bienvenida al "tutorial de entrenamiento de hordas asesinas"

Lo primero que haremos será abrir Eclipse, creamos un nuevo proyecto de AS2.0 con el nombre que queramos.

Ahora abrimos Flash, un nuevo documento, creamos un botón con forma de conejito y lo llamamos 'bt', lo metemos dentro de un MC que llamamos 'bunny' y exportamos para uso en AS. Publicamos la película como 'bunnies.swf' y la metemos (el swf al menos) en el directorio del proyecto de AS en Eclipse.
Pantallazo de como debe quedar en Flash


Volvemos a Eclipse, actualizamos el "navegador" de proyectos que lleva para que salga nuestro swf a la vista. Creamos un nuevo archivo de As en Eclipse que llamamos bunnyTest.as y le metemos este código

class bunnyTest 
{
/*Aun no entiendo muy bien esto pero parece ser
que hay problemas al referirse a _root directamente */

private var tg : MovieClip;
//Una variable que usaremos
var tmp : MovieClip;
//Esto seria el equivalente a lo que pusieramos en un frame
function bunnyTest (target : MovieClip)
{
tg = target;
//Creamos un campo de texto y le ponemos un texto
tg.createTextField ("tf", 0, 100, 100, 800, 600);
tg.tf.text = "We Are Ninjas !!";
for (var i = 0; i < 5; i ++)
{
//Atacheamos la movie de la biblioteca
tmp = tg.attachMovie ("bunny", "ninjaBunny" + i, 1000 + i );
//La movemos
tmp._x = 70 * i;
//Cambiamos su tamaño
tmp._xscale = tmp._yscale = 40;
//Le metemos algunas variables al botón
tmp.bt.idNinja = i;
tmp.bt.tg = tg;
//Escribimos el código del botón
tmp.bt.onRelease = function ()
{
//Que cambie el texto que habiamos puesto antes
this.tg.tf.text = "I'm the Ninja #" + this.idNinja;
};
Flashout.log ("Creado el Conejito #" + i);
}
}
/* Esto es estilo JAVA! una función MAIN que se ejecutara sola
Esta es la que se encargara de "iniciar" nuestras funciones"*/

static function main ()
{
var test : bunnyTest = new bunnyTest (_root);
}
}

Lo guardamos, ahora creamos un nuevo "Archivo" (File a secas) en Eclipse, lo llamamos bunnyTest.flashout [es importante escribir la extensión .flashout] Nos saldrá una especie de "preview" que por el momento no da un error, abajo hay unas pestañitas, vamos a la de "Compilation status/preferences". Ahí como "Path to SWF" metemos la ruta de nuestro bunnies.swf como "Root (main) Class" metemos la de nuestro bunnyTest.as y le damos a "Try Compile" o "Compile" como nos guste. Debería de funcionar.
Pantallazo del flashout

El fondo sale Blanco y el SWF se reescala en Eclipse, si queremos ver como se ve pues doble click en nuestro archivo bunnies.swf y listo.
Pantallazo funcionando!

Al MTASC se le pueden pasar parámetros para que CREE ( " -header ancho:alto:fps ") un nuevo swf, o dejarlo así y usara el ya existente. En este tutorial no se habla del uso de SwfMill, con el cual podríamos haber hecho lo mismo que con Flash, pero no quería complicar mucho la cosa para este "Primer Contacto" con FAMES. Lo que de verdad tienen que sacar debajo de todo esto es de la facilidad con la que se pueden desarrollar aplicaciones en FAMES con una ayudita de Flash [para no complicarse con swfmill por el momento]

Por ultimo decir que pueden encontrar tutoriales de este tipo en la web oficial de FAMES Lo único que se pide es :
-Ser consecuente con las preguntas referentes al tutorial (no me vengáis a como se hace una precarga en FAMES porque es lo mismo que flash)
-Si pueden ayudennos a mejorar la comunidad aportando material, conocimientos o simplemente reportando bugs que encuentren.


NOTAS REFERENTES AL TUTORIAL
Este tutorial NO es mío (solo en parte), yo solo me he dedicado a "traducir" MUY libremente el tutorial que pueden encontrar aquí

Algunos links interesantes
osFlash.org Web Oficial del proyecto, con links a todas y cada una de las aplicaciones necesarias, tutoriales y mas información
Introducción a FAMES por parte de Carlos Rovira
FlashAnt Pagina con multitud de tutoriales e información referente al tema, por parte de Aral Balkan

NOTAS
-Yo lo he intentado probar en linux, supuestamente todo debería de ir bien. En la lista de correo de osFlash me dicen que efectivamente todo funciona bajo linux, así que supongo que mi distro anda rota ( Mi fallo era con el plugin flashout )
-El siguiente paso en el desarrollo es convertirlo en FLAMES , la L es de Library, por lo visto Aral Balkan se esta leyendo un libro del tamaño de un mamut para desarrollar un plugin que permita tener una biblioteca de elementos incrustada en Eclipse. Seria algo parecido al ASAlter (no lo probé porque se necesita el runtime de .NET) pero incrustamos a modo de plugin.

USO DE FAMES Y OPINION PERSONAL
Al igual que cuando intentamos aprender linux nos repetíamos una y otra vez "No estoy en Windows" aquí tendremos que decir en voz alta:
" ESTO NO ES FLASH"
" ESTO NO ES FLASH"
" ESTO NO ES FLASH"

A que me refiero, bueno, FAMES carece de un sistema gráfico tal y como lo conocemos en flash de hecho NO es rentable para hacer animaciones ni nada parecido que requiera mucho timeline, aunque es posible no es rentable. Entonces ¿ Por que usar FAMES ? Sencillo, por su extrema rapidez a la hora de compilar, y porque os obliga a usar AS2.0, así como a enajenaros de la parte gráfica, es decir, con MTASC podemos compilar SOBRE un swf, respectando la parte gráfica, solo añadiríamos nuestras clases. Entonces Un diseñador y un programador podrían trabajar al mismo tiempo en un proyecto sin molestarse, no habría temas del oye mete este símbolo en la librería, o pon este código en tal frame de tal MC... por un lado tendríamos la parte gráfica en un swf que podrían ser esbozos y por el otro la programación, al final del día el programador recibiría un SWF con los gráficos mas terminados, compilaria encima y listo.

Si han trabajado con lenguajes específicos para juegos, como puede ser DIV/Fenix o AGS que hacen uso de un gran numero de gráficos, sabrían que estos gráficos se guardaban en "paquetes" asignándoles un numero, pues es el mismo sistema [bastante cómodo] pero en vez de paquetes usamos una librería Así mismo se podrían crear aplicaciones altamente "skinables" o personalizables pues la parte gráfica iría totalmente separada de la programación y podríamos trastear sin miedo a fastidiar algo de código

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Descargar Archivo

Publica tu comentario

El autor de este artículo ha cerrado los comentarios. Si tienes preguntas o comentarios, puedes hacerlos en el foro

Entra al foro y participa en la discusión

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate