Spawner
Derek Gerstmann (USA)
Software + Animation
This project was an experiment into controlled evolutionary animation of abstract visual forms. It is a both a computer generated animation (featuring Selections from a Procedural World of Networked Evolutionary Renders), as well as a software package designed specifically for creating such forms.
In the course of conducting some personal research into evolutionary programming methods and their applications towards computer graphics, I developed a basic evolutionary framework for creating procedural textures, which I named Spawner, after the notion of creation from random chaos.
This system evolves individuals through mutation, such that an originally random population is refined through user-controlled aesthetic selection, until a point of convergence is reached. In practice, this required an extensive amount of evolution to remove bad candidates (roughly over 60%). As a result, two solid weeks were dedicated to evolving low resolution thumbnail-size images in order to isolate visually pleasing individuals. Once these were obtained, test animations were rendered using spline based curves evaluated over various parameter ranges. Since the evaluation scheme essentially integrates a slice within a volumetric space, motion was the result of flying through the volume. Colourisation was determined by the values of the procedural operations, or a remapping process which uses spline based colour gradients.
Invalid ranges, where the visual features of the animation digressed too far away from the initial form, were then removed, and new curves were created to render the final segment. A total of seven individuals were processed. The resulting 4 minute animation was rendered over the course of three weeks, with anywhere from 1-70 workstations (with dual 2.4Ghz Intel Xeon processors) being used for processing. A total of 14,000 frames were rendered at 1k resolution with 3x oversampling (essentially 3K) in high dynamic range (OpenEXR), with an average rendering time of 1 hour. These frames were later trimmed and multiple sections were selected to form the final animation.
„Minden dolgok eredője”
Szoftver és animáció
A projekt egy kísérlet arra, hogy kontrollált evolúciós animációkat hozzunk létre absztrakt képi formákból. A mű egyszerre a számítógép generálta animáció (melynek címe: Válogatás a Hálózati Evolúciós eljárással készített képek világából), illetve egy program, amelyet arra terveztek, hogy az ehhez hasonló animációkat elkészítse.
Miközben a evolúciós programozási eljárásokat kutattam, valamint azok alkalmazhatóságát a számítógépes grafika területén, kifejlesztettem egy alapvető evolúciós keretrendszert, amely képes egymástól megkülönböztethető képfelületeket kiemelni a látszólagos káoszból. A rendszert Spawnernek / Minden dolgok eredőjének neveztem el.
A rendszer egyedi elemeket - változókat - épít fel mutáció segítségével, úgy, hogy a rendelkezésre álló alapkészletet (véletlenszerű képek halmazát) a program felhasználója pusztán esztétikai szempontból kell, hogy osztályozza, egészen addig, amíg a program képessé válik arra, hogy önmaga válogasson, azaz összefüggéseket talál a felhasználó döntéseiben. Ez a gyakorlatban úgy néz ki, hogy a alapelemek nagy része - a hibás elemek - (körülbelül 60%-a) kiválasztódik ebben az extenzíven bővülő evolúciós folyamatban. Két héten át szelektálta a program az adatokat - alacsony felbontású és kis méretű képeket, hogy a végeredményképpen különválassza azokat a képeket, amelyek a válogató személy képi ízlésének megfeleltek. Miután a válogatás befejeződött, a meglévő képekből különböző határozók mentén spline számításokon alapuló görbék segítségével kísérleti animációkat rendereltek. És mivel a rendszer alapját képező evolúciós számítási folyamat térbeli együtthatóval is dolgozik, az együttható változás a kész animációban mozgásként jelenik meg. A színeket az határozta meg, hogy az anyagátalakítási együtthatók érékei hogyan változnak a számítások során, illetve az, hogy a térbeli objektumok felületét a spline-ok milyen számítások mentén rajzolták újra.
Ezután azokat az elhajlási görbéket, amelyek túlságosan elsodornák az animációt annak kezdeti fázisától a program új, az animációba illeszkedő görbékkel pótolja.
Összesen hét változóval kezdték meg a számításokat és a számítógépeknek az összesen 4 perces animáció renderelése három hétig tartott, úgy, hogy egyszerre akár hetven gép is dolgozott a számításokon (minden egyes gépben egy 2.4 Gigahertzes Intel Xeon processzor számolt). Összesen nagyjából 14,000 darab 1k felbontású animációs fázist rendereltek a gépek három rétegben, azaz összesen 3000-es felbontásban. Mivel a HDR (high dynamic range) - OpenEXR rendszer segítségével effektusokat is alkalmaztak, amelyek a virtuális testek és az általuk kibocsátott fény hatását és visszaverődését is figyelembe veszik a kép megrajzolásakor, egy képkocka renderelése nagyjából egy órán át tartott. A program végül még átfésülte és egymáshoz igazította a képkockákat, és kialakult az itt látható animáció.
/fordította: Fuchs Péter/