APPLICATIONSCREATION GRAPHIQUE ★ PAISAJES EXTRATERRESTRES ★

Paisajes ExtraterrestresApplications Creation Graphique
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Los muchachos de LucasFilm son grandes investigadores de la síntesis de imágenes por ordenador.

En los intervalos entre batallas galácticas estudian cómo mejorar sus efectos especiales por ordenador. De su laboratorio salió el algoritmo que ha inspirado el programa BASIC que se presenta a continuación. Sirve para dibujar paisajes extraterrestres en tres dimensiones, basándose en curiosidades matemáticas como la geometría fractal.

Las fractales son superficies que se definen de una manera recursiva generalmente por repetición de sí mismas. Si, por ejemplo, se dibuja un triángulo y se utiliza la parte central de cada lado como base para un nuevo triángulo (lógicamente de menores dimensiones), nunca acabaremos de trazar la curva, ya que siempre quedan triángulos por rellenar. Según avanzamos en el dibujo, éste se parecerá cada vez más a una parte de un copo de nieve, con forma de estrella. La propiedad más interesante de este tipo de curvas es que su dimensión, calculada por ciertos métodos, es mayor que uno (curvas) y menos que dos (superficies). Su nombre surge de ahí, de «dimensión FRACcional».

El programa que presentamos realiza una proyección en perspectiva de una superficie fractal. En este caso la definición es muy intuitiva: imaginemos que tenemos un triángulo, y levantamos o bajamos al azar el punto medio de cada lado. Uniéndolos obtenemos una superficie formada por cuatro triángulos. Si repetimos el proceso con cada uno, tendremos dieciseis, y continuando con él, acabaremos por obtener una superficie parecida a un paisaje montañoso. La técnica fue desarrollada como algoritmo de dibujo. La novedad en este caso es que por debajo de cierta altura se considera que el mar invade nuestro paisaje y dibuja una superficie horizontal de color azul. La «tierra» es de color rojo.

El programa pide un único dato: el nivel de división en triángulos, que debe ser un número entre 1 y 6. El programa calcula la «altura» en cada división como la media del punto anterior y posterior más una componente aleatoria. La parte aleatoria es menor en cada nivel sucesivo, con lo que la diferencia entre valores sucesivos es menor según ampliamos el número de niveles. Así el paisaje se mantiene coherente, sin saltos bruscos. Una vez calculada la matriz, en las líneas 70-130, que tendrá más o menos tamaño según el nivel, se procede al dibujo. Si se quiere realizar dibujos a niveles mayores habrá que redimensionar la matriz d, y quizá dibujar en modo 2.

El sistema de pesos decrecientes para los números aleatorios permite mantener la correlación de los puntos similar a la que se observa en los paisajes reales. En ellos las alturas de puntos cercanos están muy relacionadas entre sí. Si los puntos son más distantes, no hay apenas relación entre sus alturas.

Para dibujar se trazan tres hileras de líneas quebradas (bucles en líneas 670-750). La rutina de dibujo llama a otras que calculan la altura del agua, la transformación de perspectiva y la rotación según el punto de vista.

Los dibujos se realizan mediante valores aleatorios, y se hace RANDOMIZE TIME antes de comenzar. Una forma de seleccionar buenas vistas es realizar un dibujo a nivel tres. Si parece interesante se puede repetir a un nivel mayor escribiendo RANDOMIZE tiempo y GOTO 30.

Las vistas obtenidas se pueden salvar en disco o cassette sustituyendo la última línea por el SAVE.

Naturalmente, los tiempos necesarios para realizar un dibujo son función del nivel de recursión, y se multiplican por cuatro cada vez que le añadimos uno al nivel.

Si alguien se plantea ampliar el nivel máximo de recursión, debe pensar al mismo tiempo en cambiar el programa a un lenguaje compilado para ganar velocidad.

Por otra parte, debemos pensar que la aplicación de éstas técnicas a problemas reales de animación por ordenador exige el uso de los mayores ordenadores existentes (CRAY XM-P o parecidos). Así que conviene no hacerse ilusiones: con nuestro Amstrad no podremos llegar mucho más allá del nivel 6 que, por otra parte, establece el límite de lo realizable en BASIC en la mayor parte de los ordenadores.

Las superficies fractales son un descubrimiento matemático reciente, que ha encontrado aplicaciones insospechadas en campos como la mecánica teórica. B. Mandelbrot, creador de este campo, ha presentado muchos otros ejemplos de curvas y superficies fractales; entre ellas el conjunto que lleva su nombre, cuyas representaciones gráficas, de una gran belleza, se muestran en la revista «Investigación y Ciencia» (octubre 1985).

Amstard User #2

★ PUBLISHER: Amstrad User
★ YEAR: 1985
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ AUTHOR(S): ???
★ NOTE: El programa titulado «Paisajes extraterrestres», hay algunas líneas que vienen en mi ejemplar medio borradas y no lo pude introducir. No has sido el único que has sufrido ese problema, extensivo a buena parte de la tirada de nuestra revista, poor ello queremos aprovechar esta petición, así como la de otros lectores, para volver a publicar el listado borroso. Esperamos que no vuelva a ocurrir y pedimos disculpas por este problema técnico.
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» Paisajes  Extraterrestres    (Amstrad  User)    SPANISH    LISTINGDATE: 2022-03-04
DL: 141
TYPE: PDF
SiZE: 543Ko
NOTE: 2 pages/PDFlib v1.6

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Paintmax
» Applications » Corepaint
» Applications » 3D Mini-Painter (CPC Amstrad International)
» Applications » CPC Paint (Amstrad Magazine)
» Applications » Painter (Computronic)
» Applications » Paint
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop
Page créée en 089 millisecondes et consultée 534 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.