Реклама | Adv
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
  • Rotator
Сообщения форума
Реклама | Adv

Ну собственно несколько вопросиков по клиенту.

Дата: 25.03.2016 18:36:06
Просмотр сообщенияBerry_Tiger (25 Мар 2016 - 07:37) писал: Доброго товарищи форумчане, и все кто не очень. ©   Серверная часть.
1. На сколько игроков в данный момент расчитан сервер - пиковое значение игроков (по мощности)?
2. Как продвигается работа в реализации технологии синхронизации данных на стороне сервера и пользователя (дублирующая синхронизация) для устранения потерь?
3. Система обновления P2P, почему не введете альтернытивную возможность как на китайском сервере?   Клиентская часть.
4. Как производится оптимизация проекта под разные сборки (компьютеры)?
5. Почему в описании рекомендованных требований, отсутствует конкретное пояснение по серии i-процессоров (только индекс 5-ой) , рекомендация SSD (или скоростного HDD), видео-карт серии M (мобильных).
6. На сколько игра идет лучше на Windows 7 (64 bit), чем на Windows 7 (32 bit)? На сколько битность влияет на производительность при одинаковом количестве памяти 4Гб (без учета обрезки, пример), и условии, что клиент по сессии идёт в 32 bit.
7. На что следует расчитывать игроку опираясь на рекомендованные требования: качество графики (настройки), производительность (fps), просадки по производительности.
8. Идеальный компьютер (в соотношении цена/производительность) для игры (FPS - 60, настройки высокие, 1080р)?
9. На ЗБТ игра была по производительности лучше танков, что сказалось (ввод новых моделей, переработка графики, деревья)?
10. В чем заключается проблема упаковки 200-а тысячи файлов в компактные архивы (какие успехи на данный момент)? Почему в ОТ 0.4.1 не вышло?
11. Почему нагрузка в порту такая значительная? Растительность, объекты/постройки, вода?
12. Что приводило к тому, что при свертывании клиента нагрузка на видеокарту не снижалась?
13. Многоядерност: работает (на сколько ядер), равномерная нагрузка, распределение самой нагрузки?
14. Сложность реализации нормального функционирования SLI-режима?
15. В чем заключается сложность переработки дымов без потери производительности?
16. Какие успехи на данном этапе в области оптимизации погодных условий? На сколько сильно возрастет нагрузка?   зы. Не написал их в "Вопросах", ибо как понял они там не к месту.

alexbljack:   Всем привет!

Итак, обещанные ответы :red_button: Прежде всего - огромное спасибо за корректно поставленные вопросы. На такой список приятно отвечать.

Сервер
1) Точных цифр к сожалению разглашать не могу. Но могу заверить, что серверных мощностей хватает для обслуживания много большего количества игроков, чем текущий онлайн.
Я думаю, вопрос адресован скорее к проблемам вылета и периодических плановых перезагрузок - тут я хотел бы сказать, что такие проблемы носят локальный характер и причина не в "не рассчитали мощности кластера", а в точечных перегрузках или нетривиальных багах backend'а. Рассчитали - мощностей хватит и будет хватать.   2) Если вы имеете в виду "телепорты" кораблей и прочие side-эффекты при лагах сети, то работы в данном направлении активно ведутся. Если вопрос не об этом - поясните.   3) А есть ли необходимость в альтернативном способе? Чем не устраивает существующая? За Китайский кластер говорить не берусь - у них свой формат доставки обновлений до пользователя. Какой именно и в чем его плюсы или минусы к сожалению ответить не могу. Не располагаю точно информацией. 

Клиент
4) Каждая планируемая функциональность проходит тестирование на так называемом "тестовом стенде". В него входит большое количество конфигураций, разные по мощности с различными ОС и железом. Соответственно, в ходе тестирования, выясняются узкие места в производительности и устраняются / оптимизируются или вообще фича может отключаться для определенного набора конфигураций. Немного подробнее, можно еще прочитать в нашем блоге - http://wargaming.com...ame_qa_part_2/.   5) Это наше упущение во время составления требований. Согласен, что было бы не лишним их еще немного детализировать. Мы уже занимаемся этим вопросом.   6) Как такового, влияния практически нет. НО. Битность начинает существенно сказываться на стабильности и частоте вылета игры в OOM (OutOfMemory). А причина проста - в x86 системах, максимальный объем виртуальной памяти для процесса - 2 Гб. Это области, отведенная под процесс. Туда входит также отображение видеопамяти в ОЗУ и многое другое, это не то же самое, что отображается в диспетчере задач и НЕ файл подкачки. В тоже время, для x64 этот лимит составляет 4 Гб (выдержка из официального MSDN от Microsoft https://gyazo.com/da...7e9a73ac083de7c). То есть, имея 4 Гб на x86 системе, процессу игры доступно максимально 2 Гб виртуальной памяти. На низких настройках этого достаточно, но для настроек выше среднего, значение используемой виртуальной памяти WOWs составляет 2 -2.2 Гб. То есть велика вероятность падения клиента.   7) Не очень понял вопрос, но все равно постараюсь ответить. Имея конфигурацию, соответствующую рекомендуемым требованиям, игрок должен получать не менее 30 FPS, очень редкие ситуативные просадки (только в особо динамичные загруженные моменты) и отсутствие вылетов игры из за недостатка системных ресурсов.   8) На чем пойдет игра на Very High настройках и в 60 FPS, я сказать могу, но что касательно соотношения цены - тут, если позволите, я бы взял время на подумать и отписать например отдельным постом.   9) Сказалось много факторов, как визуальных (деревья, модели и детализация окружения), так и невидимых игроку. Производительность зависит не только от того, что мы видим на экране, но также от большого количества процессов, происходящих в фоне - обработка UI, игровой логики и т.д. Сейчас я наверное уже не смогу перечислить все нововведения, которые были внесены со времен ЗБТ, но скажу, что мы всеми силами стараемся сохранить баланс между функциональностью и игровым комфортом. Важно помнить, что любая фича не бесплатна для ресурсов ПК, но мы пытаемся максимально их оптимизировать в ходе разработки.   10) Проблемы с упаковкой как таковой не было и реализована она была уже достаточно давно. Но на тестах выяснилось, что работа с запакованными ресурсами приводит к увеличению времени загрузки клиента в порт и бой. Таким образом и начался поиск причин такого поведения и путей для оптимизации. Ухудшать и без того довольно длительное на некоторых конфигурациях время загрузки мы себе позволить не могли, поэтому и шлифовали данную технологии до получения удовлетворяющих результатов.   Вопреки расхожему мнению, большое количество файлов НЕ влияет на производительность игры в бою и нелинейно влияет на время загрузки.
Дабы не повторяться, я позволю себе процитировать ответ моего коллеги Santcoder и одного из игроков. Вопрос

Цитата Добрый вечер!
Выяснил, почему Ваша игра постоянно лагает!!! Как Ваш жутко лагающий ангар, так и в самих боях (пусть там и лаги реже). Это заключение высококлассного программиста из крупной IT компании.
Вот Вам три скриншота (структура игр WoT, WoWS, Ведьмак3 со всеми аддонами) - проанализируйте, чем отличается одна из игр от остальных?
http://www.picshare..../Zs820qK84T.jpg
http://www.picshare..../Xk6GD9X2ul.jpg
http://www.picshare..../E2I0IyvY2S.jpg
Подсказку уже дал, подчеркнул красным)))
Когда я показал папку с игрой данному профессионалу - он просто обалдел от шока. КАК ТАКОЕ, программу с такой дикой структурой, вообще можно было выпускать в продажу? Вы хоть понимаете, что программа с такой внутренней стуктурой - будет более-менее адекватно работать только на самых быстрых (и самых дорогущих) SSD (это его слова)!? А на любых HDD, особенно не на только что купленных и не супер быстрых, она будет всегда работать через лаги! Именно из-за такой вот, запредельно неоптимизированной, структуры клиента игры - игра постоянно и дико у всех игроков лагает в Порту, и время от времени лагает в боях!!!
Не говоря уж о том, что подобная структура очень сильно изнашивает жёсткий диск при своей работе.
 
Уважаемые разработчики - я очень хотел бы надеяться, что данная информация будет Вами срочно и всерьёз рассмотрена (на общем совещании, которое Вы соберёте) и будут сделаны правильные выводы. Пока я не буду предавать данную информацию публичной огласке, в надежде на то, что Вы внесёте необходимые исправления в структуру клиента игры в ближайших патчах! 
 
Как никак Ваша игра вообще самая дорогая среди всех игр, цены в ней (честно говоря) безумные (особенно в условиях нынешнего кризиса в России) - и не провести работы над исправлением подобной грубейшей ошибки в организации структуры игрового клиента, приводящей к серьёзным постоянным лагам и неадекватно высокой нагрузке на жёсткий диск, было бы крайним неуважением к Вашим клиентам.
Но если данная проблема будет и дальше Лестой просто игнорироваться (как и проблема неадекватной нагрузки на видеокарту в Порту) - я буду вынужден поднять данный вопрос публично.:(
С уважением!

alexbljack:   Ответ

Цитата Данная проблема уже не раз выносилась публично с точно такими же скриншотами и сравнениями, но, к сожалению, причина не так проста. 
Для того чтобы проверить данную теорию достаточно запустить приложение perfmon которое есть в любой версии windows и запустить мониторинг активности жесткого диска. 
игра у меня установлена на системном диске, был запущен хром и торренты в это время (домашняя машина все же =)) поэтому результаты не совсем чистые 

https://i.gyazo.com/09caafc9ad692719f1ad070565d97b84... - активность в простое 
https://i.gyazo.com/ee518cf44bee3520bc8816574e73a1ba... - запуск клиента, загрузка основных ресурсов (до логин скрина) 
https://i.gyazo.com/e7ebc51bb44903e0fd85840ab79b2fcc... - ввод логина, загрузка дока 
https://i.gyazo.com/3fbf1e8f71e44a3e60aafba8166f7407...- кручу-верчу док. после окончаня загрузки короткий паразитный пик, вероятно не связан с клиентом 

https://i.gyazo.com/32d88121ac7adaefa3b6449f12fc1a20... - захожу в бой, клиент грузит карту и корабли 
https://i.gyazo.com/1da551a3d02b031d5ef638b6c0cec61e... - загрузились 
https://i.gyazo.com/f1ff4d7ed56e0f65f3f45435e2cd85f0... - активные боевые действия. Короткие обращения на чтение - это не клиент. 
https://i.gyazo.com/d350004ba5baf2660bfe8ffa324d7e12...активные боевые действия 
https://i.gyazo.com/343b3def01ae80b018041034b65862da...активные боевые действия 
https://i.gyazo.com/1e85df46757df3d674aac16bf2375cd8... - один фраг уже есть, выхожу на тирпица) 
https://i.gyazo.com/61f94e3991eb43e7b1a635106f08cc33... - доказательство активных боевых действий 
https://i.gyazo.com/74d40ff926ba90cb2a2c0b671a79932e... - а в это время в perfmon тишина 
https://i.gyazo.com/04e47d871b134eee14983df4bdfdc08b... - и снова тишина 
https://i.gyazo.com/33cf65c31a86a12f38b3724dbebb8857... - бой закончен, выходим в док 

И так, почему мы увидели такую картину? потому что наш клиент не грузит ничего ни в бою ни в доке, все обращения к файлам происходят ДО захода в бой и ДО захода в порт. То есть дальше уже в порту и в бою мы оперируем только тем, что уже загрузили. Поэтому структура папки с игрой не влияет на производительно во время боя практически никак - в бою мы не обращаемся к файлам. 

Можно подумать, что запаковка всех этих файлов могла бы решить другую проблему - проблему долгой загрузки. Тем не менее, это не совсем верно - если мы пакуем файлы в паки, то чтобы прочитать какой-то файл из пака нам придется грузить ВЕСЬ пак в оперативную память. Что негативно скажется на времени - это подтверждают наши тесты. 

На что же на самом деле влияет большое количество файлов? На время апдейта клиента, время скачивания и время удаления. 

Тем не менее, мы активно разрабатываем такую систему паков, которая бы решила проблему с долгим апдейтом и помогла бы улучшить время загрузки в бой. Надеемся, вы увидите ее в ближайших версиях.

alexbljack:   11) Один из вопросов, в который я очень хотел бы внести ясность. Тут я тоже процитирую коллегу, чтобы не повторяться

Цитата ''Почему так вырастает нагрузка на гпу?''' На самом деле, та нагрузка, которую вы сейчас видите - это относительно нормально. В бою мы зависим от CPU (наша игра в ряде случаев - CPU зависима), он тратит больше времени на обработку кадра чем GPU, соответственно GPU его ждет и не работает на полную мощность. Когда мы выходим в порт мы отвязываемся от ограничений CPU - в порту нет логики, ожиданий сетевых пакетов, предсказания движений и т.д. В результате GPU начинает работать на полную катушку и выдает весь свой потенциал. 

alexbljack:   Вышеприведенное утверждение справедливо для конфигураций со слабым CPU или где видеокарта в целом быстрее обсчитывает сцену, чем процессор. То, что видеокарта пытается выдать максимальное количество кадров в порту - нормальное явление. Вы можете провести простой эксперимент - поменять настройку FPS Limit с 75 до, скажем 20. И будете наблюдать сильное падение нагрузки на видеокарту и, соответственно, падение температуры.   12) Если кратко - ОС считала, что окно клиента находилось в активном состоянии. Соответственно, все ресурсы честно бросались на обработку игрового контекста.   13) Мультикор - есть. Есть задачи в процессе работы клиента, которые "размазываются" ровным слоем по всем ядрам (обработка частиц например). Есть тяжелые, которые работают в отдельном потоке на отдельном ядре - пример звуковая подсистема WWSE. Есть основной поток игры, занимающийся обработкой рендера и игровой логики - самый тяжелый и обычно занимает целое ядро (на котором все же могут еще крутиться другие задачи).   14) Есть определенные технические сложности. Поиск и борьбу с графическими артефактами мы ведем постоянно и чаще всего - проблемы оказываются на стороне NVIDIA драйверов и их устранением занимаются их инженеры. Но еще есть такой момент, что процент игроков, владеющих данной технологией, очень низок. Сейчас у проекта есть много направлений для оптимизации на конфигурациях, которые имеются у преобладающего большинства нашей аудитории и преимущественно силы брошены именно на них. Когда появится полноценная поддержка режимов Split Frame Rendering и Alternate Frame Rendering я к сожалению сказать не могу.   15) Сложность как всегда - сделать красивый эффект, при этом не просаживающий производительность. Мы работаем в данном направлении и пробуем различные варианты.   16) см. п 9. Нагрузка немного подрастет (не бывает бесплатных красивых эффектов), но в целом - погодные эффекты рассчитаны на комфортную производительность даже на слабых конфигурациях.

Реклама | Adv