I am using version Blitz3D 1.83 RUNTIME
When a collision target is set with a second EntityRadius, it has NO effect. The collision sphere of the target is still the same radius vertically as the first (horizontal) parameter.
You can see it clearly in the example.
;--------
Graphics3D 640, 480, 0
;set the collisions using 1 as source type and 10 as target type
Collisions 1,10,1,2
Dim balls(4)
; create 5 source spheres
For b = 0 To 4
balls(b) = CreateSphere()
PositionEntity balls(b), b * 3, 2, 0
EntityType balls(b), 1
EntityRadius balls(b), 1, 1
Next
; create a RED collision target ellipsoid (squashed sphere)
obs = CreateSphere()
PositionEntity obs, 6, 0, 5
ScaleMesh obs, 4, 1, 4
; NOTE that entity radius it set with TWO parametere here
EntityRadius obs, 4, 1
EntityType obs, 10
EntityColor obs, 255, 0, 0
; control viewpoint with camera
cam = CreateCamera()
PositionEntity cam, -15, 5, 1
pv = CreatePivot()
PositionEntity pv, 6, 0, 10
SetBuffer BackBuffer()
li = CreateLight(1)
MouseXSpeed()
While Not KeyHit(1)
MoveEntity cam, MouseXSpeed() / 2.0, 0,0
PointEntity cam, pv
For b = 0 To 4
MoveEntity balls(b), 0, 0, 0.02
Next
UpdateWorld()
RenderWorld()
Text 10, 10, "[ESC] to quit"
Flip()
Wend
;--------
As a side note, I tried setting the second entityradius for the collision Source and collisions just stopped working entirely.
yinch'03
When a collision target is set with a second EntityRadius, it has NO effect. The collision sphere of the target is still the same radius vertically as the first (horizontal) parameter.
You can see it clearly in the example.
;--------
Graphics3D 640, 480, 0
;set the collisions using 1 as source type and 10 as target type
Collisions 1,10,1,2
Dim balls(4)
; create 5 source spheres
For b = 0 To 4
balls(b) = CreateSphere()
PositionEntity balls(b), b * 3, 2, 0
EntityType balls(b), 1
EntityRadius balls(b), 1, 1
Next
; create a RED collision target ellipsoid (squashed sphere)
obs = CreateSphere()
PositionEntity obs, 6, 0, 5
ScaleMesh obs, 4, 1, 4
; NOTE that entity radius it set with TWO parametere here
EntityRadius obs, 4, 1
EntityType obs, 10
EntityColor obs, 255, 0, 0
; control viewpoint with camera
cam = CreateCamera()
PositionEntity cam, -15, 5, 1
pv = CreatePivot()
PositionEntity pv, 6, 0, 10
SetBuffer BackBuffer()
li = CreateLight(1)
MouseXSpeed()
While Not KeyHit(1)
MoveEntity cam, MouseXSpeed() / 2.0, 0,0
PointEntity cam, pv
For b = 0 To 4
MoveEntity balls(b), 0, 0, 0.02
Next
UpdateWorld()
RenderWorld()
Text 10, 10, "[ESC] to quit"
Flip()
Wend
;--------
As a side note, I tried setting the second entityradius for the collision Source and collisions just stopped working entirely.
yinch'03