Übersetzung


Nachfolgend sollen noch einige Hinweise zur Übersetzung der ActionScript-Quellen unter Linux und zur Arbeit mit Papervision3D gegeben werden.

Zunächst benötigt man das Flex 3 SDK.

Nach dem Ent-zip-pen erhält man folgende Verzeichnisstruktur (Auszug):

filesys1

Nun erweitert man seine PATH-Variable so, dass sie die Programme in bin einschließt.

Man kopiert frameworks/flex-config.xml nach samples/flex-config.xml und editiert das File:

Danach zieht man sich das Papervision3D am besten über Subversion:

svn co http://papervision3d.googlecode.com/svn/trunk/as3/trunk

Man kopiert trunk/src/org nach samples:

filesys2

In samples entpackt man die Beispiel-Quellen, wodurch unterhalb von samples ein weiteres Verzeichnis psamples entsteht:

filesys3

Zur Übersetzung erfolgt im Verzeichnis samples. Man legt zunächst ein Verzeichnis bin an und schreibt man sich am besten ein kleines Script compile:

#!/bin/bash

if [ $# -ne 1 ]
then
        echo "Benutzung $0 [src.as | src_mx.mxml]"
        exit 1
fi

bname0=`basename $1`

bname1=`echo $bname0 | sed 's/\.[^\.]*$//'`

mxmlc -load-config flex-config.xml $1 -output ./bin/$bname1.swf

und macht dieses ausführbar: chmod 0755 compile. Im Verzeichnis samples gibt man nun das Kommando:

./compile psamples/Ring/DAERing.as

Dieses erzeugt aus psamples/Ring/DAERing.as die Datei bin/DAERing.swf.

Wichtig! Nun muss man alle *.dae-Dateien und alle *.mp3-Dateien gleichfalls nach samples/bin kopieren.

Es empfiehlt sich nicht, das Programm sofort mit einem WEB-Browser auszuprobieren, da dieser im Fehlerfall nur ein schwazes Rechteck ohne jede Fehlernachricht anzeigt. Besser ist es, die Debug-Variante des Standalone-Flashplayers zu installieren.

Da der Flashplayer keine Objekte aus dem Filesystem nachlädt, muss man nun im Verzeichnis samples/bin einen WebServer starten. Dafür bietet sich der Python-WebServer an:

python /usr/lib/python2.5/CGIHTTPServer.py

Da dieser auf Port 8000 läuft, könnte ein Test mit dem Standalone-Flashplayer also so aussehen:

flashplayer http://localhost:8000/DAERing.swf

Will man die Szene auf einer WEB-Seite zeigen, so muss man auf der HTML-Seite (etwa) Folgendes platzieren:

<object classid="CLSID:D27CDB6E-AE6D-11cf-96B8-444553540000" width="800" height="600"
          codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0">
    <param name="movie" value="DAERing.swf">
    <param name="quality" value="low">
    <param name="bgcolor" value="#000040">
    <embed src="DAERing.swf" quality="high" scale="exactfit" menu="false"
           bgcolor="#000000" width="800" height="600" swLiveConnect="false"
           type="application/x-shockwave-flash"
           pluginspage="http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash">
    </embed>
</object>

Jörg Anders <ja@informatik.tu-chemnitz.de>