INTRODUCCION
Con el programa ANIMATOR cualquiera puede producir animaciones en unos pocos minutos. Pero le llevara un poco mas de tiempo explorar todas las posibilidades de este programa. De hecho tu puedes tratar el programa de dos formas diferentes: como un simple programa de dibujo (con unos 20 comandos) o como un programa de dibujo complementado a la animacion. La mejor forma de empezar es trabajando la seccion 1 del manual, la cual te introduce en algunas posibilidades del ANIMATOR, pero con un simple ejemplo. Al final del manual hay una Guia Rapida de Referencia la cual da una ligera explicacion sobre el programa y sus comandos (controles, menus de opciones, mensajes de errror), todo lo cual ya ha sido detelladamente explicado en sus repectivas secciones. DEFINICION DE TERMINOS SECUENCIA DE ANIMACION: ANIMATOR trabaja de la misma forma que los dibujos animados. De hecho usando la palabra en su mas extenso sentido podriamos llamar al programa: el creador de dibujos animados. El nos muestra una secuencia de dibujos con la suficiente velocidad como para dar la sensacion de un continuo y suave movimiento. Cualquier dibujo sera denominado FRAME, y una secuencia de FRAMEs relacionadas sera una secuencia de animacion. Fijate que este manual usara indistintamente los siguientes terminos: animacion, secuencia de animacion y secuencia. COMPRIMIENDO: los ordenadores Amstrad usan 16k de memoria para almacenar lo que hay en pantalla. Si las pantallas de ANIMATOR se almacenaran de la misma forma, se necesitaria mas de una pantalla. Asi que comprime las pantallas para poder ajustar mejor la memoria. Cuando tu ejecutas (RUN) una secuencia de animacion, el programa primero comprime todas las FRAMEs en secuencia, para despues almacenarlas en memoria. Entonces muestra la secuencia descrompimiendo las FRAMEs sacando, incluso, mas de 25 por segundo. La rutina empleada para comprimir es muy complicada, utilizando diversas tecnicas y comandos para dejar libre la mayor cantidad de memoria. Entre otras cosas, se da cuenta de la repeticion de un particular byte de memoria, cogiendo una cuenta para el. Por ejemplo, en Mode 1 una linea o espacios o pixels en blanco son almacenados en la memoria de pantalla del Amstrad como 80 zeros. ANIMATOR los cuenta y los almacena en un solo byte. EN MEDIO: lo mejor de este programa es que apenas tienes que trabajar. Si tu haces un dibujo animado a mano, filmando cada FRAME por separado, te llevara un par de meses. Date cuenta que unas 25 FRAMEs son necesarias para un segundo de animacion. Con ANIMATOR tu solo necesitas dibujar (o copiar) dos FRAMEs para producir un segundo de animacion. El programa se encarga de generar las FRAMEs que hayan en medio. Este proceso se conoce con el nombre de EN MEDIO. PIXEL: un punto simple de pantalla. EJE X y EJE Y: los ejes X e Y son dos escalas para poder medir la posicion de los pixels en pantalla. Tu puedes pensar que el eje X es una linea horizontal que cruza por en medio de la pantalla y el eje Y una linea vertical. Alargando el eje X ensanchamos la figura, mientras que alargando el eje Y la hacemos mas alta. Seccion 1 - EMPEZANDO Empezando una nueva secuencia de animacion Carga ANIMATOR tecleando RUN "ANIMATOR" despues pulsa Return. Una vez cargado el programa accederas a la pantalla del menu principal. Para crear tu primera secuencia de animacion selecciona la opcion 1 (ANIMATE) pulsando la tecla 1. En la parte de abajo de la pantalla veras las palabras: Which Animation: (que animacion) seguido por el cursor (un cuadro coloreado). Dale a tu animacion un nombre tecleando la cadena de letras y/o numeros, de una longitud no superior a 8 caracteres. Si tu has cometido un error usa la tecla BORR para subsanarlo. Una vez este todo conforme pulsa RETURN para validar el nombre. El programa te preguntara entonces en que modo lo quieres. Pulsa 0 seguido de RETURN. De hecho hay otros tres modos, pero hemos puesto 0 para nuestro ejemplo. Ahora te encuentras en la pantalla de edicion. En la parte inferior de la pantalla hay una ventana que te da diversa infomacion sobre la actual FRAME, la capacidad de memoria, etc... En el medio de la pantalla hay dos lineas cortas cruzadas que forman el cursor de la pantalla de edicion. Cuando tu estas dibujando una linea el cursor te indica la posicion del lapicero. Mueve el cursor usando el joystick o las teclas de cursor. DIBUJANDO LINEAS Hay dos formas de dibujar lineas. Las letras DM en el panel indican en que modo estas. El primer modo (DM0) dibuja lineas separadas. Tu necesitas fijar el punto origen y el destino y estos se uniran por una linea recta. Selecciona el lugar de punto origen y pulsa COPY, despues selecciona el lugar destino y vuelve a pulsar COPIA. Date cuenta que hasta que selecciones el punto destino el cursor estara conectado por una linea que se ira desplazando como lo haga el cursor. Esto es conocido como banda de borrado y te muestra como apareceria la linea si la fijas tu puedes eleiminar esto presionando B pero no mientras el mensaje de LINE DRAW este presente en el panel. La segunda forma de dibujar lineas (DM1). Se activa despues de haber dibujado la primera linea solo necesitas pulsar Fire/COPY una vez al final de cada nueva linea. Para entrar en el modo DM1 pulsar M. Para abandonarlo pulsa ESC o, cuando hallas completado una linea, pulsa Fire/COPY. Para mayor detella en el dibujo el movimiento con SHIFT hace que el cursor se desplaze pixel a pixel. El movimiento con el espacio hace que este sea mas rapido. CREANDO DOS FRAME Cada FRAME puede contener mas de 500 lineas. Para este ejemplo utilizaremos solamente seis lineas. Dibuja seis lineas culesquiera en cualquier parte de la pantalla. En el panel el contador de lineas te indicara cuantas llevas. Date cuenta que el contador de lineas va desde el cero, o sea, la primera linea es la cero. Si no estas contento con una linea puedes borrarla con BORR. R restaura el ultimo borrado. Tu puedes limpiar toda la ventana pulsando L. Para prevenir borrados accidentales el programa te dira: SUR (Y/N)? (Seguro (si/no)) pulsa Y para confirmar que quieres borrar. Cuando tu hayas terminado tu primer FRAME pulsa ESC para entrar en el menu de animacion. Explicaciones sobre varias opciones de este menu seran dadas en otras partes del manual. En este nivel solo es necesario saber CURRENT FRAME (FRAME actual) indicador que esta en el medio de la pantalla. Tambien nos indica el numero de FRAMEs definidos. Ahora selecciona la opcion USE FRAME (utiliza FRAME) pulsando 7. Esta opcion te permite definir una nueva FRAME (o volver a una ya existente). En la parte baja de la pantalla veras la palabra FRAME seguida del cursor. Introduce 24 como numero de FRAME, si tienes algun error corrigelo con BORR. Cuando todo este bien pulsa RETURN. La opcion D (EDIT FRAME/edita FRAME) te llevara a la pantalla de edicion. Date cuenta que ahora indica que estas en el FRAME 24. Dibuja exactamente 6 lineas. Si en cualquier momento quieres volver atras a la FRAME 1, pulsa V para ver. ESC para volver al menu. Ir y volver de diferentes menus no destruye los FRAMEs existentes. ANIMANDO LA SECUENCIA Cuando tu hayas dibujado los dos FRAMEs tu podras animarlas seleccionando la opcion 6 (RUN) desde el menu principal. Las dos FRAMEs deben tener el mismo numero de lineas, el programa compactara y generara las 24 FRAMEs de la 1 a la 24 y nos las mostrara a maxima velocidad. Puede que tu lo encuentres demasiado rapido. Las posiciones de los cursores te servira para relentizarlo y el ESC para volver al menu. Si falta o sobra un linea un mensaje de errro aparecera (LINE EXTRA/LINE MISING). Pulsa D para entrar la FRAME actual y crea una nueva linea o borrala con BORR. INCLUYENDO OTRO FRAME Selecciona la opcion 7 otra vez para editar tu tercera FRAME. Puede ser la 12, o la 48, o la 100 (para cualquiera que pongas habra memoria suficiente). La mayor parte de memoria se gasta por la longitud de las lineas y de cuantas hay. Los usuarios 464 o 664 pueden encontrar que cuando el programa compacta de un mensaje de Out of Memory Si esto sucede acorta las lineas o selecciona un numero menor de lineas o selecciona un numero menor para tu tercer FRAME. Esto sera tratado con mas detalla en la guia de referencia rapida. Cuando entres en la ventana de edicion te daras cuenta de que ya hay algo dibujado. La razon es esta es la ultima FRAME que has hecho, el programa lo que hace es que toda nuevo FRAME se convierte ahora en una SEMI-KEY FRAME. SEMI-KEY FRAMEs seran explicadas en la siguiente seccion. En este nivel es conveniente convertirla en una FRAME pulsando K seguido de Y para confirmar. Entonces pulsa L para borrar la pantalla. EMPEZANDO DE NUEVO ANIMATOR te ofrece un largo numero de facilidades para improvisar, modificar, etc una secuencia de animacion. Tu puedes incluir o borrar FRAMEs, copiarlas, editar lineas, transformar dibujos, etc... Todas estas facilidades se explicaran mas adelante. Pero si tu quieres repetir este ejercicio introductorio selecciona l opcion 9 (RETURN) en el menu de animacion. Esto te volvera al menu principal, pulsa 1 y empieza una nueva animacion. Seccion 2 - LO MAS IMPORTANTE MENUS Y OPCIONES ANIMATOR tiene tres ventanas diferentes: el menu principal, el menu de animacion y la pantalla de edicion. El menu principal aparece nada mas es cargado el programa y nos da una lista de seis opciones (5 para los usuarios de casete) y en la parte baja de la pantalla vemos el nombre de la animacion corriente, si es que existe. Para seleccionar alguna opcion basta para pulsar el numero correspondiente a la opcion deseada. Algunas opciones necesitan que, a demas, introduzcas un numero o un nombre de fichero. Si aparece el cursor (un cuadro coloreado) necesitaras pulsar RETURN despues de haber escrito lo deseado. Para cancelar la opcion pulsa RETURN sin haber escrito nada. Antes de que puedas acceder a una de las otras dos ventanas tu necesitas introducir el nombre de la secuencia que vas a animar. Haz esto usando la opcion 1 (ANIMATE). Introduciendo el nombre de una secuencia ya existente entras en el menu de animacion, sino existe entraras en la ventana de animacion. Desde el menu de animacion la opcion D (EDIT) lleva al usuario a la pantalla de edicion. Pulsando ESC desde la pantalla de animacion nos devolvera al menu de edicion. Desde este usando la opcion 9 (RETURN) nos trasladara al menu principal. Todo esto sera mas explicado mas adelante y en la guia de referencia rapida. En este punto solo se tratan como notas introductorias. SECUENCIAS DE ANIMACION Una secuencia de animacion esta hecha por un numero indeterminado de FRAMEs. Cuando una secuencia es ejecutada ANIMATOR genera las FRAMEs existentes entre las dos definidas por el usuario y entonces anima la secuencia. No obstante tu puedes cargar y salvar secuencias desde disco, incluso solo un fichero que contenga una FRAME. Recuerda que como minimo es necesario dos FRAMEs para poder animar y cada FRAME debe tener el mismo numero de lineas. ANIMATOR puede tener mas de 24 secuencias de animacion diferentes si la memoria lo permite. La opcion 2 del menu principal borra una secuencia de la memoria. Despues de haber dado un nombre a la secuencia tu puedes cambiarlo pulsando 1 en el menu de animacion. SALVANDO Y CARGANDO El procedimiento para cargar y ejecutar una animacion es la siguiente: 1.-Si posees una unidad de disco y quieres seleccionar el casete pulsa 6 en el menu principal. 2.-Selecciona 4 (LOAD) e introduce el nombre de la secuencia de animacion seguido de RETURN 3.-Cuando el fichero haya sido cargado selecciona 1 (ANIMATE) y teclea el nombre de nuevo. 4.-Pulsa 6 en el menu de animacion para ejecutar la secuencia. Hay tres formas de salvar una secuencia. La opcion 4 (SAVE DATA) en el menu de animacion salva todos los datos necesarios para crear la secuencia actual. Esto consiste en los datos para cada linea en cada FRAME, los datos de color, y los datos para otros parametros como pausas y rotacion. No salva la FRAME propiamente dicha pues una vez el fichero ha sido cargado el program tiene que recompactar y crear las FRAMEs. La opcion 5 (SAVE DEMO) salva la secuencia entera, referida aqui como una DEMO, como una seria de FRAMEs comprimidas. Una DEMO puede ejecutarse inmediatamente. Pero no puede ser cargado directamente en el ANIMATOR. Las DEMOs son creadas para su ejecucion desde el modulo de ejecucion en tiempo real (desde BASIC). Esto se vera mas adelante. La opcion 3 (SAVE ALL) en el menu principal grava las animaciones de la misma forma que SAVE DATA, excepto que salva toda la animacion en memoria bajo un nombre. DEFINIENDO KEY FRAME Cuando una nueva secuencia es creada el programa automaticamente empieza en la pantalla de edicion. Cuando tu hayas definido tu primera FRAME, podras definir mas de otras 27 usando la opcion 7 (USE FRAME) en el menu de animacion, simplemente tecleando el numero de FRAME deseado (la opcion 8, la cual sera explicada mas adelante, puede, tambien, ser usada para crear nuevas FRAMEs copiando FRAMEs ya existentes). Una FRAME tiene un numero comprendido entre 1 y 999. Generalmente es bueno dejar un numero de 15 entre dos FRAMEs ya creadas. Un numero menor y la animacion parecera espasmodica. Pero todo eso dependera de cuanto cambia entre FRAMEs. Despues de que las dos primeras FRAMEs hayan sido definidas la opcion 7 (USE FRAME) hace que cualquier nueva FRAME se convierta en una SEMI-KEY FRAME. Probablemente tu quieras que una SEMI-KEY FRAME se convierta en una FRAME, para hacer esto pulsa K y despues Y para confirmar, para limpiar la pantalla pulsa L. DIBUJANDO UNA FRAME Una vez hayas definido una FRAME, pulsa D en el menu de animacion para entrar en la pantalla de edicion y comienza a dibujar. Los comandos de dibujo estan listados en la guia de referencia rapida y son cubiertos de una forma mas extensa y detallada en la siguiente seccion. Es importante recordar que cada FRAME debe tener el mismo numero de lineas. Mientras tu estes creando una FRAME el programa no te indicara si has hechos unas pocas menos o unas pocas mas. Es aconsejable que tomes nota del numero de lineas utilizadas en tu primera FRAME. Pero si no lo has hecho y no te acuerdas siempre puedes volver para mirar la primera saliendo con el ESC y cambiando la FRAME actual a 1 usando la opcion 7. SEMI-KEY FRAME Las SEMI-KEY FRAMEs son generadas por el programa. Despues de haber creado tus dos primeras FRAMEs el programa hace que cualquier nueva FRAME sea una SEMI-KEY FRAME. Esto se hace por el proceso de que hay en medio de las dos FRAMEs. Sino hay una FRAME con el numero mas alto la SEMI-KEY FRAME es una copia de la ultima FRAME. Coge, por ejemplo, una animacion con dos FRAMEs, la 1 y la 24. Si tu defines la FRAME 12, veras que la pantalla contiene lineas que son las que corresponderian a ese FRAME. La diferencia esta en que puedes cambiarlo. En las SEMI-KEY FRAMES no puedes borrar lineas a no ser que hallan sido incluidas por el usuario. Pero pueden ser movidas por la pantalla y transformadas, y el programa solo almacena los datos referentes a las lineas alteradas. Una de las ventajas de las SEMI-KEY FRAME es que pueden ser usadas para ahorrar memoria. Una mayor ventaja de las SEMI-KEY FRAMEs es que te permiten incluir variaciones en la animacion sin tener que redibujar enteramente una nueva FRAME. Digamos, por ejemplo, que quieres ver la rotacion de las ruedas de un coche. Tu puedes usar una SEMI-KEY FRAME para cambiar el angulo de las ruedas mientras que el resto del coche permanece inalterado. Para convertir una SEMI-KEY FRAME en una FRAME (KEY FRAME), pulsa K. Entonces se te permitira borrar lineas, e incluso, la pantalla. Date cuente que si las FRAMEs contienen un largo numero de linea, puede que el programa tarde en calcular las SEMI-KEY FRAMEs. COPIANDO FRAMES Para copiar una FRAME selecciona la opcion 8 (MOVE FRAME) y pulsa C. Primero introduce el numero de la FRAME a ser copiada y despues el numero de la FRAME donde va a ser copiada. Si la FRAME destino esta ya definida esta sera borrada, por ello el programa pedira conformidad (SURE (Y/N)?) antes de actuar. La copia de FRAMEs es uno de los hachos mas habituales de ANIMATOR significando que tu no tienes que dibujar nada tu mismo, sino que siempre puedes copiarlo de una FRAME ya existente (por ejemplo el fichero ejemplo) y siempre puedes cambiarlo modificando su rotacion o utilizando los comandos de transformacion. EDITANDO UNA SECUENCIA Puedes editar una secuencia usando las opcion Delete o Move que estan incluidas en la opcion 8 (MOVE FRAME). Tu puedes mover culaquier FRAME o SEMI-KEY FRAME, excepto la 1, a cualquier otra FRAME. Si el nuevo numero de FRAME corresponde a una ya existente te pedira conformidad para evitar un borrado accidental. Tambien cualquier FRAME puede ser borrado excepto la FRAME 1. MODOS ANIMATOR tiene tres modos graficos (modos 0,1 y 2). Al igual que en el AMSTRAD la seleccion de un modo particular determinara la resolucion de la pantalla y el numero de colores disponibles. Modo 0 tiene una resolucion de 320 * 136 pixels con dos colores. Modo 1 tiene una resolucion de 640 * 136 pixels con dos colores. Modo 2 tiene una resolucion de 320 * 136 con cuatro colores. Fijate que hay claras diferencias entre los modos de ANIMATOR y los del AMSTRAD. El modo 1 corresponderia al modo 2 del AMSTRAD, mientras que el modo 2 corresponderia al modo 1 en el AMSTRAD. Pero no hay en el AMSTRAD ningun equivalentes al modo 0. Aunque puedas ejecutar animaciones en cualquiera de los modo es aconsejable que uses el modo 0. En modo 1 y 2 algunas veces no sale todo lo nitida que podria salir la animacion. Solo ocurre cuando el dibujo ocupa mas de un cuarto de la pantalla total y es particularmente visible en zonas coloreadas o lineas verticales. Por contraste en modo 0 solo sucede cuando la pantalla a sido rellena (FILLeada). Una forma de eliminar este problema es salvando las secuencias de animacion como DEMOs con la opcion 5 del menu de animacion. Entonces ellas pueden ser animadas sin este problema usando la opcion de dos ventanas en el modulo de tiempo real (desde BASIC). Veamos una explicacion mas tecnica. Aunque el programa puede escribir un rango de una 25 FRAMEs por segundo, esto no es lo suficientemente rapido como para evitar interferencias de destellos en el monitor. Modos 1 y 2 escriben de una forma que eliminan al maximo la interferencia, a costa de velocidad. En modo 0 es dos veces mas rapida. Modo 0 usa diferentes tecnicas para mostrar la animacion. Primero escribe sobre el fondo de lapantalla con su mismo color despues cambia, instantaneamente, el color. Fijate que la opcion 2 en el menu de animacion te permite cambiar el modo, incluso despues de haber sido creada. Esto significa que tu puedes hacer una animacion en multicolor y si parpadea puedes pasarla a modo 0 para ver como se ejecuta, pasandola otra vez a modo 2 para salvarla como DEMO y ejecutarla desde el modulo en tiempo real (BASIC) sin ningun problema. EJECUTANDO UNA SECUENCIA DE ANIMACION Selecciona la opcion 6 (RUN) para ejecutar una secuencia. El program primero generara y comprimira todas las FRAMEs y despues nos mostrara la secuencia al maximo de velocidad. La animacion continuara hasta que pulses ESC. Pulsa MAYS para desactivar/activar el panel. La opcion 3 (REVERSE) en el menu de animacion determina si la secuencia vuelve atras o no. Si tu seleccionas REVERSE off la animacion se ejecutara desde la primera FRAME hasta la ultima para despues volver a comenzar en la primera. Pulsando el espacio/fuego congelas la imagen y con las teclas de cursor hacia la izquierda o derecha (al igual que con el joystick) pasaras FRAME tras FRAME. Puede que encuentres la velocidad muy rapida. En modo 0 puede llegar a unas 50 FRAMEs por segundo. Manteniendo la tecla de cursor a la derecha (joystick derecha) decrementaras la velocidad, con la posicion izquierda la aumentas. Con la opcion C (PAUSE) puedes hacer que el programa se detenga en una particular FRAME mientras se esta ejecutando el programa. Para hacer esto selecciona la FRAME a la que quieras insertar la opcion de pausa, por medio de la opcion 7 (esto es la FRAME actual). Pulsa ahora C e introduce el valor de la pausa en 1/50 segundos. Por ejmplo, para detenerla dos segundos pulsa 100. Puede haber tantas pausas como FRAMEs. Date cuenta que la secuencia tiene que ser compactada siempre que se quiera ejecutar, aunque el unico cambio haya sido una pausa o un reverso anulado. Si quieres correr la misma secuencia una y otra vez sera mejor que lo hagas desde el modulo en tiempo real (BASIC). MEMORIA En los AMSTRAD 464/664 hay 17k de memoria para almacenar FRAMEs y 81 en los 6128. Una secuencia con muchos detalles y areas rellenas es posible que no pueda exceder de unos centenares de FRAMEs en los 6128 y muchas menos en los otros. Desgraciadamente no hay forma de predecir exactamente cuanta memoria va a gastar una secuencia antes de animarla. Cuando vuelves al menu de animacion despues de ejecutar la animacion, el contador de memoria te muestra cuanta memoria a usado para compactar las FRAMEs. En el caso de que indicase 99% de memoria estaria lleno, no podras comprimir demasiadas FRAMEs mas. En otros casos, el contador de memoria muestra cuanto espacio ocupa una linea de datos para una FRAME o una SEMI-KEY FRAME. El otro contador de memoria en la pantalla de edicion solo indica la cantidad de memoria consumida por una linea de datos. Hay muchos pasos que se pueden tomar cuando el programa nos da un mensaje de OUT OF MEMORY. Puedes mover la ultima FRAME mas abajo con la opcion 8, o borrarla. Otra forma es reducir la longitud de algunas lineas en una o varias FRAMEs usando el comando de trasnformacion. Tu tambien puedes borrar una animacion que no estes utilizando desde el menu principal, por medio de la opcion 2 (ten cuidad no borres la que estes trabajando). El programa usa 6 bytes para almacenar el color y coordenada de datos de cada linea de una FRAME, asi que una naimacion entera puede retener una apreciable cantidad de memoria. ROTACION Opcion A y B en el menu de animacion te perimite hacer una rotacion total sobre las FRAMEs alrededor de dos ejes de coordenadas X e Y, separada o conjuntamente. Seria, hasta cierto punto, una simulacion de tres dimensiones. La mejor forma de ilustrar esto es un ejemplo. Dibuja una caja en el centro de la primer a FRAME. Para distinguir el lado derecho del izquierdo dibuja algunas lineas que crucen sobre al lado derechpo. Sal al menu de animacion y copia la FRAME 1 en la 24 usando la opcion 8. Si tu intentas animar la secuencia ahora no habra movimiento. Selecciona la opcion B y dale a la FRAME 24 un angulo de rotacion de 180 grados. Cuando ejecutes la animacion te daras cuenta que la caja va girando. De hecho para incrementar el efecto 3D ANIMATOR crea una perspectiva de vision haciendo que las lineas de un lado sean mas cortas. Fijate que el programa solo rota durante la animacion. Si tu editas una FRAME o una SEMI-KEY FRAME no veras ningun cambio. Para hacer una rotacion de 360 grados necesitas crear cuatro FRAMEs. La segunda y la tercera dales una rotacion de 120 y 240 grados respectivamente. Dale un valor de 0 a la primera y a la ultima. Seccion 3 - DIBUJANDO Como un programa de dibujo ANIMATOR tiene una extensa gama de comandos para crear dibujos simples. No ofrece tantas como los programas especializados en dibujo pero si una extensa y muy potente gama no encontrada en ningun otro sitio (el transformador y el dibujo curvo en particular). En esta seccion algunos de los mas complejos comandos son explicados. Otras posibilidades como el dibujo de cajas, borrar pantalla y ver son listadas en la guia rapida de referencia. Los comandos de linea han sido tratados en la seccion de empezando. CANCELANDO UN COMANDO Dos teclas son necesarias para interrumpir o cancelar un comando, RETURN y ESC. Algunas veces el programa espera que selecciones una opcion pulsando una tecla, podras cancelar la funcion pulsando RETURN. Otras veces usas el ESC. Por ejemplo, si tu has cambiado tu idea sobre un FILL, antes de seleccionar la forma del FILL, pulsa RETURN. Para abortar la transformacion pulsa ESC. CAMBIO DE COLOR Para cambiar el color en la pantalla de dibujo pulsa I, y entonces introduce el numero de la tinta: 0 para el color de fondo, 1 para el color con el cual las lineas son dibujadas. Ahora selecciona el nuevo color a partir del numero en la tabla de colores del AMSTRAD. Despues de cada numero no olvides pulsar RETURN. En modo 2 pueden haber cuatro colores en pantalla, tres para dibujar y uno de fondo. Las teclas 1, 2 y 3 seleccionan la tinta acutal, simplemente pulsando 2 o 3 la siguiente linea sera de otro color. Date cuenta que ANIMATOR no te permite hacer que el color del fondo sea el mismo que el de un lapicero y viceversa. DIBUJOS DE POLIGONOS Para dibujar un poligono con un numero de caras de 3 a 24, primero decide donde va a estar el centro del poligono y mueve el cursor a ese punto. Pulsa P e introduce el numero de caras. Define el radio moviendo los cursores (joystick). Fija el poligono pulsando Fuego/COPIA. Esto te facilita el procedimiento de crear figuras regulares cerradas con un numero de lados especificados. Introduciendo tres se produce un triangulo equilatero, 4 un cuadrado, 5 un pentagono, etc. Figuras con mas de 15 lados parecen, mas bien, un circulo. FILL (relleno) Con este comando una superficie cerrada puede ser rellenada con un color. Si la superficie no esta bien cerrada la tinta se escapara rellenando toda la pantalla, pulsa ESC para detener este proceso. Para hacer un FILL, posiciona el cursor en el lugar deseado y pulsa F. Selecciona uno de los cuatro modos de relleno pulsando el numero adecuado. Un FILL no ocurrira si el cursor esta sobre una linea. En modo 2 cualquiera de los cuatro colores que hay en la pantalla pueden ser mezclados. Los modos de FILL 2 y 3 son particularmente usados en este modo pues te permiten la creacion de nuevos colores. Mezclando dos colores es posible tener mas de 4 colores en la pantalla al mismo tiempo. Por ejemplo, mezclando rojo brillante con amarillo brillante conseguiremos un efecto naranja. Cuando los modos de FILL 2, 3 o 4 han sido seleccionados desde el modo 2 el programa te preguntara por la tinta del segundo color. No debe ser la misma que la tinta actual. Fijate que el programa almacena un FILL como el punto donde ha sido realizado el FILL, la posicion donde estaba el cursor cuando pulsaste F. Si tu encierras el origen del FILL en una caja de transformacion, tu podras moverlo de la misma forma que puedes hacerlo con un grupo de lineas. Para mas referencias a los FILLs animados ver la seccion de FILLs en medio. DIBUJO DE CURVAS Esto podria llamarse tambien como facilidad para dibujar a mano alzada. Te permite dibujar cualquier forma, pixel a pixel hasta un limite de unos 250 pixels. Pulsa U. Un pixel aparecera donde se encontraba el cursor. Mueve con el joystick o los cursores para dibujar la forma por medio de pixels. Cuando tu bibujas un pixel este sera tratado como una linea o segmento. Cuando tu termines podras pulsar la tecla > para reducir el numero de segmentos en la figura. Fijate que cuando disminuyes el numero de segmentos, el paso se incrementa. Digamos, por ejemplo, que tu dibujas una curva con 100 puntos. Inicialmente tiene 100 segmentos y una paso (STEP) de 1. En una palabra cada pixel esta unido a uno adyacente. Si haces que el paso sea de 50 acabaras teniendo dos segmentos. La tecla < incrementa el numero de segmentos despues de que ellos hayan sido reducidos. La tecla BORR borra el ultimo pixel dibujado y el espacio borra toda la curva a escepcion del primer punto. Pulsa Fuego/COPIA para fijar el dibujo. Es importante recordar el numero de segmentos que tenga una figura. La tecnica para recordarlo depende mas bien de ti, pero siempre podran ir borrando o incluyendo segmentos hasta que aciertes. TRANSFORMACION DE BLOQUES De todas las facilidades de dibujo esta es la mas poderosa. Te permite crear impresion de secuencias de animacion incluso si no tienes demasiadas aptitudes para dibujar. La transformacion de bloques te permite coger una linea de un grupo de lineas, moverla, alargarla, acortarla, rotarla, etc... Cualquier parte del dibujo puede ser borrado, eso significa que puedes reconstruilo nuevamente a partir de cero sin que hayas dibujado propiamente una linea. La mejor forma para ilustrar este comando es con un ejemplo. Dibuja una E mayuscula usando cuatro lineas. Entonces pulsa T para transformala. De las tres opciones COPY, DELETE, MOVE (copia, borra, mueve) utiliza M (mueve). Usando los cursores (joystick) haz que la caja sea lo suficientemente grande como para encerrar la E. Tu puedes mover la caja con el joystick o con A(arriba), Z(abajo), N(izquierda), M(derecha). Cuando estes posicionado sobre la letra pulsa Fuego/COPIA. Ahora puedes usar cualquiera de las opciones de transformacion. Mira la guia de referencia rapida. B, por ejemplo, hace el dibujo mas grande, S lo contrae, N lo gira 90 grados, Y lo lanza sobre el eje Y. Mueve el dibujo a otra parte diferente de la pantalla usando los cursores. Para volverlo al estado inicial pulsa ESC. Para fijar la trasformacion Fuego/COPIA. Todo esto tambien funciona con la opcion copia, pero se produce un duplicado de lineas. Y tu tambien puedes copiar parte, o toda, una pintura a otra FRAME. Hay dos puntos que aclarar sobre el comando de transformacion. Primero, solo tratara las lineas que estan completamente dentro de la caja. Segundo, una transformacion de una caja con un gran numero de lineas puede llevar cierto tiempo. APLICACCIONES DE LA TRANSFORMACION Es interesante indicar algunas de las posibilidades de la transformacion. Por primero, te permite coger una imagen y romperla, distorsionarla, variarla de distintas formas. Por ejemplo, en el dibujo de una cara tu puedes alargar la nariz, estechar la boca en el eje X, rotar los ojos marrones, etc... La transformacion te permite crear figuras simetricas de una forma muy sencilla. Simplemente tienes que coger la opcion copia y reflejar el dibujo en el eje X para despues reflejar el resultado en el eje Y. Cuando hay dibujos FILLeados la transformacion es particularmente muy util. Alterando, incluso redibujando, te aseguras que el origen del FILL esta donde deseas. Esto reduce el problema de que la tinta se pueda escapar durante la animacion. Seccion 4-EDITANDO FRAMES EDITANDO KEY FRAMES Esta seccion te explica como coger una FRAME que ya hayas dibujado, copiado y modificado. La forma mas facil para hacer esto ultimo es utilizar las opciones de transformacion. De todas formas si tu quieres redibujar un minimo detalle de un dibujo, utiliza las teclas Q y W. Estas teclas alteran el numero de lineas, mostrado en el contador de lineas (normalmente este contador indica el numero de la proxima linea). Q decrementa el numero de linea y W lo incrementa. Una determinada linea puede ser seleccionada, CLR borrara. Si cambias de idea pulsa R para recuperarla. Fijate que el numero de lineas no cambia porque tu hayas desplazado alguna, esto te permite hacer muchos cambios. La seleccion de actual trabaja de la misma forma que Q y W. Para usarlo pulsa C y selecciona la linea manteniendo la posicion de los cursores (joystick) izquierda-derecha. Si quieres saltar a una determinada linea pulsa fuego/COPIA e introduce su numero. CLR borrara la linea, pero seleccion de actual debera ser cancela con RETURN. Los signos < y > son usados cuando acabas de editar un grupo de lineas. > hace que el numero de linea se incremente en uno. < salta a la primera linea que no haya sido definida. O sea, < es equivalente a >, a no ser que los numeros de lineas sean discontinuos. Fijate que con las transfomaciones y su opcion de borrado nos permite el borrado de un gran numero de lineas. UN EJEMPLO DE EDICION El siguiente ejemplo aclara la forma de trabajar de los comandos de edicion. Te muestra como borrar y redibujar un grupo de cuatro lineas. Primero dibuja una FRAME con 12 lineas. Ahora pulsa Q para cambiar el actual numero de linea a 5. Borrala pulsando CLR y usa W para cambiar a la linea 6. Borrala y repite el proceso hasta borrar la numero 8. El indicador de panel nos indicara la linea actual 8. Uas Q de nuevo para volver a la 5, y redibuja las cuatro lineas. Cuando redibujes la linea 8 el indicador de linea cambiara a 12, el numero de la siguiente linea a ser dibujada. Recuerda que las lineas se numeran a partir de la 0 incrementandose de uno en uno. EDITANDO SEMI-KEY FRAMES Las lineas de una semi-key frame no pueden ser borradas a no ser que hayas incluido alguna. Son las lineas como las a calculado el programa, y pueden ser transformadas. En una semi-key frame las teclas Q, W y C no tienen la misma funcion que en una FRAME. Como mucha de las posibilidades de ANIMATOR es mejor explicarlo a partir de un ejemplo. Selecciona uno de los numero de las primeras lineas. Pulsa CLR, no tendra ningun efecto. Pero si tu dibujas una linea reemplazara automaticamente a la actual. Pruebalo empezando por la linea 0 y reemplazando todas. Una vez creado de nuevo el dibujo pulsa BORR, veras como en vez de borrar lo que hace es reemplazar la linea actual por la original. Cuando se trata de editar lineas incluidas en una semi-key frame las teclas Q, W, C, CLR y BORR tienen el mismo efecto que en una frame. CERRANDO LOS AGUJEROS ES MUY IMPORTANTE que te fijes bien cuando editas un numero de lineas. Debes estar seguro que el numero de linea en el que estas trabajando es el mismo del de la linea que has borrado. Puede ser que hayas alterado el numero actual usando Q o W. Si tu dibujas enotnces una linea el programa asignara el numero de linea al de la siguiente de la ultima. Para aclarar esto veamos un ejemplo. Dibuja 20 lineas y selecciona la linea 10, borrala y cambia la linea actual a la 11 pulsando W, redibuja una nueva linea, SERA LA 21, FIGURANDO TODAVIA 20. Si tratas de animar la secuencia el programa te dara un mensaje de error LINE MISSING. Para ello puedes usar la opcion de cerrar agujeros pulsando S. Este comando cerrara todos los agujeros en los numero de linea sobre 11 bajando un puesto. Seccion 5-ANIMACION CON FILLS FILLS EN MEDIO Cuando ANIMATOR genera los FRAMEs intermedios, no rellena automaticamente, sino que tienes que indicarle que zonas han de ser rellenadas, al principio de la compactacion. Por cada zona tu tienes que definir el FILL de comienzo u el FILL de final. Un ejemplo simple puede ilustrar esto. En modo 0, crea la FRAME 1 con dos zonas, una triangular y la otra cuadrada. FILLealas y copia la FRAME 1 en la 20. Con los comandos de transformacion mueve las zonas a diferentes partes de la pantalla. Vuelve al menu y pulsa 6 para la compactacion. Te daras cuenta que una cruz amarilla aparece sobre el centro de una de las dos zonas. Si hay mas de una area FILL sobre la pantalla esta puede ser seleccionada pulsando hacia arriba o hacia abajo (joystick/cursor). Posicionala sobre el cuadro y pulsa fuego/COPIA. Si tu te ESCapas ahora el programa empezara compactando, pero solo rellenara el cuadro. Para rellenar el triangulo necesitas definirlo tambien antes de la compactacion. Tendras que pulsar fuego/copia tantas veces como figuras a rellenar y, ademas, dos veces mas para indicar el origen y el fin. Si copias la FRAME 20 en la 40 y mueves el triangulo, tendras que definir otro juego de FILLs de la FRAME 20 a la 40. El programa trabaja en medio con los origenes del FILL. Cuando una figura es FILLeada en una key o semi-key FRAME, ANIMATOR almacena la posicion del cursor cuando pulsaste F. Trata el origen del FILL como un pixel o una linea larga de pixels. El el proceso de compactacion el programa trata el origen, en el proceso de en medio, de la misma forma que trata una linea. Por esta razon es necesario definir bastantes FILLs para asegurarse que la rutina de FILL permanece dentro de la figura. De otra forma te fijaras que la tinta se escapa durante la compactacion. Este problema solo aparece cuando tienes secuencias de mas de dos FRAMEs. SUMARIO Para animar una figura con FILL en una secuencia con solo dos FRAMEs: 1.-Pulsa 6 (RUN) en el menu de animacion 2.-Pulsa fuego/COPIA para definir el FILL de principio 3.-En la segunda FRAME pulsa fuego/COPIA para definir el FILL final 4.-Cuando el programa redibuje, de nuevo, la primera FRAME pulsa ESCape Si hay mas de un FILL: 4.-Cuando el programa redibuje, de nuevo, la primera FRAME mueve el cursor a la segunda zona (arriba y abajo) 5.-Pulsa fuego/COPIA para definir el FILL de principio de la segunda figura 6.-En la segunda FRAME mueve el cursor a la segunda figura y pulsa fuego/COPIA para definir el FILL final 7.-Repite los pasos 4 a 6 si hay mas de dos figuras 8.-Pulsa ESCape para pasar a la compactacion (despues de que el programa haya redibujado la primera FRAME) Si hay mas de dos FRAMEs: 8.-Para cada figura define otro FILL en medio de la segunda y tercera FRAME. Primero selecciona la segunda FRAME para definir el nuevo FILL origen pulsando la derecha en el cursor o joystick 9.-Si hay cuatro o mas FRAMEs repite el proceso. Define otro huego de FILLs en medio de la tercera y cuarta, en medio de la cuarta y quinta, etc... Fijate que solo es necesario definir los FILLs en la primera y ultima FRAME. Para otras opciones como cancelar un FILL, empieza de nuevo, mira la guia rapida de referencia. SE ESCAPO EL FILL Los FILLs algunas veces se escapan cuando una figura es compactada. Esto es normal que ocurra cuando la figura gira mas de 90 grados. Para anular esto lo que podemos hacer es copiar la figura a FILLear de una FRAME a otra. Esto no asegura que el origen del FILL permanezca en la misma posicion (relativa en las dos figuras) en ambas FRAMEs. Puedes pensar que no debe haber ningun problema siempre que el origen del FILL permanezca dentro de la figura. De todas formas, cuando una figura gira alrededor de los ejes X e Y, el origen del FILL es reducido a una linea. Como resultado, el origen del FILL puede acabar fuera de la figura. Esto ocurre porque el programa solo permite operaciones aritmeticas en las coordenadas de la pantalla con un cierto grado de seguridad; quiere decir que los errores no estan del todo subsanados. La unica solucion es empezar de nuevo. Fijate que si el dibujo esta hecho en modo 0 o modo 2 y es cambiado a modo 1, cualquier FILL puede escaparse. Seccion 6 - TECNICAS DE ANIMACION PRINCIPIOS PRIMEROS ANIMATOR ofrece un inmenso alcance para experimentar con diferentes tecnicas de animacion. Te encontraras pronto que es mas animar que hacer un simple dibujo. Lo que puede parecer bien como dibujo puede no quedar tan bien cuando es animado. Para producir secuencias mas impresivas necesitaras gastar tiempo explorando diferentes tecnicas. Muchas de estas las tendras que descubrir utilizando el programa. Pero hay unos principios basicos que veremos en esta seccion. Viendo los ficheros de demostracion te puedes dar una idea de como hacer algunos efectos. Una vez que hallas corrido alguna de las DEMOs, puedes intentar modificarlas. Hay numerosas formas en las cuales una secuencia puede ser alterada. Por ejemplo, puedes borrar una de las FRAMEs, cambiar los valores de rotacion, cambiar los colores. Mejor todavia, puedes usar los comandos de transformacion para alterar una figura sin FRAME. Encerrando un numero determinado de lineas puedes, alargarlas, contraerlas, rotarlas, desplazarlas, ponerlas de un sitio a otro de la pantalla, etc... ORDENANDO LINEAS Recuerda que cualquier figura en ANIMATOR esta hecha a base de lineas, incluso curvas y circulos. Para una demostracion grafica de esto, usa la posibilidad de dibujar poligonos, y produce un poligono de 24 lados (un circulo en la FRAME 1). Ahora crea una segunda FRAME con 24 lineas separadas y ejecuta la secuencia. Todas las lineas cambian a la correspondiente linea en la siguiente FRAME. Esto significa que para algunos efectos tu tienes que recordar en mente el orden en el que dibujastes las lineas. Digamos, por ejemplo, que queremos que la letra H cambie a la letra N. Si la primera linea esta a la izquierda en la primera FRAME y a la derecha en la segunda veremos como se desplaza en la ejecucion, seria mas efectivo si el orden fuese exactamente el mismo. Cogamos el mas complicado problema de animacion, una cara. Despues de dibujar la cara en la primera FRAME. Despues de dibujar la cara en la primera FRAME, ïcomo dibujar la nariz, por ejemplo, en la segunda? Si no es el mismo orden de lineas se puede convertir, por ejemplo, en una oreja. La mejor tecnica para esto es copiar la primera FRAME en la segunda y una vez en esta ya puedes hacer todos los retoques en la nariz. Por supuesto, el intercambio de lineas tambien puede producir efectos muy interesantes. Si dibujamos una E en la FRAME 1 con un orden de lineas y la misma E con otro orden de lineas en la segunda FRAME, la E no se movera, pero veremos como se distorsiona. LINEAS SUPERPUESTAS Cualquier cosa que pueda ser dibujada con ANIMATOR puede ser animada. La unica restriccion es el numero de lineas. De hecho, no es tanta restriccion como puedes pensar. Por ejemplo, si quisieramos dibujar un triangulo en la primera FRAME y un cuadrado en la segunda, ïtendriamos una linea de mas? Podemos hacer que uno de los lados del triangulo sean dos lineas de menor longitud, tambien podemos hacer que hayan en el triangulo dos lineas superpuestas. ïèSeccion 7 - EL MODULO DE EJECUCION EN TIEMPO REAL La idea del modulo de ejecucion en tiempo real es el de permitirte ejecutar animaciones sin tener cargado ANIMATOR y que estas sean desde BASIC, y de esta forma, incluir estas tecnicas de animacion en tus propios programas, como ficheros de secuencias. Una de las grandes ventajas del modulo es que puede ejecutar animaciones inmediatamentes. Las DEMOs pueden ser ejecutadas inmediatamente hayan sido cargadas. No hace falta recompactar la secuencia, siempre puede ser ejecutada. Otra ventaja es que se puede hacer posible ver animaciones en alta resolucion y en multi-color, las cuales son creadas en ANIMATOR en modo 1 y 2. Puede incluso eliminar los parpadeos que pueden producirse en ANIMATOR pues usa una tecnica diferente que sera referida aqui como el metodo de dos ventanas. Si quieres saber como funciona una explicacion sera dada mas adelante, en esta seccion. Puedes animar DEMOs simplemente siguiendo las siguientes instrucciones o tecleando el programa que hay al final de la seccion. Es bueno, para saber como funciona el modulo, saber como organiza el espacio de memoria el AMSTRAD. Los programas BASIC empiezan en la posicion de memoria 368 y se extiende hacia arriba (el limite mas bajo para un fichero DEMO es 512). El modulo ocupa el espacio de 37936 hacia arriba y coge, ademas, un buffer de 2k; el fichero DEMO es almacenado en la memoria que hay enmedio. èCARGANDO EL MODULO El modulo esta separado del programa y almacenado en el disco o cinta bajo el nombre de SHELL. Antes de cargarlo necesitas reservar memoria para ambos, programa y DEMO. Asi que empieza tecleando: MEMORY 4999 LOAD"SHELL" Ahora inicializa el programa con CALL 37936,5000 Si quieres que tus DEMOs se ejecuten usando el metodo de dos ventanas introduce CALL 37936,5000,1 El primer numero 37936, da la direccion de princion del modulo, mientras que el segundo nos dice donde se va a cargar la secuencia de animacion. En este caso tenemos 32936 bytes para almacenar DEMOs. Si la diferencia 37936-5000 no hace falta que sea tan fuerte la segunda direccion puede ser mayor en orden de dejar mas espacio al BASIC. Por ejemplo: MEMORY 9999 LOAD "SHELL" CALL 37936,10000 En los AMSTRAD CPC 6128 el modulo dispone de 64k extras pudiendo asi utilizar un maximo de 100k. èCARGANDO Y EJECUTANDO UNA DEMO Cuando el modulo haya sido cargado y ejecutado para cargar una secuencia de animacion el comando es: |GET,n donde 'n' es el numero de la animacion salvada con la opcion 5 en el menu de animacion. Por ejemplo, para cargar la DEMO#3 introducir: |GET,3 Ahora teclear |SETCOL para colocar el modo y colores apropiados. Sigue este comando con: |ANIMATE para ejecutar la secuencia. Pulsando una tecla detienes la animacion. èUSANDO LOS COMANDOS Todos los comandos del modulo son presentados como extensiones RSX al BASIC. Todos debes ser precedidos por el caracter que se encuentra enzima de la tecla @. Pueden ser insertados en programas BASIC o tecleados directamente. Cada comando puede ser seguido de un numero separado por una coma, que especifica como debe llevarse acabo la accion. Por ejemplo, |ANIMATE,2 ejecuta la animacion actual dos veces y luego se detiene. |GET debe ir seguido del numero de DEMO a cargar. De cualquier forma todos los parametros son opcionales. Un comando sin parametros actua sobre el ultimo fichero cargado y con su valores a cero, por ejemplo |SETCOL y |SETCOL,0 son lo mismo. La escepcion es |CLEAN que sino le das parametros actua con los ultimos, que pueden no ser cero. èLOS COMANDOS DEL MODULO |ANIMATE,T,velocidad(0-99),numero de DEMO Ejecuta una animacion T veces, en la velocidad especificada. Un valor, no-zero-positivo, para T significa que la animacion solo puede ser interrumpida pulsando ESCape; si un valor negativo es dado, cualquier tecla dentendra la ejecucion. Cuando T es cero la ejecucion se hara hasta que una tecla sea pulsada. Ejemplo: |ANIMATE,0,0,3 repite la DEMO numero 3 hasta que sea detenida |ANIMATE,2,5,1 ejecuta la DEMO#01 dos veces con la velocidad 5 |ANIMATE,-1,0,2 ejecuta la DEMO 2 una vez a la maxima velocidad, cualquier tecla la dentendra. Fijate que |ANIMATE, a pelo, actua sobre la animacion que en ese momente esta activa en memoria. |CLEAN,metodo de muestra(0/1),direccion de carga 'Limpia' todas las DEMOs de memoria. Un valor de zero para el primer parametro selecciona la forma normal de ejecutar la animacion mientras que un valor de 1 selecciona al metodo de dos ventanas. El segundo parametro es para designar la nueva direccion de carga. Por ejemplo: |CLEAN,0,12000 hara que los ficheros DEMO se cargen a partir de la direccion 12000 hacia arriba. |GET,numero de DEMO (0-999) Carga un fichero DEMO en la siguiente posicion de memoria libre. Mas de 9 DEMOs pueden existir en memoria al mismo tiempo, pero en la practica es normal que solo haya memoria para tres o cuatro. Usa CAT para saber, mas o menos, cuanta memoria gastan las DEMOs. El siguiente programa carga y ejecuta las tres primeras DEMOs: 10 FOR N=1 TO 3 20 |GET,N 30 NEXT 40 FOR N=1 TO 3 50 |SETCOL,0,N 60 |ANIMATE,1,0,N 70 NEXT |SETCOL,color/modo/ambos(1/-1/0),numero de DEMO Hace que el color y el modo sea el mismo que cuando la DEMO fue creada. Introduciendo |SETCOL sin ningun parametro, significa que la animacion sera igual que cuando se hizo en ANIMATOR y trabajara sobre el ultimo fichero DEMO cargado. |SETCOL,1 te pone los colores, y te permite ejecutar la secuencia en un modo diferente. Si la secuencia ha sido creada en el ANIMATOR en un modo 1 o 2 puedes, incluso, ejecutarla en el modo 0 del AMSTRAD, sera preparada para interesantes e impredecibles efectos coloristas. |SETCOL,-1 pone el modo original, pero no asi los colores. Los colores pueden ser cambiados usando el comando INK. El tercer parametro sirve para asignar los colores y modos de cualquier animacion actual. Asi: |SETCOL,0,3 asigna los colores y modo para el tercer fichero DEMO para la siguiente animacion, el cual puede o puede no ser la DEMO#03. Si el comando SETCOL no es dado, una animacion se ejecutara en el actual modo, usando los colores actuales. Fijate que el modo 0 de ANIMATOR solo puede ser ejecutado en el modo 1 del AMSTRAD. |SHOW,numero de FRAME,numero de DEMO Nos muestra la FRAME especificada de cualquiera de las animaciones en memoria. Por ejemplo: |SHOW,12 muestra la FRAME numero 12 de la ultima secuencia cargada. |SHOW,5,2 muestra la FRAME 5 de la segunda DEMO Si tu quieres imprimir una FRAME determinada, este es el comando a usar junto con una rutina de volcado de pantalla. èLA ANIMACION DE DOS VENTANAS Usa esta forma cuando una animacion en ANIMATOR te parpadee. Trabaja haciendo que 16k de RAM (de 16384 a 32767) sean utilizadas como una ventana alternativa de memoria. Mientras una ventana es mostrada, el programa esta creando la siguiente en la otra area. Esto significa que la FRAME puede ser mostrada instantaneamente, no importa cuantos detalles contenga. En los 6128, todavia quedan mas de 84k para el almacenamiento de FRAMEs, pero en los 464 y 664 la memoria maxima se reduce a 20k (cuando el metodo de dos pantallas es usado el programa solo selecciona 680 bytes como buffer en vez de las 2k normales). No es necesario restaurar el principio de la area de almacen para FRAMEs, la rutina se ocupara de ello; si el primer bloque de memoria de 512 a 16384, esta lleno cargara la animacion en el espacio por encima de la segunda ventana, de 32767 a 37936. En ambos los comandos CALL y CLEAN pueden ser seleccionados para usar el metodo de dos ventanas. La direccion de los datos, aqui de be estar, por ejemplo, en 16384. Por ejemplo: CALL 37936,512,1 o |CLEAN,1,512 pero no CALL 37936,18000,1 Fijate que no es necesario usar esta opcion en demos que han sido salvadas en modo 0 en el ANIMATOR. èVENTANAS Usando el comando WINDOW del AMSTRAD puedes separar una zona de texto en la parte baja de la pantalla. Esto te permite imprimir titulos o titular las DEMOs con un color distinto. Por ejemplo: 10 |SETCOL 20 PAPER 2 30 WINDOW 1,40,18,25 40 CLS 50 PRINT "Demo 3" 60 |ANIMATE,1,0,3 Los programadores en codigo maquina pueden usar rutinas de interrupcion, para crear un texto con scroll, o incluir musica en la animacion. èUN CARGADOR El siguiente programa solo carga el modulo y despues las animaciones especificadas como DEMO. Pulsa ESCape para detener la animacion. 10 MEMORY 4999 20 LOAD "SHELL" 30 CALL 37937,5000,1 (es muy posible que sea 37936) 40 PRINT "Teclea el numero de la DEMO" 50 PRINT "Despues pulsa RETURN" 60 INPUT N 70 |GET,N 80 |SETCOL 90 |ANIMATE GUIA DE REFERENCIA RAPIDA CONTROLES DE DIBUJO ESCape cancela cualquier comando que no espera un dato RETURN cancela un comando cuando espera una dato teclas cursor mueve el cursor. Manteniendo MAYS se mueve el cursor joystick pixel a pixel. Manteniendo la barra de espacio se mueve el cursor mas rapido. fuego/COPIA dibuja una linea. Pulsa fuego/COPIA para empezar y finalizar la linea. Para salir del modo de dibujo 1 pulsa ESCape e el fuego/COPIA dos veces. K convierte una SEMI-KEY FRAME en una FRAME o KEY FRAME I cambia el color de las tintas 1 2 3 selecciona la tinta actual (solo en modo 2) L limpia la pantalla en las FRAME. En las SEMI-KEY FRAME resetea toda alteracion hecha F rellena una figura. Primero mueve el cursor dentro de la figura a ser FILLeada. Despues pulsa F y selecciona la forma de relleno. X limpia todos los FILLs B activa/desactiva la banda de borrado M intercambia los modos de dibujo. Modo 1 (DM1) hace que todas las lineas este conectadas. Modo 0 (DM0) dibuja lineas separadas V ver otra FRAME. Si la FRAME actual es una SEMI-KEY FRAME, V tambien permite una opcion mas que es mostrar las lineas que han sido alteradas P dibuja poligonos (hasta de mas de 24 caras). Introduce el numero de caras, mueve el curosr para fijar el radio y angulo del poligono y entonces pulsa fuego/COPIA O dibuja una caja. Elije las dimensiones de la caja moviendo los cursores o el joystick. Mueve la caja usando las teclas A(arriba), Z(abajo), N(izquierda), M (derecha) y pulsa fuego/COPIA para fijarla U dibujo de curvas a mano alzada, hasta 250 pixels. Usa las teclas < y > para alisar la curva reduciendo el numero de segmentos. Pulsa espacio para empezar de nuevo y DEL (BORR) para borrar el ultimo punto. Fuego/COPIA para fijar la curva T transforma una linea o un bloque de lineas. Selcciona Copy/Delete/Move (copia/borra/mueve) y mueve la caja de transformacion a su posicion (A/Z/N/M) y encierra las lineas en la caja y pulsa fuego/COPIA para empezar la transformacion. Usa el cursor/joystick para mover las lineas. B para alargar S para hacerlas mas cortas R para rotarlas a la derecha L para rotarlas a la izquierda 1 para alargar el eje X 2 para acortar el eje X 3 para alargar el eje Y 4 para acortar el eje Y N para rotar 90 grados (reverso reloj) M para rotar 90 grados (como reloj) X para reflejar en el eje X Y para reflejar en el eje Y Pulsa fuego/COPIA para completar la transformacion. ESCape abandona la transformacion y restaura la figura original CONTROLES DE EDICION DE LINEAS DEL(BORR) borra la ultima linea o anula la ultima accion R restaura la ultima linea C actual. Usa izquierda/derecha para ir a una linea superior. Para ir a una determinada linea, pulsa fuego/COPIA e introduce su numero. Pulsa RETURN para terminar la seleccion. CLR borra, ahora, la linea. Para anular la seleccion actual pulsa RETURN Q y W incrementa y decrementa el numero de linea. CLR borra la linea actual > da, en la linea actual, el numero despues de la ultima linea que ha sido dibujada < da el numero de la primera linea que no ha sido dibujada. Equivalente a > solo que los numeros de lineas no son continuos S cierra el agujero entre numero de lineas, asi que todas las lineas de la FRAME tienen numeros consecutivos. Si te da un erro de Line Missing (falta linea) fijate, haber, si el numero total de lineas es el mismo. S solo se puede usar en KEY FRAMEs CONTROLES DE ANIMACION FILL en medio izquierda y derecha para seleccionar FRAME, arriba y abajo para seleccionar figuar. ESCape para finalizar seleccion y empezar compactacion. Espacio para volver a empezar. ESCaper para abortar compactacion espacio animacion congelada. Izquierda y derecha para ir paso a paso, FRAME a FRAME izquierda decrementa y aumenta la velocidad de la animacion derecha MENU DE OPCIONES Selecciona una opcion pulsando el numero o letra adecuada. Cuando el cursor de introduccion (un cuadro coloreado) aparezca pulsa RETURN despues de haber tecleado lo que deseas. Usa BORR para eliminar errores. Pulsando RETURN sin escribir nada cancelara la introduccion y la opcion. MENU PRINCIPAL 1 ANIMATE selecciona una animacion, incluso en memoria. Introduce el nombre de la animacion y luego el modo (0,1,2) 2 DELETE borra una animacion de la memoria del programa. Introduce el nombre de la animacion y pulsa Y si quieres seguir adelante con el borrado 3 SAVE ALL salva todo los datos de animacion en memoria bajo un nombre 4 LOAD carga los datos de animacion de cinta o disco. Para ejecutar una opcion que ya ha sido cargada selecciona la opcion 1 e introduce su nombre 5 CATALOGUE/ lee el catalogo del disco si la opcion 6 esta en DISC. WRITE SPEED De otra forma puedes intercambiar entre velocidad 0 y 1 para grabar a cinta. Siempre pondra WRITE SPEED si la unidad de disco no esta conectada 6 TAPE/DISC intercambia entre los sistemas de cinta y disco. Esta opcion no se presenta si el disco esta desconectado MENU DE ANIMACION 1 NAME cambia el nombre de la actual animacion 2 MODE cambia el actual modo grafico 3 REVERSE activa/desactiva el modo de reverso en la animacion. Cuando REVERSE esta activado (ON) primero va de la primera a la ultima y luego al reves 4 SAVE DATA graba la linea de datos para cada KEY y SEMI-KEY FRAME en la secuencia de animacion. Tambien graba el modo, REVERSE, y detalles de colores, tambien pausas y rotaciones para cada FRAME 5 SAVE DEMO salva todas las secuencias compactadas. Cada demo es salvada como DEMO#N, donde N es el numero de la demo. Una demo solo puede ser ejecutada desde el modulo de tiempo real y es imposible volver a cargarla desde el ANIMATOR 6 RUN primero compacta y despues ejecuta la actual animacion pulsando ESCape interrumpiras el proceso de compactacion 7 USE FRAME pude seleccionar una FRAME existente o definir una nueva 8 MOVE FRAME te permite copiar, borrar o mover una KEY o SEMI-KEY FRAME. Pulsa C,D o M de acuerdo con lo que quieras hacer. FRAME 1 no puede ser borrada 9 RETURN nos vuelve al menu principal A X-ROTATION rota (hace girar) toda la FRAME entera sobre el eje X dandole el numero de grados (0-359). Por ejemplo, un valor de 180 hara que se invierta la figura. Si metes un numero menor a 100 no es necesario poner los ceros de alante B Y-ROTATION rota la figura sobre el eje Y C PAUSE hace detener el programa en la actual FRAME. PAUSE espera que introduzcas un numero de 0 a 9999 donde la unidad de pausa de de 1/50 de segundo. Por ejemplo, si estamos en la FRAME 24 y ponemos una pausa de 50, cuando el programa llege a la FRAME 24 se detendra un segundo D EDIT te lleva a la ventana de edicion de la actual FRAME MENSAJES DE ERROR Out of Memory at Frame nnn No hay suficiente memoria para la animacion actual. Hay varias posibilidades: mover la ultima FRAME a una menor (nnn-1); borrar la ultima FRAME; reducir la longitud de algunas de las lineas; borrar otras animaciones presente en memoria. Line nnn out of range in Frame nnn El programa no te permite girar la figura porque la linea nnn no se lo permite. Acercala hacia el centro y hazla mas corta. Line nnn missing in Frame nnn Si el numero de lineas totales es el mismo pulsa S y luego Y. Si es distinto incluye otra linea. Line nnn extra in Frame nnn Si el numero totales de lineas es el mismo pulsa S y luego Y. Si es distinto borra una linea. Illegal line nnn in Frame n SEMI-KEY FRAME nnn tiene una linea que ya ha sido borrada de una FRAME otra parte Only one Frame present Debe haber, al menos, dos FRAMEs antes de que una secuencia pueda ser animada. |