Hilfe

LoadBSP

B3D

Aufruf

bsp% = LoadBSP (datei$ [, gamma#] [, parent%])

Parameter

datei$ Dateiname des Quake3-Modells
gamma# Gamma-Wert (0.0 bis 1.0; Standard=0.0)
parent% Identität des Objekts zu dem es hinzugefügt werden soll


Rückgabewert

Es wird die Identität des Objekts zurückgeliefert. Falls eine Null zurückgeliefert wird, dann wurde die Datei nicht gefunden.


Beschreibung

Der Befehl LoadBSP lädt ein BSP-Modell und liefert danach die Identität des Modells zurück.

BSP-Modelle sind Quake3-Levels. Diese können geladen und wie andere Objekte benutzt werden (strecken, positionieren, drehen).

Der Parameter "datei$" ist ein Dateiname zur BSP-Datei.

Der Parameter "gamma#" bestimmt die Farben des geladenes Modells. Es sind nur Werte zwischen 0 (dunkel) und 1 (hell) möglich. Später kann man noch BSPAmbientLight benutzen - es ist allerdings nicht so schöner Effekt wie Gamma.

Wurde der Parameter "parent%" angegeben, dann wird dieses Modell 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.

Dieses Objekt wird normalerweise an der Position 0,0,0 erstellt. Wurde Parent angegeben, dann wird es an der Position des Parent-Objekts erstellt.


Beispiel

Zeigt den Umgang mit BSPLevels und deren Ausleuchtung.

Graphics3D 640, 480
campiv = CreatePivot()
cam = CreateCamera(campiv)
CameraRange cam, 0.1, 2000
level = LoadBSP("nyk3dm1\nyk3dm1.bsp", .8)
BSPAmbientLight level, 0, 255, 0
BSPLighting level, False

While Not KeyHit(1)
   RenderWorld
   Flip
   mys = MouseYSpeed()
   If Abs(EntityPitch(cam) + mys)<75 Then
      TurnEntity cam, mys, 0, 0
   EndIf
   TurnEntity campiv, 0, - MouseXSpeed(), 0
   If MouseDown(1) Then
      TFormVector 0, 0, 3, cam, campiv
      MoveEntity campiv, TFormedX(), TFormedY(), TFormedZ()
   EndIf
   MoveMouse 320, 240
Wend
End


Siehe auch

BSPAmbientLight, BSPLighting

Übersicht 3D Grafik BSP-Maps