[UPD 05.03 16:55 (Минск)] Дневники Разработчиков. Физикум [READY]
world_of_ru — 05.03.2014Весь 2013 год команда разработчиков World of Tanks активно занималась улучшением проекта. Работы шли одновременно по нескольким направлениям. Настало время раскрыть подробности. В этом видео мы расскажем о том, как изменится физика игры.
Создатель теории психоанализа Зигмунд Фрейд считал, что страсть к разрушениям - это одно из нормальных свойств человеческой психики. Мы понимаем эту страсть, потому что мы сами такие же, и поэтому мы решили вывести систему разрушений на новый уровень.
Больше года длились эксперименты, все разрушаемые строения пришлось переделать заново, и теперь дома не просто переходят из одного состояния в другое, они делают это красиво: деревянные дома рассыпаются на брёвна, хижины разламываются на куски, кирпичные стены трескаются по швам кладки.
При разрушении здания одна из стен может отломиться целиком и разрушиться при ударе об землю на более мелкие части, далее эти мелкие части могут взаимодействовать с танком и их снова можно будет разрушить. Мы попробовали разную детальность разрушений кирпичных домов: на большие куски, на маленькие, на смесь больших и маленьких кусков, даже сделали модель, которая ломается буквально по кирпичику.
Как будет разрушаться дом теперь будет зависеть не только от материала стен, но и от снаряда, который в него попал: бронебойный просто пробьёт в нём брешь, фугасный разбросает куски взрывом.
Дома бывают сложные (двухэтажные, например), можно, например, выстрелить по первому этажу, тогда он развалится, а следом за ним упадёт второй. Есть в игре у нас дома, которые нельзя ломать по законам геймплея (они должны всегда оставаться), но всё равно делаем в них элементы, которые можно разрушить: отвалить балкон, выбить стёкла.
Всё это стало возможным благодаря внедрению системы Havok, её используют в игровой индустрии и кино для создания спецэффектов. Естественно, что было решено использовать этот элемент не только для разрушения зданий.
Мы решили пойти дальше и снабдили танк физически корректным поведением. Теперь все элементы танка, такие как боковые щитки, цепи, антенны, естественно раскачиваются и болтаются при движении. Во время активных действий может их потерять, например, при таране, или их ему могут отстрелить вражеские танки.
Самые заметные изменения произошли с подвеской: теперь катки естественно огибают неровности рельефа.
Пожалуй, самым сложным танком был танк Т-26: у него сложная двухуровневая подвеска, которая состоит из нескольких рычагов, у неё достаточно сложное поведение, но мы её реализовали.
После модернизации ходовой, несмотря на всю подвижность и правильность, в её поведении всё равно было что-то не то: проблема оказалась в гусенице.
Поведение гусеницы мы сделали своими силами без использования сторонних инструментов. Теперь каждый индивидуальный элемент гусеницы отдельно просчитывается и анимируется.
Работа над гусеницами продолжается. Следующая ступень - сделать так, чтобы они вели себя естественно не только во время движения, но и при сбитии, сползали с катков, разматывались и так далее.
С введением клиентской физики сбудется то, о чём так давно говорили игроки: в WoT появится многоядерность. Havok будет задействовать вычислительные мощности системы в полной мере, владельцы не очень производительных машин смогут всё это великолепие отключить, но даже для них игра не останется прежней, потому что для них изменится не только клиентская физика, но и серверная. Работы на повышением достоверности поведения танка привели к созданию новой модели движения: они симулирует работу всего механизма от сцепления и до катков. В неё даже заложены характеристики механических потерь, коробка передач переключается во время движения, теперь поведение танка до мельчайших деталей повторяет реальные боевые машины.
Танк конечно вести себя будет немножко по-другому, будет какой-то период привыкания, но мы избавим игроков от технических сложностей, таких как переключение передач, плавный выжим сцепления и прочее. Это всё будет делать наш автоматизированный мехвод.
Усовершенствование физической модели движителя привело к интересному результату: появилась возможность точнее моделировать взаимодействие танка с грунтом.
В текущей физической модели грунты имеют только один параметр для настройки - сопротивление качению, которая определяет, как быстро танк разгоняется на них и предельную скорость. В новой физической системе точное моделирование танкового движителя позволяет учитывать гораздо больше параметров грунтов, к текущему сопротивлению качения добавятся сцепные свойства грунта, а также податливость грунта деформациям.
Это значит, что танк будет очень по-разному вести себя на разных типах грунт. Разница будет чувствоваться в времени разгона, возможности пробуксовок и боковых заносов. Ещё одним штрихом в картине большей реалистичности движения танков стало изменение работы рессор.
В новой модели мы сделали коэффициент жёсткости рессоров, зависящим от степени сжатия. Это означает, что при небольших сжатиях рессоры ведут себя достаточно плавно, позволяет без раскачивания преодолевать мелкие неровности, но а на больших препятствиях они уже ведут себя как жёсткая подвеска.
Благодаря изменениям серверной физики у танков начнут отрываться башни. Первая проблема была в том, что у танков башни не было: коллижн-модель представляла из себя однородное тело. После того, как башню отделили, её попробовали отрывать, просто придавая некий импульс, а она отлетала на несколько десятков метров. Выглядело забавно, но абсолютно неестественно. Процесс усовершенствовали.
Для того, чтобы башни отлетали по правдоподобной траектории, надо учесть много факторов при создании начального импульса. В итоге мы пришли к тому, что мы учитываем объём внутританкового пространства, мы учитывает объём оставшегося боекомплекта, при этом мы даже учитываем даже тип боекомплекта. При отрыве башни её крепления разрушаются неравномерно по окружности, а в каких-то местах она разрушается сильнее, в каких-то слабее. Начальная угловая скорость, т.е. закручивание башни, как раз-таки определяется тем, в каком месте крепление окажется слабее.
После отрыва башня остаётся материальным телом с массой, она может служить укрытием, может упасть и нанести урон, разрушить постройку или повредить танк, может его вообще уничтожить, так что берегитесь летающих башен.
Наработки по отрывающимся башням были реализованы в ещё одном аспекте игры: теперь игрок сможет передвигать разные объекты.
Это будут грузовики, трамваи, вагоны, возможно даже сцеплённые составы, могут быть машины, если достаточно большие.
Отдельно хочется выделить поведение грузовиков - это мелочь, но она очень приятная.
Для наших грузовиков мы сделали мягкую подвеску, колёса подпружиниваются рессорами, передняя ось может менять направление, т.е., например, если вы каким-то образом изменили ось направления и толкнёте его сзади, то грузовик сначала поедет по дуге, и только потом передняя ось выровняется и поедет прямо.
Пока что некоторые постройки разрушить на карте нельзя, но есть вероятность, что ситуация изменится.
Мы проводили "секретные", "тайные" эксперименты и у нас на данный момент есть технология, которая позволяет разрушать конструкции буквально по кубикам.
И, наконец, последнее новшество, которое повлияет на поведение танков - они станут переворачиваться, хотя эта возможность была реализована очень давно вместе с падениями со склонов.
Но, к сожалению, контент к этому был немного не готов к столь прогрессивной технологии, поэтому мне пришлось поставить подпорку на 60 градусах, которая запрещала танку переворачиваться, но теперь, после того, как подготовим контент, эту подпорку я уберу, и они начнут переворачиваться.
На этом всё. Мы рассказали о самых важных и заметных изменениях физики в WoT.
Немного ответов Миши из тредика:
- Хавок уйдёт на другие ядра
- Никакого нерфа мобильности с вводом новый физмодели не будет
- Раскачивание в видео действительно гипертрофированное - делалось для тестовых нужд, на реальных моделях все что крепко прикреплено раскачиваться и болтаться не будет.
- Если башня убьёт союзника - это тимкиллом считаться не будет
Немного Coub'а от bigangrycat
UPD c ракового:
|
</> |