современные движки позволяют держать до 2 миллионов вершин в кадре камеры, сотни 2 дроуколов, физику, партиклы с колижинами и тенями - и ничего не подгорает.
кривожопый код дает не только просадку фпс, а и вылеты или вообще способен намертво повесить процесс.
так что оптимизация это не порезать графику, все взаимосвязано.. - например кривая выгрузка сурсов из памяти, которые не нужны - это графика или код? что нужно резать?
просто сборкой занимаются программисты, которым легче врезать по графике, чтоб поднять фпс.
Начнем с того, что движок Варбанда просто ни в какую не умел работать с большим количеством ресурсов, т.е моды просто вылетали, где было много ресурсов.
Но это не главная беда его была. Самая большая проблема была в просчете коллизии, Именно эта часть просаживала фпс очень сильно. Сейчас по их словам они переписали движок с нуля, так что первую проблему я уверен на 99% они устранили, а поэтому теперь у нас качество моделек и всего возрастет точно( это и видно). Думаю что они и оптимайзы завезли какие-нибудь.
По поводу просчетов коллизий, тут надо верить только в прямые руки разработчкиов, я не знаю какой у них уровень, знаю, только то что Армагана была научная степень в математических науках и я верю что он хорошо отбирал команду, но увы, не все математики пишут хороший код. Тут очень важно ещё и в вычислительной геометрии разбираться на очень глубоком уровне.
К чему это я? Ну да, давай мы отрендерим 2 млн полигончиков, куча частиц. Просчет теней сделаем за счет отложенного освещения и ssao, так что нам на количество геометрии будет... ну почти, пофигу. Завезем туда пару миллионов партиклов и пусть всё это шевелится. Да, это не будет лагать. И я уверен что и их движок сейчас с этим справится, но возниакт такой вопрос, нам же хочется динамики в игре, например, нашу боёвку:
А что надо для нашей боёвки? нам надо просчитать удары друг по другу, пусть у нас N объектов, в каждом объекте M костей, на каждой кости весит коллайдер, скорее всего это цилиндр, в итоге у нас ещё где K вертексов. Посчитаем асимптотику решения. Нам надо перебрать все коллайдеры в "скелете", умножить на количество вершин(сейчас я не могу сходу придумать решение для пересечения выпуклой оболочки в 3д с отрезком быстрее чем за O(n), линейное время) . Т.е у нас уже M * K, теперь ещё от нас это надо пересечь с каждым человеком, т.е M * K * N, хорошо, в этом месте можно ввести отпимизацию и только для окружающих просчитать, так что будем считать что за O(1) мы найдем окружающих нас "скелетов", но теперь надо вспомнить что каждый с каждым дерется и тут опять N вылезает,в итоге M * K * N возникает, ну давайте прикинем теперь ещё цифры, M = 15 , K = 10, N = 600( все же тут хотят 600 рыл на сцене). Получаем около 90 000 операций, причем эти операции не атомарные, каждая операция состоит ещё из 10-15 других. Теперь вспомним что это надо просчитывать
почти каждый кадр, ну , конечно, никакой дурак не будет каждый кадр просчитывать физику. В общем, это я посчитал только обсчет боёвки, давайте теперь прикинем, нам надо ещё просчитать пересечение с ландшафтом, объектами над картой, ИИ обработать и прочее, где-то там музыка декодируется и т.п
Ну ребят, когда 64 человека в батле, и они всего лишь стреляют:) а ближний бой это нажатие одной кнопки.. Ну если вы внимательно читали мой пост, то поняли к чему я клоню:)
В общем, всё это гадание на кофейной гуще. Надо ждать игру, когда выйдет можно судить:)