Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Xors3D

Xors3D Графический движок с поддержкой DirectX9

Ответ
 
Опции темы
Старый 18.11.2011, 21:01   #16
Reizel
Задрот
 
Аватар для Reizel
 
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений
(для 863 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

Ха, доставило. Тема:
Оптимальный способ проверить находится ли объект между точками знаете?

Сказал же, сходи погугли расстояние от точки до прямой. прямая задается простейшим уравнением. Объект представим точкой и диаметром - из этого можно посчитать расстояние от центра до линии, образованной этими вашими двумя точками. А там уже условием отсекать лишнее г-но.

Учите матан. Движок собрались писать физический. *facepalm*
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
moka (19.11.2011)
Старый 18.11.2011, 21:09   #17
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

Не ну где тогда реализованая функция RayCast в физике. Я не дурак. И в курсе что на буллете основано. Я тоже могу запиилть двиг и присобачить к нему буллет (образно), но это не значит, что я вынесу все функции буллета в свою ддл. Так и у тебя. Оно там есть, но не реализовано в твоей длл!
(Offline)
 
Ответить с цитированием
Старый 18.11.2011, 21:11   #18
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

Как вариант пилить самому физ движок под ксорс
Имелл ввиду врапить готовый физ двиг. Для непонятливых
(Offline)
 
Ответить с цитированием
Старый 18.11.2011, 22:07   #19
.Squid
Дэвелопер
 
Аватар для .Squid
 
Регистрация: 06.04.2009
Адрес: Запорожье
Сообщений: 1,500
Написано 1,011 полезных сообщений
(для 4,642 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

docs/html/group__px__raycast.html
BBDECL int BBCALL xPhysicsCountHits ()
Returns the number of hits of the last raycast.
BBDECL float BBCALL xPhysicsGetHitDistance (int index=0)
Returns the distance to the hit point from the ray's start.
BBDECL Entity *BBCALL xPhysicsGetHitEntity (int index=0)
Returns a handle of an entity which was hit by the last raycast.
BBDECL float BBCALL xPhysicsGetHitNormalX (int index=0)
Returns the X component of the hit normal of the last raycast.
BBDECL float BBCALL xPhysicsGetHitNormalY (int index=0)
Returns the Y component of the hit normal of the last raycast.
BBDECL float BBCALL xPhysicsGetHitNormalZ (int index=0)
Returns the Z component of the hit normal of the last raycast.
BBDECL float BBCALL xPhysicsGetHitPointX (int index=0)
Returns global X coordinate of the hit point of the last raycast.
BBDECL float BBCALL xPhysicsGetHitPointY (int index=0)
Returns global Y coordinate of the hit point of the last raycast.
BBDECL float BBCALL xPhysicsGetHitPointZ (int index=0)
Returns global Z coordinate of the hit point of the last raycast.
BBDECL void BBCALL xPhysicsRayCast (float fromX, float fromY, float fromZ, float toX, float toY, float toZ, int rcType=0, int rayGroup=0)
Cast a ray trough the scene and gathers the detailed information on what was hit.
__________________

(Offline)
 
Ответить с цитированием
Старый 18.11.2011, 23:00   #20
FireOwl
Бывалый
 
Аватар для FireOwl
 
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений
(для 1,836 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

Беседа тут какая-то... фантастическая.
Кстати, правильнее будет не "вопрос в оглавлении", а "вопрос в заголовке".
Ладно я пошел, пока не заразился.
__________________
N"Gasta! Kvata! Kvakis!
Ahkstas so novajxletero (oix jhemile) so Ranetauw.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
pozitiffcat (18.11.2011)
Старый 18.11.2011, 23:58   #21
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

Сообщение от .Squid Посмотреть сообщение
docs/html/group__px__raycast.html
BBDECL int BBCALL xPhysicsCountHits ()
Returns the number of hits of the last raycast.
BBDECL float BBCALL xPhysicsGetHitDistance (int index=0)
Returns the distance to the hit point from the ray's start.
BBDECL Entity *BBCALL xPhysicsGetHitEntity (int index=0)
Returns a handle of an entity which was hit by the last raycast.
BBDECL float BBCALL xPhysicsGetHitNormalX (int index=0)
Returns the X component of the hit normal of the last raycast.
BBDECL float BBCALL xPhysicsGetHitNormalY (int index=0)
Returns the Y component of the hit normal of the last raycast.
BBDECL float BBCALL xPhysicsGetHitNormalZ (int index=0)
Returns the Z component of the hit normal of the last raycast.
BBDECL float BBCALL xPhysicsGetHitPointX (int index=0)
Returns global X coordinate of the hit point of the last raycast.
BBDECL float BBCALL xPhysicsGetHitPointY (int index=0)
Returns global Y coordinate of the hit point of the last raycast.
BBDECL float BBCALL xPhysicsGetHitPointZ (int index=0)
Returns global Z coordinate of the hit point of the last raycast.
BBDECL void BBCALL xPhysicsRayCast (float fromX, float fromY, float fromZ, float toX, float toY, float toZ, int rcType=0, int rayGroup=0)
Cast a ray trough the scene and gathers the detailed information on what was hit.
ой вот я облажался!!! я же реализовывал это в своем враппере
(Offline)
 
Ответить с цитированием
Старый 19.11.2011, 00:09   #22
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

FireOwl,Да какая разница заголовок оглавление.

Reizel, вот ненавижу тут вопросы задавать, обязательно учить будут, но помоч может только умный. Пост первый надо внимательнее прочитать. Я не стал вписывать в ЗАГОЛОВОК LinePick термин. И хотел узнать в конечном счете ему альтернативу. Формулу пор точку ч прямой, я и так использую постоянно. А вот pozitiffcat помог, вспомнил про рейкаст. Я помню с физикса что была какая то система. Но визуально найти не смог. Вот теперь буду рейкасты мучить.
(Offline)
 
Ответить с цитированием
Старый 19.11.2011, 00:23   #23
FireOwl
Бывалый
 
Аватар для FireOwl
 
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений
(для 1,836 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

Совсем никакой. Просто пришлось остановить взгляд на фразе и подумать, что она означает. Это полезно.
А оглавление - список заголовков.
__________________
N"Gasta! Kvata! Kvakis!
Ahkstas so novajxletero (oix jhemile) so Ranetauw.
(Offline)
 
Ответить с цитированием
Старый 19.11.2011, 03:35   #24
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

FireOwl, оглавление может содержать и один заголовок. Тем самым он приравнивается к нему.
(Offline)
 
Ответить с цитированием
Старый 19.11.2011, 05:20   #25
FireOwl
Бывалый
 
Аватар для FireOwl
 
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений
(для 1,836 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

Я бы с этим поспорил, но не вижу смысла.
__________________
N"Gasta! Kvata! Kvakis!
Ahkstas so novajxletero (oix jhemile) so Ranetauw.
(Offline)
 
Ответить с цитированием
Старый 19.11.2011, 12:43   #26
shybovycha
ПроЭктировщик
 
Аватар для shybovycha
 
Регистрация: 27.05.2007
Сообщений: 110
Написано 40 полезных сообщений
(для 33 пользователей)
Ответ: Оптимальный способ проверить находится ли объект между точками знаете?

Доброго времени суток, уважаемый ТС!

Попробуйте старый проверенный способ (действует лишь при наличии трех точек): коль даны точки А и В, а объект находится в точке С, логично соединить точки тремя отрезками и получить треугольник. А потом уже вступает в дело "точность" - если вам необходимо, чтобы объект находился точно на отрезке АВ - задайте некую delta = 0, коль "точность" нужна поменьше - задайте delta = AABB.diag (какое-нибудь расстояние в пределах ААВВ объекта, например - длинна отрезка от левого нижнего спереди до правого верхнего угла сзади ААВВ). И вот когда у вас будет три отрезка - АВ, АС, ВС и delta - можете сделать следующую проверку:

if (AC + BC <= AC + delta)
// объект между точками


Здесь, АС, ВС и АС - числа, представляющие длинну соответствующего отрезка. Насколько мне известно, работать будет довольно шустро.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 15:53.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com