ph_setgravity (VECTOR* vecGravity );

Legt die globale Gravitation Stärke und Richtung durch einen Beschleunigungsvektor fest. In der Regel wird vecGravity.x und vecGravity.y auf 0 gesetzt. Nur vecGravity.z bekommt einen negativen Wert. So wird "Erdanziehung" entlang der Z-Achse simuliert. Die X und Y Elemente können verwendet werden, um z.B. einen Windtunnel zu simulieren, wo der Wind auf der Waagrechten entgegenkommt, und somit eine Gravitation von -X nach X oder -Y nach Y, oder andere Verhältnisse darstellt. Der Betrag von vecGravity gibt die Beschleunigung an, die sich auf alle aktiven Physik-Entities auswirkt. Die Erdanziehungskraft ist normalerweise 9.81 m/s², 1 Quant ist normalerweise als 1 Zoll = 2.54cm definiert. Um die Erdanziehungskraft zu simulieren, muss vecGravity.z bei Standardscalierung auf (-9.81 * 100 / 2.54) = -386 gesetzt werden. Für Weltraumsimulationen kann vecGravity auf (0,0,0) gesetzt werden. Dies bringt einen enormen Leistungsgewinn, da das Physik Subsystem weniger Berechnungen durchführen muss. Wie in der echten Welt ist die Beschleunigung unabhängig von der Masse - alle Objekte fallen gleich schnell unabhängig von Ihrer Masse.

Parameter:

vecGravity - ein dreiwertiger Vektor, der Gravitationsrichtung und Ausmaß für alle Physik-Entities definiert..

Rückgabewert:

1 bei Erfolg, sonst 0.

Geschwindigkeit:

Schnell

Beispiel:

var earthgravity[3] = { 0,0, -386 };
var jupiterGravity[3];
...
ph_setgravity( earthgravity );
wait(-1); // 1 second of ordinary gravity

ph_setgravity( nullvector );
wait(-1); // floating in space for another second

vec_set( jupiterGravity, earthGravity );
vec_scale( jupiterGravity, 2.5 );
ph_setgravity( jupiterGravity );
wait(-1); // things will become really heavy now..

Siehe auch:

phent_setmass

► Aktuelle Version Online