![]() |
Ответ: Вопрос про наболевшее - коллизии.
Jimon имел ввиду секционную разбивку. которую в идеале надо делать. и кстати, как седлать ее в блице - хз. хотя я писал либу.
|
Ответ: Вопрос про наболевшее - коллизии.
оффтоп на тему blitz3d :)
|
Ответ: Вопрос про наболевшее - коллизии.
элементарно Ватсон, ввели какую нибудь магию которая удаляет ВСЕ пули в некотором радиусе.
|
Ответ: Вопрос про наболевшее - коллизии.
Цитата:
На блитц3д без всяких ооп и так все работает быстро и четко если код грамотно построен За один проход цикла она никак "всех поубивает" На коллижн ставим стоп и удаляем Какие проблемы ? зы. все эти холливары исключительно от недостатка опыта и буйной фантазии. :)))) |
Ответ: Вопрос про наболевшее - коллизии.
с коллизиями да. а если без них?
|
Ответ: Вопрос про наболевшее - коллизии.
Цитата:
1) Вид сверху! (Почти 2D), поэтому ни про какую траекторию пули не надо заморачиваться. 2) Скорость пули тоже постоянна. 3) Боты двигаются в одной плоскости с пулей (т.е. почти земле), поэтому она всегда врежется либо в бота, либо в ограждение уровня, либо в другую пулю. При любом столкновении (как это написать?) она исчезнет. 4) Говорят, что при движении и ботов, и пули следует создавать 2 коллизии: бот-пуля и пуля-бот, так вот! ещё и не понятно, почему иногда срабатывает одна, иногда - другая коллизия? :( 5) Все боты относятся к типу tank и двигаются-думают в цикле: For bot.tank=Each tank ..... Next Где лучше проверять коллизию? В Этом цикле или в общем "игровом" цикле? 6) Даже на такую строчку (неважно, где она написана, либо внутри цикла ботинков, либо внутри игрового цикла): If (EntityDistance# (player1\bul,bot\ent))<2 Then Stop BB выдаёт ошибку "переменная должна быть типом" [player1\bul - сам кубик пули, созданный примитивным player1\bul=CreateCube() а вот bot\ent созданна через bot.tank=New tank bot\ent=CreateCube() где Type tank Field ent; entity Field dir; direction-направление Field sp#; скорость End Type и ничего больше] Вобщем, как при попадании пули в бота убивать НУЖНОГО бота, в то время как пуля должна сама исчезнуть при ЛЮБОМ попадании? Ух! Вроде б вопрос-то несложный, но что-то запарился уже. И ещё вопросик: почему обещанный HideEntity, который скрывает объект от глаз и КОЛЛИЗИЙ, иногда всё-таки срабатывает на коллизии EntityCollided? |
Ответ: Вопрос про наболевшее - коллизии.
Цитата:
Вот я и набросал как это можно сделать, хочя и знал что лучше сделать через типы. |
Ответ: Вопрос про наболевшее - коллизии.
Люди есть вариант. Не знаю как вы одобрите.!
Если сделать через EntityPickMode типа прицел направлен на объект. Сразу определяется в Dim какой это объект. И при нажатии выстрела просто вылетает пуля а объект удаляется. Это все без коллизии. Но пуля должна двигается быстро чтоб не получилась объект удалился а пуля только настигла его! |
Ответ: Вопрос про наболевшее - коллизии.
Блин
Делай с коллизиями без всяких дистанций- быстрее работает Если хочешь дистанции, то придется обрабатывать внутри цикла пуль цикл ботов: Код:
For o.shot=Each shot |
Ответ: Вопрос про наболевшее - коллизии.
Цитата:
|
Ответ: Вопрос про наболевшее - коллизии.
Цитата:
Коллизия происходит между первым и вторым типом То есть, если движется первый тип, то коллизия будет, а если только второй - то нет Твой код работал только тогда, когда танки двигались Компрене ? |
Ответ: Вопрос про наболевшее - коллизии.
В том то и дело что не двигались. я просто натыкал неподвижных обьектов в пространстве. вот еще раз проверил, проверка всеравно срабатывает так.
--- При перемене местами типов коллизия не срабатывает. так что зря ты это так поспешил с выводами. возможно дело в том что счетчик для массива, а не как принято: For s.shot=Each shot ... if EntityCollided(s\entity,BOT_C) ... ... Next но я могу ошибаться |
Ответ: Вопрос про наболевшее - коллизии.
О_о коллизия работает быстрее?
это точно? я чесно сказать не проверял, но ведь при коллизии еще дофига всего проверяется, точка коллизии, смещение объекта, который коллизится куда-нибудь, еще наверное какие нибудь рассчеты? |
Ответ: Вопрос про наболевшее - коллизии.
ы? я тоже думал что дистанс быстрее коллизии 0.о
|
Ответ: Вопрос про наболевшее - коллизии.
Цитата:
Коллизия сфера-сфера работает быстрее дистанса Особенно если много объектов - это заметно |
Часовой пояс GMT +4, время: 18:24. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot