forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Помогите найти место, где вектор пересекает меш. (http://forum.boolean.name/showthread.php?t=5045)

ABTOMAT 17.11.2007 19:06

Помогите найти место, где вектор пересекает меш.
 


Собственно, вот.
ХолиДел предлагал, да и я тоже думал, вычислять место пересечения при помощи пика, но это, ясный перец, не самый быстрый способ.
Вопрос: как найти место пересечения не юзая пик? (расстояние я уж и сам вычислю).

Известно направление вектора, место его старта (координаты энтити), земля - это меш.


Может, кто-то хотя бы намекнёт как делать сиё.

Заранее спасибо.

Diplomat 17.11.2007 19:30

Re: Помогите найти место, где вектор пересекает меш.
 
С помощью пика. Это самый быстрый способ.
Дистанцию, кстати, определять функцией EntityDistance. Использование формулы круга для поиска расстояния проигрывает в разы.

ABTOMAT 17.11.2007 20:16

Re: Помогите найти место, где вектор пересекает меш.
 
Diplomat, EntityDistance я уж давно знаю.
Хм, значит, пик...
:(
Неужели ни у кого нету других вариантов?

ABTOMAT 18.11.2007 00:30

Re: Помогите найти место, где вектор пересекает меш.
 
Лана, но тогда другой вопрос: у меня есть камера, которая вращается вокруг игрока. Когда назначаю колизию ей, то при столкновении с землёй она трясёёё-о-отся. Вопрос: почему и как исправить?
Заранее спасибо.

tormoz 18.11.2007 01:52

Она трясёёё-о-отся не из-за коллизий. а из за твоего кода :)

Применяй хитрые способы
Например, двигай камеру с помощью переменных скорости.
При столкновении обнуляй, при отсутствии плавно наращивай эту переменную до достижения максимальной скорости
Тряска возникает при большой скорости вхождения в коллизию, Блитц просто не отрабатывает ее назад полностью, если включено скольжение (если подумать, то это так и должно быть)

Цитата:

Сообщение от ABTOMAT
Diplomat, EntityDistance я уж давно знаю.
Хм, значит, пик...
:(
Неужели ни у кого нету других вариантов?

Пик не нужну применять в цикле на высокополиональные объекты.
А только тогда. когда это нужно (по условию события)
Если нужно в цикле - по таймеру, пропуская Н циклов

ABTOMAT 18.11.2007 10:47

Re: Помогите найти место, где вектор пересекает меш.
 
tormoz, если отключить скольжение (сделать остановку) то тряска прекратится?

З.Ы.Ж Заметил, что такая тряска возникает при юзании дельтатайминга, без него или при фиксированном ём всё в порядке :4to:

(добавлено)

tormoz, кстати спасибо что подсказал насчёт уменьшения скорости! Сейчас буду пробовать!


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot