Триггерное перемещение юнита с огибанием препятствий
|
|
Enchanting | Дата: Среда, 28 Января 2015, 20:09:06 | Сообщение # 1 |
1 уровень
Группа: Пользователи
Сообщений: 1
Награды: 0
Репутация: 0
Блокировки:
| Задача- Триггерное перемещение юнита с огибанием препятствий от его позиции на время приказа\применения способности до указанной точки.
Перемещение юнита по прямой траектории без препятсвий проблем не вызывает, но когда на пути перемещаемого юнита и конечной точки возникают препятствия- юнит врезается в них с заданной переодичностью и прекращает продвижение в сторону цели.
Упрощенная схема триггера:
Periodic event - Every 0.02 seconds of game time
Боевая единица - Move "переменная- перемещаемый юнит" instantly to (("переменная- перемещаемый юнит") offset by 128.00 towards (Facing of "переменная- перемещаемый юнит") degrees), facing "переменная- конечная точка"
Заранее спасибо за конструктивные советы.
|
|
|
|
Наклз | Дата: Среда, 28 Января 2015, 20:39:05 | Сообщение # 2 |
10 уровень
Группа: Проверенные
Сообщений: 1431
Награды: 0
Репутация: 760
Блокировки:
| Огибание препятствий сделать будет тяжело, но можно перед началом движения выполнить такую функцию Turn Collusion Off (из раздела "Боевая единица"). для юнита, а потом вернуть всё обратно...
И глаз(или мозг, я не знаю, биология не моё) обновляет картинку каждую 0.04 сек, так что нет смысла так часто двигать, движение всё равно будет плавным казаться.
Сообщение отредактировал Наклз - Среда, 28 Января 2015, 20:39:40 |
|
|
|
Q1wAse | Дата: Среда, 28 Января 2015, 23:41:44 | Сообщение # 3 |
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
| Цитата Наклз ( ) И глаз(или мозг, я не знаю, биология не моё) обновляет картинку каждую 0.04 сек, так что нет смысла так часто двигать, движение всё равно будет плавным казаться. Все люди разные)) Я могу отличить 0.02 от 0.03 и уж тем более 0.04, меньше уже ни вижу разницы. Не веришь спроси других, Extremator рассказывал, что он тоже видит разницу. (по его словам он вроде 0.01 от 0.02 отличает)
|
|
|
|
Наклз | Дата: Четверг, 29 Января 2015, 09:20:03 | Сообщение # 4 |
10 уровень
Группа: Проверенные
Сообщений: 1431
Награды: 0
Репутация: 760
Блокировки:
| 1 секунду разделить на 25 кадров(которые воспринимает человек) получается 0.04. Хм, довольно странно... я решил проверить и так и есть... видно подёргивания...
Сообщение отредактировал Наклз - Четверг, 29 Января 2015, 09:37:50 |
|
|
|
sumert | Дата: Четверг, 29 Января 2015, 09:57:53 | Сообщение # 5 |
10 уровень
Группа: Проверенные
Сообщений: 2330
Награды: 2
Репутация: 1094
Блокировки:
| Пожалуй, поработаю Капитаном Очевидностью. Наклз, поддергивания при движении связаны с другим. Движение - это по сути перемещение юнита с одной точки на другую. Чем больше расстояние между этими точками, тем заметнее "подергивание". Другими словами, чем меньше расстояние между точками, тем незаметнее "поддергивание", а это влияет на скорость юнита. Чем ниже скорость, тем незаметнее "поддергивание" и наоборот. Так что юнит может двигаться с черепашей скоростью и будет не заметно, 0.02, 0.04 или 0.09. И наоборот.
|
|
|
|