original in tr Erdal Mutlu, Ceyhun Elmas
tr to en Erdal Mutlu
en to nl Rob Huls
Erdal werkt als research assistent en als Linux systeem-, netwerk- en
webbeheerder bij het informatica instituut van de Technische Universiteit van
Istanbul. Hij gebruikt Linux sinds 1992 en is sindsdien een fan van Linux. Op
dit moment werkt hij aan zijn afstudeerscriptie die gaat over een op internet
gebaseerd onderwijs systeem dat gebruik maakt van de Java programmeertaal. Hij
ondersteunt _LF_ met vertalingen en systeemzaken.
Ceyhun is wiskundig ingenieur en werkt bij de Ford Motor Company Turkije als
Unix systeembeheerder. Hij is een van de Turkse _LF_ redacteuren. Verder werkt
hij aan de simulatie en animatie van waterstof atomen met behulp van BMRT (blue
moon rendering tools, zie de paragraaf referenties) aan het
informatica instituut van de Universiteit van Instanbul. Hij wil meer tijd
besteden aan klassieke gitaar spelen en reizen naar de mooiste natuurlijke en
historische plaatsen in Turkije. Hij heeft echter zelfs geen vrije tijd om een
vriendin te vinden :))))
BORG is geschreven in Java. Borg is een grafische user interface voor BMRT, maar het is niet alleen een GUI. Het programma verdeelt het renderwerk over verschillende computers waar BMRT gebruikt wordt om de frames te renderen. Na het renderen verzameld BORG alle gegevens op een plaats.
Sinds het begin van het gebruik van computers in het animatieproces zijn er vele ontwikkelingen geweest in de software en hardware systemen. Tegenwoordig is het moeilijk het onderscheid te maken tussen de echte wereld om ons heen en het werk dat gedaan wordt met computeranimaties. Er worden films volledig met de computer gemaakt. Zowel wetenschappers als artiesten gebruiken computer animaties op een effectieve manier. De voordelen van computeranimaties worden op vele plaatsen benut, zoals in auto crash testen, hersenchirurgie, ruimtevaartonderzoek, onderwijs en ga zo maar door.
Ondanks deze ontwikkelingen zijn er nog steeds grote en dure systemen nodig voor het renderen en de tijd die het voltooien van de taak in beslag neemt is aanzienlijk. Hiervoor zijn twee belangrijke redenen. Ten eerste moeten de resultaten steeds fotorealistischer zijn. Daarom worden technieken als ray-tracing gebruikt die meer computerkracht en tijd vergen. Ten tweede moeten er minstens 25 frames per seconde worden gemaakt opdat het menselijk oog een vloeiende beweging ziet.
Je kunt BORG gratis downloaden van http://www.project-borg.org. Op het moment
van schrijven is de nieuwste versie van BORG 0.2.90 en dus hebben we deze versie
gebruikt. Het bestand dat opgehaald moet worden heeft een grootte van ongeveer 1
MB. Het commando tar xvfz borg0.2.90_install.tar.gz kan gebruikt worden
om de bestanden uit de pakken. Daarna krijg je de volgende bestanden en
directories:
borg_install/ borg_install/bin/ borg_install/bin/install.jar borg_install/sm/ borg_install/sm/borg.jar borg_install/sm/credits.jpg borg_install/sm/startup.jpg borg_install/sm/topimage.jpg borg_install/sm/english.borg.lang borg_install/sm/german.borg.lang borg_install/sm/borg.bat borg_install/bserver/ borg_install/bserver/bserver.jar borg_install/bserver/bserver.bat borg_install/doc/ borg_install/doc/doc.zip borg_install/icons/ borg_install/icons/BorgServer.xpm borg_install/icons/BorgServerManager.xpm borg_install/CHANGES borg_install/CHANGES.GERMAN borg_install/FEATURELIST borg_install/README borg_install/Win32.txt borg_install/chmode.sh borg_install/install_for_jre1.1.x/ borg_install/install_for_jre1.1.x/install.bat borg_install/install_for_jre1.1.x/install.sh borg_install/install_for_jre1.1.x/install.x11 borg_install/install_for_jre1.2.x/ borg_install/install_for_jre1.2.x/install.bat borg_install/install_for_jre1.2.x/install.sh borg_install/install_for_jre1.2.x/install.x11 borg_install/license.borg.txt
Om BORG te kunnen gebruiken moet je een versie van de Java runtime of ontwikkel omgeving geinstalleerd hebben. Afhankelijk van de versie van je Java omgeving zijn er twee directories: borg_install/install_for_jre1.1.xi and borg_install/install_for_jre1.2.x. Elk bevat drie installatie bestanden install.bat voor Window$ systemen, install.sh en install.x11 voor UNIX systemen. De install.sh voor UNIX/Linux systemen wordt gebruikt om BORG te installeren vanaf de prompt en install.x11 wordt gebruikt om in een X-window omgeving te installeren.
We hebben BORG op meer dan 70 PC's in ons computerlab geinstalleerd. Het is niet zinvol om de software op zoveel systemen met de hand te installeren. Erdal heeft een klein maar handig BASH-script ontwikkelt voor deze taak. Deze beschrijven we misschien nog eens in een ander artikel. He, we zijn Linux beheerder en kunnen gewoon niet leven zonder deze omgeving en de bijbehorende hulpprogramma's. Maar hier zullen we de grafische installie beschrijven.
Voordat je BORG installeert moet je eerst controlleren of er een versie
van BMRT op je systeem aanwezig is. Om uit te
vinden welke versie van Java er op je systeem staat geef je het volgende
commando:
java -version
Wij gebruiken versie 1.3 en de uitvoer is daarom:
java version "1.3.0
Nu gaan we naar de directory borg_install/install_for_jre1.2.x en geven
het commando install.x11. Als je ziet
"Unable to initialize threads: cannot find class java/lang/Thread
Could not create Java VM"
of iets dergelijks, dan betekent dat dat je de CLASSPATH omgevings vcariabele
niet gedefinieerd hebt. Om dit te doen gebruiken we het volgende commando:
bash:
CLASSPATH=/usr/lib/java
export CLASSPATH
tcsh:
setenv CLASSPATH /usr/lib/java
Als je er in geslaagd bent het installatie programma te draaien, dan krijg je
het licentiescherm.
Fantastisch nieuws: De volgende versie van BORG die midden April uitkomt
komt onder de GPL licentie. Nadat je de huidige licentie van BORG hebt gelezen
krijg je:
Hier kun je kiezen uit een of beide componenten, te weten de BORG
Server Manager en the BORG Server. De BORG server manager is zoals de naam
al zegt een manager GUI. De BORG Server is een programma dat BMRT gebruikt om de
renderen en de resulterende frames terugstuurt naar de BORG Server Manager. Dit
kan schematisch worden weergegeven zoals hieronder is gedaan:
Eerst moet je de BORG Server Manager installeren op de machine waar je vanaf
gaat werken. Daarna kun je de BORG Server installeren op de andere computers.
Voor de eenvoud installeren we beide componenten van BORG op deze machines. Als
je de BORG Server installeert moet je het IP adres van de BORG Server Manager
opgeven, vandaar dat je deze eerst moet installeren.
Wees voorzichtig met het opgeven van de paden in het installatie menu. Alleen
als deze juist zijn zal het programma de installatie succesvol volbrengen.
Als je de installatie instructies hierboven volgt kun je de BORG Server
succesvol installeren op andere PC's.
Ok. Nu zijn onze projecten klaar, maar hebben we geen BORG servers om ze
te renderen. Daarom geven we het commando:
bserver
op de computers waarop de BORG servers zijn geinstalleerd. Als de BORG Server
succesvol gestart is kun je dit zien in het scherm van de BORG Server
Manager.
(klik op het plaatje om het op ware grootte te zien)
Het aardige van Borg is dat je de labels een berichten eenvoudig in je eigen taal kunt vertalen. Verander hiertoe de waarde van de LANG variabele in het bestand borg.conf in de naam van je taal (bijvoorbeeld: Turkish) en maak een kopie van het bestand english.borg.lang met de naam yourlang.borg.lang en vertaal het.
Je zult zien dat het gebruik van meer BORG servers de rendertijd aanzienlijk zal reduceren. Dit doe je door gebruik te maken van je bestaande computers.
De nieuwe versie van BORG zal een GPL-licentie krijgen. Dit is erg belangrijk, omdat soortgelijke programma's erg duur zijn en ook erg dure systemen vereisen om op te draaien.
BORG is nog steeds beta-software en heeft wat beperkingen. Een ervan is dat je de BORG Servers niet kunt starten vanaf de BORG Server Manager. Om ze te starten moet je ze starten op de computers waarop ze geinstalleerd staan. Dit zal misschien nog veranderen, als de auteurs BORG Servers schrijven die als daemon luisteren op een bepaalde poort en verbinding maken als dat nodig is. Een tweede, niet zo belangrijke beperkingen die we zagen toen we de labels in het Turks vertaalden was dat er herschaalproblemen waren. Een deel van de labels kon je niet zien.
De conclusie is hoe dan ook dat BORG het renderprocess drastisch versnelt!