Was ich überhaupt nicht einordnen kann in dem Ganzen, ist die Rolle von Phyton!? Wo soll das verwendet werden? Und wozu? Javascript und ein Applet ...ok...aber da ist nirgends Phyton... :?:
Na gut, ich versuch das mal zu entwirren, obwohl ich auch kein gestandener Informatiker bin.
Interaktionen werden in der Blender GE folgendermaßen programmiert:
Man verknüpft die in einer Blender-Szene die Objekte mit so genannten LogicBricks. Dabei gibt es die
- Sensoren: die warten auch Ereignisse wie Mausklick, Tastatur, Messages, Collisions, Near-Ereignisse und solches Zeug. Diese werden an die
- Controllers weitergeleitet, welche eine logische Überprüfung durchführen, oder aber auch ein in das Blender-File eingebettetes Python-Skript aufrufen. In diesem Python-Skript können dann auch komplexere Dinge gemacht werden. Eine Weiterleitung an ein Python-Skript ist aber nicht zwingend notwendig, es können auch unglaublich viele Dinge mittels LogicBricks gemacht werden. Wenn das Signal am Ausgang der Controller TRUE ist, erfolgt ein Weiterleitung an einen oder mehrere
- Actuators. Hier wird dann die eigentliche Aktion ausgelöst. Hier eine grobe Auflistung von möglichen Aktionen: Bewegungs/Rotationsanweisungen, Laden einer neuen Szene, Spiel Pausieren, Sound abspielen, Zufallswert generieren, eine Variable mit einem Wert füllen, eine Message an ein anderes Game-Objekt schicken, u.s.w....
Wie man diese LogicBricks in eine Java-Klasse bringt weiss ich nicht, dafür reichen meine Fachkenntnisse bei weitem nicht. Auch wird es zwingend notwendig sein, sich im Sourcecode von Blender auszukennen. Um die Funktionalitäten des Python-Skripts in die Java-Klasse zu bringen ist höchst wahrscheinlich ein Wrapper oder Interpreter (ich glaube so heißt das) notwendig.
Und Phyton in Java als Skriptsprache einbinden, die dann Code ausführt, der eigentlich in Blender laufen sollte...das kommt mir doch extremst merkwürdig vor. Ist das gemeint?
Was dieter1a mit
"Und im Moment greife ich via Python auf JavaScript zu.
Das gibt das ActiveX vor. "
meint, ist , daß es möglich ist entweder über die LogicBricks oder über das eingebundene Python-Skript mit dem Browser, in dem das ActiveX-Plugin läuft, zu kommunizieren. Z.B. lässt sich aus dem ActiveX-Plugin heraus eine andere Website in einem neuen Fenster aufrufen.
Die Blender GE kann aber auch direkt aus Blender heraus ausführbare Exe-Anwendungen erstellen. Oder auch app-Anwendungen für Mac. Oder ausführbare Anwendungen für Linux. Ist alles in Blender schon inkludiert (Wobei ich nicht weiß, wie gut das auf dem Mac oder auf Linux funktioniert). Hier ist dann aber keine Kommunikation mit einer anderen Anwendung möglich.
Hoffe jetzt ist einiges klarer, wenn Du mehr Informationen brauchst kann ich Dir Links zu Dokumentationen u.s.w. schicken.
LG,
Toni