Bsp map issues

Blitz3D Forums/Blitz3D Beginners Area/Bsp map issues

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

Test your BSP file with this:

Graphics3D 640,480 

campiv = CreatePivot() 
cam = CreateCamera(campiv) 
CameraRange cam, 0.1,2000 

level=LoadBSP( "YOUR BSP",.8 ) ; load a 'legal' quake3 bsp map 
BSPAmbientLight level, 0,255,0 ; make the ambient light green 
;BSPLighting level, False ; uncomment this line to turn lightmap off 

While Not KeyDown(1) ; if ESCAPE pressed then exit 
RenderWorld:Flip 

mys = MouseYSpeed() 
If Abs(EntityPitch(cam)+mys) < 75 ; restrict pitch of camera 
TurnEntity cam, mys,0,0 
EndIf 
TurnEntity campiv,0,-MouseXSpeed(),0 

If MouseDown(1) Then ; press mousebutton to move forward 
TFormVector 0,0,3,cam,campiv 
MoveEntity campiv,TFormedX(),TFormedY(),TFormedZ() 
EndIf 

MoveMouse 320,240 ; centre mouse cursor 
Wend 

End  


Loads a BSP model and returns its handle.

Some points about Blitz3D's BSP support:

* Shaders are *not* supported!

* BSP's cannot be painted, textured, colored, faded etc. in Blitz.

* A BSP model is just an entity. Use the standard entity commands to scale, rotate and position the BSP, and the standard collision commands to setup collisions with the BSP.

* BSP models are not lit by either 'normal' AmbientLight, or by any directional lighting. This allows you to setup lighting for in-game models without affecting the BSP lighting. However, BSP models *will* be lit by point or spot lights.

* Textures for the BSP model must be in the same directory as the BSP file itself.

The optional parent parameter allows you to specify a parent entity for the BSP so that when the parent is moved the child BSP will move with it. However, this relationship is one way; applying movement commands to the child will not affect the parent.

Specifying a parent entity will still result in the BSP being created at position 0,0,0 rather than at the parent entity's position.


Blitz3D is fussy over the BSP structure - has to be a 'legal' Q3 one.