Учитывая игрока и противника с положением, и учитывая вектор направления каждого, как я могу сказать, может ли один «видеть» другого?
Другими словами, как мне проверить, находится ли одна позиция с направлением впереди или позади другой позиции с направлением?
Для моих целей «перед» означает прямо перед или под углом 90 градусов в любую сторону.
11
Очевидно, что решение состоит в том, чтобы создать другую камеру и заново визуализировать сцену с точки зрения противника, а затем выполнить распознавание изображения для результата для персонажа игрока.
—
Riking
Награда за самый упрощенный ответ достается ...
—
OganM
Хотя комментарий Рикинга, скорее всего, был задуман как шутка, это действительно справедливый способ сделать это - дать NPC такой же доступ к игровому состоянию, как у игрока, вместо того, чтобы позволить им получить доступ к внутреннему состоянию игры.
—
R .. GitHub ОСТАНОВИТЬ, ПОМОГАЯ ЛЕД
@R .. Да, но где ты проводишь черту? Приняв это рассуждение к своей логической конечной точке, NPC в конечном итоге становятся разумными, способными играть и мыслить как человек ... и в этот момент они, вероятно, в любом случае рационально решат снова начать взламывать стены: p
—
Томас
@ Томас: На практике я думаю, что вы можете пойти на какой-то компромисс, приблизив уровень информации, которую они будут иметь как игрок, не рискуя реализовать это таким образом. Простые меры, такие как правильное тестирование линии видимости, ограничение способности идентифицировать объект на определенном расстоянии и т. Д., Могут иметь большое значение.
—
R .. GitHub ОСТАНОВИТЬ ЛЬДА