EntityRadius entity,x_radius#[,y_radius#]

Параметры

entity - указатель объекта
x_radius# - радиус по оси x эллипсоида зоны столкновений
y_radius# (optional) - радиус по оси y эллипсоида зоны столкновений. Если не указано, то будет использоваться значение параметра x_radius# (будет сфера).

Описание

Устанавливает радиус эллипсоида зоны столкновений.

Радиус зоны столкновений должен быть установлен для всех объектов, вовлеченных в эллипсоидальные столкновения. Он есть у всех объектов изначально (поскольку столкновения - это всегда столкновение эллипсоида с чем-нибудь), независимо от того, вовлечены ли объекты в столкновения эллипсоида-к-эллипсоиду (метод столкновения номер 1).

Смотрите также : EntityBox, Collisions, EntityType.

Пример

; Пример EntityRadius
; --------------------

Graphics3D 640,480
SetBuffer BackBuffer()

camera=CreateCamera()
light=CreateLight()

sphere=CreateSphere( 32 )
PositionEntity sphere,-2,0,5

cone=CreateCone( 32 )
EntityType cone,type_cone
PositionEntity cone,2,0,5

; Установка типов столковений в переменные
type_sphere=1
type_cone=2

; радиус сферы
sphere_radius#=1

; Установка типов столкновений для шара и конуса
EntityType sphere,type_sphere
EntityType cone,type_cone

; Разрешить столкновения между type_sphere и type_cone по типу эллипсоид-эллипсоид со скольжением
Collisions type_sphere,type_cone,2,2

While Not KeyDown( 1 )

x#=0
y#=0
z#=0

If KeyDown( 203 )=True Then x#=-0.1
If KeyDown( 205 )=True Then x#=0.1
If KeyDown( 208 )=True Then y#=-0.1
If KeyDown( 200 )=True Then y#=0.1
If KeyDown( 44 )=True Then z#=-0.1
If KeyDown( 30 )=True Then z#=0.1

MoveEntity sphere,x#,y#,z#

; Если квадратные скобки нажали, значение радиуса сферы изменится
If KeyDown( 26 )=True Then sphere_radius#=sphere_radius#-0.1
If KeyDown( 27 )=True Then sphere_radius#=sphere_radius#+0.1

; Установка радиуса столкновений для сферы
EntityRadius sphere,sphere_radius#

; Обработка столкновений
UpdateWorld

RenderWorld

Text 0,0,"Use cursor/A/Z keys to move sphere"
Text 0,20,"Press [ or ] to change EntityRadius radius_x# value"
Text 0,40,"EntityRadius sphere,"+sphere_radius

Flip

Wend

End

Главная страница

Нажмите сюда, чтобы увидеть последнюю версию этой страницы в интернете