17.11.2012, 15:39
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
melky, опять спустя день понял в чем фишка, спс.
На ночь лучше не думать и не писать)
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
17.11.2012, 22:05
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
блин, запутался шарик может столкнуться с блоком в любой его точке, а так как мячик может находиться на нескольких строках одновременно
поэтому есть вариант:
проверять все точки окружность которые находятся в данной точке на совпадения с координатами блока, но как их получать за кэшировать или каждый раз определять...
буду благодарен за любые подсказки...
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
17.11.2012, 23:13
|
|
√₋̅₁̅
|
|
Регистрация: 18.06.2012
Сообщений: 385
|
|
cyber,
В случае с шариком, коллизии и углы отражения становится считать легче, если на уровне логики движка принять шарик за материальную точку, а фигуры расширить радиально на величину радиуса шарика.
__________________
Гейзенберг, возможно, читал этот тред.
Последний раз редактировалось Дзен-трансгуманист, 17.11.2012 в 23:16.
|
|
18.11.2012, 00:18
|
sinistral
|
|
Регистрация: 28.03.2011
Сообщений: 5,418
|
|
cyber, опять постишь на ночь? или это я уже туплю .. при чём тут строки? что это? почему нельзя определять принадлежность каждой крайней точки (top left; top right; bottom left; bottom right) к окружности (шарику) ?
|
|
18.11.2012, 01:29
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
melky, шарик может не только с крайней точкой соприкоснуться а и в любом другом месте допустим он зацепит нижней частью блок , вот 2 варианта
и тогда прийдеться проверять все точки вокруг блока..
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
18.11.2012, 01:31
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
Дзен-трансгуманист, не совсем понял, если их разширить то тогда шарик будет на фигуре то будет ее затирать по ходу смещения, а если увеличить просто размеры обьектов то он начнет их уничтожать до визуального контакта..
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
18.11.2012, 04:40
|
|
√₋̅₁̅
|
|
Регистрация: 18.06.2012
Сообщений: 385
|
|
cyber,
Да нет же! Для игрока всё визуально остается без изменений. Я просто иллюстрирую как должен выглядеть механизм обработки столкновений изнутри.
Столкновения с углами - самые сложные. Я тебе специально изобразил эту механическую симметрию. Там, где ты видишь скругления - это просто окружности, центр каждой из которых находится в одном из исходных углов, и три четверти которых скрыты под внешними горизонтальными и вертикальными отрезками. Когда точка падает на такую окружность, отражение легко посчитать: нужно просто вычислить направление нормали (радиус-вектора) в точке соприкосновения, обратить направление падения и зеркально отразить его от нормали.
Касательную я изобразил просто для наглядности принципа, известного как "угол отражения равен углу падения". А нормаль выходит наружу под прямым углом к этой касательной, то есть это просто вектор, направленный из центра окружности к нашей точке в момент их столкновения.
Вот. А теперь докажи мне на практике, что мои труды по рисованию не были бесполезны - а не то я разозлюсь и сделаю свой собственный арканоид!
__________________
Гейзенберг, возможно, читал этот тред.
Последний раз редактировалось Дзен-трансгуманист, 18.11.2012 в 04:50.
|
|
18.11.2012, 14:08
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
Дзен-трансгуманист, спасибо, буду вспоминать геометрию
Цитата:
|
Вот. А теперь докажи мне на практике, что мои труды по рисованию не были бесполезны - а не то я разозлюсь и сделаю свой собственный арканоид!
|
все будет в лучшем виде))
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
18.11.2012, 22:45
|
|
√₋̅₁̅
|
|
Регистрация: 18.06.2012
Сообщений: 385
|
|
Сообщение от cyber
|
буду вспоминать геометрию
|
Да в сети есть куча ресурсов и форумов, где конкретно эта тема столкновений в 2D разжевывается раз в сто лучше, чем могу разжевать я. Можно на том же геймдеве поискать.
Супер-оптимизаций никто от тебя не требует, просто организуй всё так, чтобы хотя бы не тормозило.))
__________________
Гейзенберг, возможно, читал этот тред.
Последний раз редактировалось Дзен-трансгуманист, 18.11.2012 в 22:55.
|
|
18.11.2012, 22:54
|
sinistral
|
|
Регистрация: 28.03.2011
Сообщений: 5,418
|
|
Сообщение от Дзен-трансгуманист
|
Да в сети куча ресурсов и форумов, где конкретно эта тема столкновений в 2D разжевывается раз в сто лучше, чем могу разжевать я. Можно на том же геймдеве поискать. Тебе же просто нужно организовать всё так, чтобы хотя бы не тормозило.)
|
http://www.gamedev.ru/code/forum/?id=147255&page=3
классный ресурс, кстати
|
|
|
|