pXent_setbodyflag(ENTITY * entity, var BodyFlag, var set)
pXent_setbodyflagall(var BodyFlag, var set)
Hierdurch wird ein Body-Flag für eine Actor-Entity bzw. für sämtliche registrierten Actors gesetzt bzw. zurückgesetzt.
Parameter:
entity |
registrierter Entity-Pointer (Actor) |
BodyFlag
|
NX_BF_DISABLE_GRAVITY - schaltet die Schwerkraft ab.
NX_BF_FROZEN_POS_X - schaltet die betreffende Achse ab.
NX_BF_FROZEN_POS_Z
NX_BF_FROZEN_POS_Y
NX_BF_FROZEN_ROLL
NX_BF_FROZEN_PAN
NX_BF_FROZEN_TILT
NX_BF_FROZEN_POS - verhindert jede Bewegung.
NX_BF_FROZEN_ROT - verhindert jede Drehung.
NX_BF_KINEMATIC - aktiviert kinematische Steuerung.
NX_BF_FILTER_SLEEP_VEL
NX_BF_ENERGY_SLEEP_TEST |
set |
1 zum Setzen, 0 zum Zurücksetzen des Flags |
Rückgabewerte:
Ungleich 0, wenn erfolgreich, ansonsten 0.
Bemerkungen:
- 2D-Physik läst sich durch Abschalten einer Achse realisieren, beispielsweise mit NX_FROZEN_POS_Y.
- Kinematische Steuerung (NX_BF_KINEMATIC) kann für alle dynamische Physik-Entities aktiviert werden. Eine kinematische Entity wird nicht von Kräften beeinflusst, kann aber mit pXent_move gesteuert werden, alternativ zu einem Character-Controller (PH_CHAR).
Geschwindigkeit:
Schnell
Beispiel:
pXent_setbodyflag (my, NX_BF_DISABLE_GRAVITY,1); // no gravity for the my entity only
pXent_setbodyflagall (NX_BF_DISABLE_GRAVITY,1); // no gravity for all entities
Siehe auch:
pXent_settype, pXent_move