Вопросы с тегом «line-of-sight»

57
Могу ли я помешать диагональному движению исследовать больше карты?

Могу ли я запретить диагональному движению показывать больше новых плиток, чем ортогональное, в сетке тайлов, где движение в любом из 8 направлений занимает одинаковое количество ходов (правила стиля шахматной доски)? Например: вы красный прямоугольник на изображении ниже. Зеленые клетки в...

10
Имитация «прямой видимости» с препятствиями на 2-й сетке?

Наткнулся на интересную проблему. Мне нужно выяснить, как имитировать линию видимости - достаточно просто, только на 2-й сетке с препятствиями. Либо ячейка сетки видна, либо нет. Я могу добиться чего-то действительно рудиментарного - например, растянуть n мест от игрока или заблокировать...

9
Поиск незакрытых плиток в игре на основе плиток

Я работаю над 2D-игрой на основе плиток, и сейчас я пытаюсь заставить работать двумерный эквивалент теневых объемов. У меня проблемы с поиском поверхностей, которые должны отбрасывать тени. Из любой точки игры мне нужно найти либо незакрытые лица, либо всю плитку. У меня вопрос, как я могу найти...

9
Более эффективный способ реализации линии визирования на двумерной сетке с лучевым литьем?

Рассмотрим двумерную сетку плиток и приблизительную сферу координат, центрированную на игроке, которая представляет линию видимости. Цель состоит в том, чтобы заблокировать линию обзора за препятствиями (то есть стенами). Относительно просто определить, видна ли отдельная ячейка в зоне видимости:...

9
Диагональная линия визирования с двумя углами

Прямо сейчас я использую линейный алгоритм Брезенхэма для прямой видимости. Проблема в том, что я нашел крайний случай, когда игроки могут смотреть сквозь стены. Происходит, когда игрок смотрит между двумя углами стены с зазором на другой стороне под определенными углами. В результате я хочу, чтобы...

7
Эффективная 2d линия взгляда Java для многих объектов?

Моя проблема сегодня заключается в следующем: У меня много гражданских, которые ходят, это классы, хранящиеся в архиве. Идея в том, что когда они увидят очередную гражданскую панику, они начнут паниковать, и она распространится. Сначала я вызываю Step()функцию каждого класса , проходя через...