camera.c

Dieses Skript enthält oft verwendete Funktionen zum Steuern einer Kamera im Bezug auf eine Zielentity (für gewöhnlich den Player). Ausserdem werden die Funktionen von den Auto-Templates verwendet. Das Skript enthält eine Start-Up-Funktion (camera_startup), die mit der Taste [C] zwischen den 6 verfügbaren Kameramodi durchschaltet, die individuellen Modi mit den Tasten [F1] .. [F6] aktiviert und das Zoomen mit dem Mausrad ermöglicht.

Globale Parameter

Var Default Remarks
tcamera_mode
1
Anfangs- und gegenwärtiger Kameramodus (1..6), wird von camera_startup benutzt. 0 zum Abschalten von camera_startup.
tcamera_dist
250
Distanz zwischen Kamera und Player in sämtlichen Modi mit Ausnahme der 1.Person-Kamera.
tcamera_height
50
Vertikale Distanz zwischen Kamera und Player für's Verfolgen, das Umkreisen und eine fixierte Kamera.
tcamera_minDist
100
Minimaldistanz zwischen Kamera und Player.
tcamera_maxDist
2000
Maximaldistanz zwischen Kamera und Player.
tcamera_zoomDist
2
Empfindlichkeit des Mausrades beim Einstellen des Kameraabstandes zwischen Minimum und Maximum.
tcamera_pos_x
0
X-Position für den fixierten Kameramodus.
tcamera_pos_y
0
Y-Position für den fixierten Kameramodus.
tcamera_offset_x
0
X-Offset für die 1.Person-Kamera.
tcamera_offset_y
10
Y-Offset für die 1.Person-Kamera.
tcamera_offset_z
20
Z-Offset für die 1.Person-Kamera.
 
 
key_togglecamera
"c"
Taste zum Weiterschalten des Kameramodus'.
joy_togglecamera
4
Joystick-Knopf zum Weiterschalten des Kameramodus'.
key_camera1
"f1"
Taste zum Aktivieren des Verfolgungs-Kameramodus'.
key_camera2
"f2"
Taste zum Aktivieren des Umkreisungs-Kameramodus'.
key_camera3
"f3"
Taste zum Aktivieren des Fixierungs-Kameramodus'.
key_camera4
"f4"
Taste zum Aktivieren des Offset-Kameramodus'.
key_camera5
"f5"
Taste zum Aktivieren des Erste-Person-Kameramodus'.
key_camera6
"f6"
Taste zum Aktivieren des Dritte-Person-Kameramodus'.

 

camera_chase(ENTITY*, var distance, var height)

Folgt der Entity mit der Kamera und hält dabei Abstand (distance) und Höhe (height) konstant. Wird in der Funktion camera_startup mit der Taste [F1] aktiviert.

camera_orbit(ENTITY*, var angle, var distance, var height)

Schaut aus einem gegebenen pan-Winkel (0== dahinter), Abstand (distance) und der Höhe (height) auf die Entity. Wird in der Funktion camera_startup mit der Taste [F2] aktiviert.

camera_face(ENTITY*, var height)

Schaut aus einer fixierten xy-Position (die gegenwärtige Kameraposition) und einer gegebenen Höhe (height) auf die Entity. Wird in der Funktion camera_startup mit der Taste [F3] aktiviert.

camera_offset(ENTITY*, VECTOR* offset)

Schaut aus einer sich mit ihr mitbewegenden Offset-Position auf die Entity. Wird in der Funktion camera_startup mit der Taste [F4] aktiviert.

camera_person(ENTITY*, VECTOR* offset, var factor)

Eerste- oder Dritte-Person-Kameraperspektive. Die Kamera schaut in dieselbe Richtung wie die Entity und bewegt sich mit einem Offset mit ihr mit. Der Faktor (factor) (0..1) betrifft den Einfluß der Winkel tilt und roll der Entity. Der 1.Person-Modus wird in der Funktion camera_startup mit der Taste [F5], der 3.Person-Modus mit der Taste [F6] aktiviert.

Parameter

ent Zielentity, für gewöhnlich der Player.
height Vertikaler Offset der Kamera zur Zielentity.
angle Unterschied zwischen Kamerawinkel und dem Winkel der Zielentity.
dist Abstand zwischen Kamera und Zielentity.
offset Offset-Vektor, relative Position der Kamera im Bezug auf die Zielentity.
factor Einfluss der tilt- und roll-Winkel der Entity auf die Kamerawinkel: 0 = kein Einfluss, 1 = voller Einfluss.

Bemerkungen

Siehe Auch

car template, car.c, camera

► latest version online