За 2010 год, с глупым алгоритмом, который прокручивает цикл со сдвигом по 1.0 юниту и проверкой crazy т.е. он буквально прорисовывает траекторию полёта пули (определяет только headshot), не позавидуешь тому кто поставит этот скрипт с онлайном выше 20 человек.
Прорисовывает? Это же смешно))) Так называемый вектор рассчитывается чисто математическими формулами векторов, никакой прорисовки не существует, все эти расчеты примитивная работа компьютера, которая выполняется за сотую долю миллисекунд. Далее на счет цикла, цикл будет работать только на тех, кто стреляет, и обновляться он будет раз в 1 секунду, больше не надо. Никто не стреляет - ничего не просчитывается, стреляет один человек, просчет идет только для него, все. Это все работает быстрее, чем что-либо можно себе представить, просто грамотно надо реализовать всего-лишь. Для примера, берем точку (игрок, который стреляет), проводим от неё вектор ко всем видящем точкам (игроки в области видимости данного игрока, по которым возможно стреляет игрок), и получаем результат, на сколько данный вектор отклонен от начальной точки, то есть никак иначе насколько наш вектор отпущенной от начальной точки перпендикулярен данной точки, то есть никак иначе, куда смотрит прицел игрока, это и есть представление нашей точки. Cобственно это все, я изложил в предыдущем посте, на математическом языке.
Русскоязычныи портал о MTA/GTA-IV-MP | http://multi-theft-auto.ru
Сообщение отредактировал toneysix - Среда, 14.09.2011, 05:22
Прорисовывает? Это же смешно))) Так называемый вектор рассчитывается чисто математическими формулами векторов
Под прорисовывает я подразумевал математические расчёты. В debug есть CreateObject, с помощью которого можно наблюдать ту самую траекторию.
Quote (toneysix)
Никто не стреляет - ничего не просчитывается, стреляет один человек, просчет идет только для него, все. Это все работает быстрее, чем что-либо можно себе представить, просто грамотно надо реализовать всего-лишь. Для примера, берем точку (игрок, который стреляет), проводим от неё вектор ко всем видящем точкам (игроки в области видимости данного игрока, по которым возможно стреляет игрок), и получаем результат, на сколько данный вектор отклонен от начальной точки, то есть никак иначе насколько наш вектор отпущенной от начальной точки перпендикулярен данной точки, то есть никак иначе, куда смотрит прицел игрока, это и есть представление нашей точки. Cобственно это все, я изложил в предыдущем посте, на математическом языке.
Ты правильно говоришь, но совсем не в тему. Ты о правильной реализации. Тот OnPlayerHit что выложен тут, почти так и реализован. Единственное с векторами намудрил чуток
Сначала открой скрипт, посмотри реализацию. Цикл который прокручивает дистанцию (расчёт конечной точки по вектору камеры) и сверяет позицию точки с позицией игрока
AirKite я сразу просто не понял, к какому доводу относился твой предыдущий пост по-поводу нагрузки. То, что там ты выше выложил, кроме как отвращения ничего более не вызывает. Проще говоря некачественная порнуха, ну или чтобы особо выразить свои эмоции секс со страхоуепищем xD
Русскоязычныи портал о MTA/GTA-IV-MP | http://multi-theft-auto.ru
Ну да, на 0.3d его можно переделать ещё проще. Думаю это кто то сделает быстрее меня. Есил нет, то скорее всего напишу INC, ибо по коду там вообще мелочи будут.
AirKite, я фанат Вашего фс, он уже как три самп версии неизменно служит моему серверу, и я уже даже смирился с тем что я так и не видел исходника (это очень печалит ;( ). Уже прошел год, но никто так и не сделал ничего подобного для 0.3д (а уже и 0.3е), сделайте это чудо на 0.3е, пожалуйста Я буду очень благодарен, и не только я... p.s Напишите ответ, пожалуйста.
KyPaITaTKa_XIX, да всё в планах и планах... куча проектов, куча дел. А ещё эта лень... Кто знает, может быть потоки энергии с космоса достигнут меня и я сделаю всё что планировал. В том числе и OPH для 0.3e