Die vorgefertigten Kameras kann man recht einfach verwenden. Du musst dazu eine Kamera in den Level setzen. Klicke mit rechts auf die XYTop Ansicht und wähle cin->irgendeine_cam aus. Nenne sie z.B. camera1. Es gibt etwa 30 zur Auswahl. In der Datei base/defs/cinematic.def findest du die Definitionen der Kameras und ihrer Animationen. Mit dem Befehl
sys.setCamera($camera1);
wird die Sicht von 1st person auf die Kamera gewechselt. Du musst definieren, welche Animation der kamera verwendet werden soll. Das geht mit dem Befehl
$camera1.setAnim( "scene1cams" );
Eine Liste aller Animationen ist in der cinematics.def. Dann kannst du die Kamera starten mit
$camera1.start();
sys.waitFor($camera1); //um zu warten, bis die Kamera fertig ist
Um wieder in die 1st person Perspektive zu wechseln, verwendest du
sys.firstPerson();
Um den Spieler während der Animation zu verstecken, kannst du die Variable g_showplayer ein und ausschalten:
sys.setcvar( "g_showplayer", "0" );
sys.setcvar( "g_showplayer", "1" );
Hier z.B. das Script der kamera in der bathroom szene:
sys.setcvar( "g_showplayer", "0" );
sys.setCamera( $camera1 );
$camera1.setAnim( "scene1cams" );
$camera1.start();
sys.fadeIn( '0 0 0', 0.75 );
sys.waitFor( $camera1 );
$camera1.setAnim( "scene2cam" );
$camera1.start();
sys.waitFor( $camera1 );
$camera1.setAnim( "scene3cams" );
$camera1.start();
sys.waitFor( $camera1 );
$camera1.setAnim( "scene9acam" );
$camera1.start();
sys.wait( 6.7916 );
sys.setcvar( "g_showplayer", "1" );
sys.firstPerson();
Die Kameras selbst sind Maya modelle (md5mesh). Ihre Animationen sind auch in Maya gemacht (md5anim). Ich habe leider kein Maya, deshalb weiß ich nicht, wie man sie sich selber macht.