Мде... По поводу акул, - подобная система оправдывала бы затраты на свое создание, если бы игра была симулятором акулы, но в подобных играх, как по мне, ничего криминального нет в том, что бы не заморачиваться по поводу того, что акула нереалестично застыла в воде. То есть, скилеты, это норм, а вот акула, не двигающаяся непрерывно - вах, вах, вах. Это из разряда - спорить о неправильности траекторий полета галактик, когда обсуждаешь мультипликацию, в которой ГЧБР бросаются друг в друга этими самыми галактиками... Да и про тестирование ИИ, что-то они намудрили, с прожиманием кнопок...
Да и про тестирование ИИ, что-то они намудрили, с прожиманием кнопок...На самом деле, это не мудрствование, а скорее наоборот, упрощение разработки, принцип loose coupling (слабой связанности). Все human-like игровые сущности работают одинаковым образом, вне зависимости откуда им приходят команды. Это позволяет легко менять источник этих команд без необходимости переписывать внутреннюю логику самих AI-управляемых объектов и добавлять новые функции для выполнения каких-то действий.
Там, разумеется, не нажатия кнопок прям симулируются, просто от игрока и от AI сущностям приходят команды одинакового типа, а уж источником этих команд могут быть инпут-система; команды, пришедшие по сети; AI; или вызовы каких-нибудь тестовых функций.
Т.е. система, генерирующая команды для игровых сущностей сильно отделена от реализации самих игровых сущностей - кода, отвечающего за физическое перемещение, проигрывание анимаций и пр.
При таком подходе, например, в сингловых играх, дополнительной фичей "из коробки" может быть возможность управления любым NPC без существенного переписывания логики.
Мде... По поводу акул, - подобная система оправдывала бы затраты на свое создание, если бы игра была симулятором акулы, но в подобных играх, как по мне, ничего криминального нет в том, что бы не заморачиваться по поводу того, что акула нереалестично застыла в воде. То есть, скилеты, это норм, а вот акула, не двигающаяся непрерывно - вах, вах, вах. Это из разряда - спорить о неправильности траекторий полета галактик, когда обсуждаешь мультипликацию, в которой ГЧБР бросаются друг в друга этими самыми галактиками...
Да и про тестирование ИИ, что-то они намудрили, с прожиманием кнопок...
нереалЕстично, скИлеты ... Аж самому себе втащить захотелось...
Имхо, зависшие акулы неплохо так мешали бы погружению. В отличие от метающих галактики обчр, человек примерно знает как должны вести себя акулы.
Да и про тестирование ИИ, что-то они намудрили, с прожиманием кнопок...На самом деле, это не мудрствование, а скорее наоборот, упрощение разработки, принцип loose coupling (слабой связанности).
Все human-like игровые сущности работают одинаковым образом, вне зависимости откуда им приходят команды. Это позволяет легко менять источник этих команд без необходимости переписывать внутреннюю логику самих AI-управляемых объектов и добавлять новые функции для выполнения каких-то действий.
Там, разумеется, не нажатия кнопок прям симулируются, просто от игрока и от AI сущностям приходят команды одинакового типа, а уж источником этих команд могут быть инпут-система; команды, пришедшие по сети; AI; или вызовы каких-нибудь тестовых функций.
Т.е. система, генерирующая команды для игровых сущностей сильно отделена от реализации самих игровых сущностей - кода, отвечающего за физическое перемещение, проигрывание анимаций и пр.
При таком подходе, например, в сингловых играх, дополнительной фичей "из коробки" может быть возможность управления любым NPC без существенного переписывания логики.
наверно когда ты сидишь на зарплате у майков, делать просто и быстро - невыгодно