Kamera=CREATECAMERA ([Parent])


BeschreibungBlitz3D
Der Befehl CREATECAMERA erstellt eine virtuelle Kamera und liefert die Identität der Kamera zurück.

Ohne eine Kamera kann keine 3D-Welt dargestellt werden. Bei mehr als einer Kamera ist ein Spiel mit Splitscreen möglich.

Eine 3D-Welt kann nur ins BACKBUFFER gerendert werden. Falls eine 3D-Szene in ein Image gespeichert werden soll, dann muss man einen Ausschnitt des BackBuffers mit GRABIMAGE oder COPYRECT kopieren.

Wurde der Parameter "Parent" angegeben, dann wird diese Kamera zu einem Objekt hinzugefügt. Falls nun ein Parent-Objekt bewegt wird, dann werden alle hinzugefügten Objekte automatisch verschoben. Ein Child-Objekt verschiebt dagegen kein Parent-Objekt mit.

Die Kamera wird normalerweise an der Position 0,0,0 erstellt. Wurde Parent angegeben, dann wird die an der Position des Parent-Objekts erstellt.

In der Zeichnung kann man gut erkennen, dass die Entfernung nicht im Radius betrachtet wird. Das bedeutet: An Seitenrändern erkennt man auch weiter liegende Objekte die in der Mitte nicht zu sehen sind! Beachte das bei deinen Programmen!


Parameter
Parent=Identität des Objekts zu dem es hinzugefügt werden soll


Rückgabewert
Es wird die Identität der Kamera zurückgeliefert.


Beispiel
Eine Fläche und ein Würfel werden erstellt. Ein Nebeleffekt kann eingeschaltet werden:

GRAPHICS3D 640,480,16,1
SETBUFFER BACKBUFFER()
camera=CREATECAMERA()
POSITIONENTITY camera,0,1,0
CAMERACLSCOLOR camera,190,185,180
CAMERAFOGCOLOR camera,180,175,170
CAMERAFOGRANGE camera,1,10
light=CREATELIGHT()
ROTATEENTITY light,90,0,0
plane=CREATEPLANE()
cube=CREATECUBE()
ROTATEENTITY cube,10,30,0
POSITIONENTITY cube,0,0,5
ENTITYCOLOR cube,100,150,200

WHILE NOT KEYDOWN(1)
   IF KEYHIT(057)=1 THEN
      fog_mode=1-fog_mode
      CAMERAFOGMODE camera,fog_mode
   END IF
   IF KEYDOWN(205)=1 THEN TURNENTITY camera,0,-1,0
   IF KEYDOWN(203)=1 THEN TURNENTITY camera,0,1,0
   IF KEYDOWN(208)=1 THEN MOVEENTITY camera,0,0,-0.05
   IF KEYDOWN(200)=1 THEN MOVEENTITY camera,0,0,0.05
   RENDERWORLD
   TEXT 0,0,"Mit Cursortasten kannst du dich bewegen"
   TEXT 0,20,"Mit Leertaste kann Nebel eingeschaltet werden"
   IF fog_mode=0 THEN TEXT 0,40,"CameraFogMode 0"
   IF fog_mode=1 THEN TEXT 0,40,"CameraFogMode 1"
   FLIP
WEND
END


Siehe auch
CAMERACLSCOLOR, CAMERACLSMODE, CAMERAFOGCOLOR, CAMERAFOGMODE, CAMERAFOGRANGE, CAMERARANGE, CAMERAZOOM