Вопрос
Как бы вы добавили автоматическое тестирование в игру?
Я считаю, что вы можете unit test использовать множество функций игрового движка (создание сетей, создание объектов, управление памятью и т.д.), но можно ли автоматизировать тестирование самой реальной игры?
Я не говорю об элементах игрового процесса (например, Протосс избил Зерга на карте X), но я говорю о взаимодействии между игрой и движком.
Введение
В разработке игр двигатель - это просто платформа для игры. Вы могли бы думать о игровом движке как о ОС и игре как о программном обеспечении, которое будет работать ОС. В игре может быть коллекция скриптов или действительная подпрограмма внутри игрового движка.
Возможные ответы
Моя идея такова:
Вам понадобится детерминированный движок. Это означает, что, учитывая один набор входных сигналов, выход будет точно таким же. Это включало бы случайный генератор, засеянный одним и тем же входом.
Затем создайте уровень голой кости, который содержит пару объектов, с которыми может взаимодействовать аватар/пользователь. Начните с малого, а затем добавьте объекты на уровень по мере развития большего количества взаимодействий.
Создайте script, который следует за путём (проверяет поиск пути) и взаимодействует с разными объектами (сохраняя результат или ожидаемое поведение). Этот script будет вашим автоматическим тестом. Через определенное время (скажем, одну неделю) запустите script вместе с тестами вашего модуля.