RayCollide()
Синтаксис
Result = RayCollide(x , y , z , DestinationX , DestinationY , DestinationZ [, CollisionGroup , CollisionMask]])
Описание
Проецирует луч между двумя 3D-точками и проверяет, сталкивается ли луч с Сущностью (Entity). Эта функция использует физический движок, который предварительно необходимо активировать с помощью команды EnableWorldPhysics(). Только Сущности с Телами (Body) будут реагировать на луч.
Позицию точки столкновения, можно получить с помощью PickX(), PickY() и PickZ(). Значения нормалей в точке столкновения, можно получить с помощью NormalX(), NormalY() и NormalZ().
Параметры
x, y, z Координаты первой точки, в единицах 3D-Мира. DestinationX, DestinationY, DestinationZ Координаты второй точки, в единицах 3D-Мира. CollisionGroup, CollisionMask (дополн.) Группа столкновений и маска столкновений для Сущностей. Позволяют отфильтровать, какая Сущность может столкнуться с лучом. Группу и маску можно изменить с помощью команды SetEntityCollisionFilter().
Возвращаемое значение
Возвращает Номер Сущности, если луч столкнулся с Сущностью имеющей Тело, нужную маску и группу, в противном случае -1.
См. также
NormalX(), NormalY(), NormalZ(), SetEntityCollisionFilter()
Поддерживаемые OS
Все