ALIGNTOVECTOR Entity, x#, y#, z#, Achse [,Tempo#]


BeschreibungBlitz3D
Die Anweisung ALIGNTOVECTOR richtet eine Objekt-Achse an einen Punkt aus. Dazu wird die Identität des Objekts angegeben und die drei Koordinaten. Danach wird die Achse des Objekts angegeben. Diese Angaben reichen aus, um ein Objekt auszurichten.

Der optionale Parameter "Tempo" gibt die Geschwindigkeit der Drehung an. Bei 1 wird es sofort auf den Vector gedreht. Bei kleinerem Wert ist die Bewegung glatter.



Parameter
Entity=Identität eines Objekts (entity)
X=Relative X-Koordinate
Y=Relative Y-Koordinate
Z=Relative Z-Koordinate
Achse=Nummer der Achse (1=X, 2=Y, 3=Z)
Tempo=Wert zwischen 0 und 1 (1=Standard). Bei 1 wird es sofort auf den Vector ausgerichet. Bei kleinerem Wert wird es schrittweise zu dem Vector gedreht.


Rückgabewert
-


Beispiel
Dieses Programm erstellt zwei Objekte: einen Zylinder und eine Kugel. Die Kugel kann verschoben werden. Der Zylinder zeigt aber immer auf die Kugel:

GRAPHICS3D 640,480,16,2
SETBUFFER BACKBUFFER()
camera=CREATECAMERA()
light=CREATELIGHT()
POSITIONENTITY camera,0,0,-5
ROTATEENTITY light,90,0,0

cylinder=CREATECYLINDER(20)
sphere=CREATESPHERE()
SCALEENTITY cylinder,1,3,1
POSITIONENTITY cylinder,0,0,5
ENTITYALPHA sphere,.8
ENTITYCOLOR sphere,255,100,100

WHILE NOT KEYHIT(1)
   IF KEYDOWN(200) THEN MOVEENTITY sphere,0,.1,0
   IF KEYDOWN(208) THEN MOVEENTITY sphere,0,-.1,0
   IF KEYDOWN(203) THEN MOVEENTITY sphere,-.1,0,0
   IF KEYDOWN(205) THEN MOVEENTITY sphere,.1,0,0
   ALIGNTOVECTOR cylinder,ENTITYX(sphere),ENTITYY(sphere),-5,2
   RENDERWORLD
   FLIP
WEND
END


Siehe auch
POINTENTITY, ROTATEENTITY, TURNENTITY