![]() |
вопрос просчета полета снаряда
здравствуйте! есть игра, стрелялка с видом сверху. у любого снаряда/пули есть свои скорости. в ENTER_FRAME вызывается функция движения всех снарядов. у снарядов меняются координаты в зависимости от скоростей и вызывается функция определения столкновений. эта функция сравнивает ширину/высоту каждого бойца с размерностями снаряда, ну, вернее, не каждого, а в некотором радиусе (бойца на другом конце карты обсчитывать не будет)
вопрос. есть так называемые "мгновенные" снаряды. типа лазера. сейчас просчет точки столкновения и определение цели идет следующим образом: создается "виртуальный снаряд", ему назначаются координаты выстрелившего, и в цикле вызывается та же функция движения, до тех пор, пока не встретится боец или достигнут предел карты. это достаточно сильно нагружает ЦП, особенно, если стреляющих несколько и делают они это синхронно. есть ли более разумные методы определения пересечений? заранее спасибо за ответы и (по возможности) за ссылки на источники информации по этому вопросу. |
вы используете математический способ обнаружения столкновений или hitTest();
в данный момент тоже разрабатываю игру с видом сверху. хорошо помог блог xitri.com хорошо бы обменяться опытом.может чего нового каждый из нас для себя найдет. |
http://algolist.manual.ru/maths/geom/belong/otr2d.php
Добавлено через 2 минуты http://algolist.manual.ru/maths/geom...lineline2d.php И т.д. |
спасибо за ссылки, интересно, почитаю . какие-то задумки уже были насчет линейной функции и покоординтатному просчету. а hitTest() вряд ли будет быстрее работать, чем сравнение координат вручную, суть то одна и та же
|
| Часовой пояс GMT +4, время: 14:49. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.