1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Убивая однотипные вопросы по поводу производительности игры.

Discussion in 'Бар "Огни Сан-Паро" (флудим - тут)' started by Skandall, Aug 14, 2013.

  1. Skandall

    Skandall User

    Joined:
    19.03.12
    Messages:
    985
    Likes Received:
    584
    данная статья взята из сайта http://apb-online.org/ (автор не я).
    здесь очень много текста,но всё разжёванно и каждый возьмёт что-то из этого.
    неисчерпаемо количество постов на тему "тормозит апб". достаточно ввести сея фразу в гугл и он вывалит вам тонну аналогичных ссылок на "ответы майл.ру" и фан сайты apb.так почему же игра тормозит\лагает\виснет?

    движок апб далеко не новый и отнюдь не монолитный, изначально игра создавалась на unreal engine 2.5 (возможно уже модифицированном со второй версии до 2.5 в процессе разработки),а после игру опять вкатили на новую версию (с нуля ее никто не переписывал, просто были взяты некоторые наработки от нового движка и интегрированы в старую версию).
    по сему можно считать,что это "проапгрейженый" 2.5. а причем же тут тормоза спросит кто-то,ведь у меня же новая видюха,процессор,много оперативки и они все поддерживают...нет не все.
    новые видеокарты аппаратно не поддерживают рендеринг некоторых эффектов (дым например). эффекты частиц в апб, так и переехали в новую веху обкромсаного ue 3.0 потому они и тормозят.
    современные видеокарты (начиная с видеокарт полноценно поддерживающих шейдеры 3.0 (6ххх джифорс и х1ххх радеон) примерно с середины своего поколения, с этими инструкциями расстались, по этому такие игры как painkiller, most wanted и конечно же apb, будут проваливать фпс в дыму до неприемлемых 20и и ниже, хоть поставьте 3 топовых видеокарты аля печ580, тормозить все равно будет, просто потому, что обрабатывать это старье будет драйвер.

    "ок" опять скажет кто-то. "у меня всегда 60фпс но они бесконца резко падают до 30-20 или игра фризит" (подвисает\проглатывает кадры\идет рывками). - процессор\память (как и связка память+процессор).
    картинка может вызывать дискомфорт, просто потому, что память на компьютере установлена медленная, либо ее мало, либо процессор слишком слаб и не успевает обрабатывать поступающие данные (в итоге и видеокарта простаивает).
    абсолютно ошибочно мнение "чем больше памяти - тем лучше" - максимальный объем который может понадобиться домашнему компу это 6-8 гигабайт.
    ставить больше просто нет смысла, ни одна игра\утечка памяти в системе, никогда не используют ее всю,если и будет утекать "сталкер народная солянка",то утекать она будет в файловый кеш (в подкачку) и в итоге система просто захлопнет процесс. сама апб "ест" от силы 2.5гб со всеми утечками, остальное - файловый кеш, игра постоянно грузит мелкий хлам как-то: кастомизация (шмотки бегающих вокруг вас, размалевку их тачек и т.п.). весь этот хлам хранится в папке assetcache (х:\apb reloaded\apbgame\assetcache) в последствии этот хлам частично подгружается в оперативную память где и полоскается на протяжении игры (по этому удалить его во время игры нельзя т.к. файлы эти заняты процессом игры (зарезервированы).

    решить проблему фризов и пр. подвисаний можно путем установки более быстрого жетского диска (хватит одного на 7200 оборотов с 64мб кешем серии wd caviar black если на нем будет лежать только игра, либо серии раптор на 10000 оборотов, либо ssd).
    "почему у моего соседа такой же диск и не лагает, а у меня лагает?" - возможно у соседа он ухоженный, плюс, у него больше оперативной памяти. да да,выше я уже говорил что много памяти не нужно, но суть в том,что больший объем оперативной памяти, можно распределить под дисковый кеш, т.е. помимо того что игра рандомно толкает в память наиболее часто используемые ей файлы, сама система будет эти же файлы кешировать в выделенной для этого области оперативки: своеобразный дабл буст.
    файловый кеш используется чаще в серверах, чтобы не умирали жесткие диски и задержка доступа к данным (отклик на чтение-запись) была сведена к минимуму. по этому установка 24гб на домашний пк тупая трата денег.
    многие используют домашний пк для рендеринга видео\3д. здесь тоже нужно много оперативной памяти,потому что при рендеринге, кадры будущего видеоматериала, помещаются в память в максимальном качестве (абсолютно без сжатия,либо с минимальным сжатием без потери качетсва), одна минута такого видео в зависимости от разрешения и частоты дискретизации (битрейта),может занимать ххгигабайт (это не считая звука).

    варианты как устранить тормоза и фризы при наличии "лишней" памяти (например если у вас 6-8гб оперативки):

    1.можно создать ram диск в памяти и поместить туда (хард-линк) злополучную папку assetcache, для этого есть специальный софт который можно найти в гугле,одна из таких программ так и называется - ramdisk.

    2.правильно установить подкачку. если не лень этим заниматься, а это еще пригодится даже если памяти через чур много, она рано или поздно заканчивается, либо работает медленно просто потому,что к ней происходят частые обращения. улучшить ситуацию можно путем установки "правильного" свопа. для этого необходимо собрать все разделы диска обратно, отрезать в начале раздел равный полутора объемам установленной оперативной памяти (2гб озу = 3.5гб раздел, 4гб озу = 7гб раздел и т.д.) и отформатировать его в файловой системе fat32. почему именно фат? данная фс практически не фрагментируется, и раздел под этой фс будет работать гораздо быстрее. почему именно в полтора раза больше, чем установлено физ. памяти? - потому, что, такой объем позволяет потсоянно выгружать всю используемую память в подкачку и в последствии загружать эти данные обратно, без существенных задержек, не меняя размер подкачки на лету (что тоже вызывает существенные задержки). одно уточнение - размер мин. и макс. размера подкачки должен быть одинаковым (фиксированным). на этом же диске не должно стоять ос т.к. сама ос будет обращаться к диску + программы и сама же ос будут обращаться к подкачке,в итоге диск тупо не потянет такую нагрузку и выхлопа от всей этой затеи не будет, просто потому, что несмотря на "сата 300мб/с", сами харды такую скорость при чтении/записи на/с пластины не поддерживают.реальная скорость колеблется в районе 60-100мб/с (сравните с древней оперативкой ддр 2 6400мб/с и новой вплоть до 30000мб/с).вот оно! вот оно узкое горлышко моей системы! дииииск!!1. :d

    многие ставят "конфиги убивающие графику" - тоже полный бред, убивать там нечего, единственное что делается,это убиваются тени, тени в апб считает процессор, если процессор слаб, то ему не остается времени на формирование пакетов с данными для отправки на сервер, отправки пакетов другим клиентам (р2р), рендеринг геометрии (прозрачные стены(нулевой lod)). да, прозрачные стены "растут" тоже отсюда. тут ничего оптимизировать нельзя,выход один - купить проц с кол-вом ядер больше 2-х, а лучше с четырьмя.
    отсюда и лаги (телепортирующиеся игроки, не регистрирующиеся попадания (buffer overflow - данные стоят)). суть в том,что сервера апб изначально были не расчитаны на такое кол-во народу, потому админы бесконца меняют там хомяков, которые пытаются выжать лишние пару фпс на серверной стороне (пляшут с бубном короче).так вот,помимо того, что сервер не выдает играбельные 30фпс и "недосылает" вам те самые пакеты (packet loss - с учетом расстояния сервер обычно шлет два одинаковых пакета,т.к. один может потеряться или застрять в одном из маршрутизаторов и в итоге клиент будет простаивать в ожидании следующего пакета, а когда сервер не справляется с нагрузкой то он шлет как раз один пакет каждому клиенту в следствии чего вас убивают с трех пуль\кто-то телепортруется и происходят тому подобные шалости), ваш процессор до кучи не справляется с тенями,физикой и пре-рендерингом, и ему тупо не остается "процессорного времени" (тактов) для обработки пакетов на отправку серверу (попал 10 пуль,но не убил - из этой оперы). по этой причине хотя бы на стороне клиента все должно быть в ажуре и процессор должен быть достаточно мощным.в принципе, немощный можно разогнать, или убить тени конфигом, тут кто во что горазд. часть нагрузки кстати сваливается на каждого клиента (своеобразный кластер - привет системе р2р,т.е. каждый клиент (игрок) "помогает" серверу обрабатывать данные и отсылать их другим игрокам).

    выпадающие текстуры, артефакты, светящиеся словно марсиане игроки, зеркальные автомобили - все это следствие движка, который был собран косолапыми девелоперами. это не ваша видеокарта и не ваши драйверы, это стремный движок. от патча к патчу переодичность проявления проблемы меняется в большую или меньшую сторону, но полностью устранить ее можно, думаю только основательно перелопатив движок (пересобрать). про "оут оф мемори" и "генерал протекш фаулт" особо говорить не будут.эти проблемы связаны с вшитым в движок "античитом" (да на уровне многопользовательских игр в движке присутствуют надстройки позволяющие определять читы на низком уровне,но по сути это просто статистика).
    в общем gpf краш,это следствие критической необрабатываемой ошибки,вызванной багтрапом при неверной функции либо панкбастера,либо движкового "античита".т.е. попросту дернулись вы на 180 градусов по неверным координатам - готов краш,тыкнули три клавиши сразу в определенной ситуации - краш, прилетел убитый читами пакет (битые данные не сходящиеся в контрольной сумме) - готов краш.
    оут оф мемори достает многих.происходит по вине нехватки памяти (как видеокарте,так и проссору). 64-разрядная ос решает проблему,но не полностью.все эти рпоблемы опять же растут из кривого движка.игра не расчитана на х64, просто потому что когда она начинала создаваться, х64 как такового не было, а рекомендованные х64 в сис. требованиях,просто повод свалить все проблемы на пользователя ("зачем нам латать движек,когда он юзер может поставить еще х гигабайт памяти и 64 систему и пусть себе память течет.а там глядишь он не будет играть 10 часов к ряду и памяти ему хватит до следующего краша").

    здесь стоит упомянуть твик для 32-разрядных ос /userva=xxxx /3gb.проблема заключается в том, что системы на базе архитектуры х86 не могут работать с блоком пати большим чем 2гб. для всего остального существует рае (расширение физических адресов), если процессор поддерживает рае, то данный режим активируется ос по умолчанию, но вся соль в том,что не смотря на "у меня хр видит 3.5 гигабайт оперативки мне их за глаза" - выделить апб она больше 2гб не может, по этому когда эти 2гб заканчиваются, игра вылетает в "оут оф мемори". так вот по поводу твика - это обман, система просто скажет сама себе "ок, нам дали больше ресурсов для использования виртуальной памяти - "слышь процессор на ка, хавай"...и тут процессор этого сделать не может, сама ос может подготовить больше данных для процессора, но он на это не расчитан, ему нужна реальная 64-разрядная архитектура, чтобы переварить. в апб (да и в других играх) такой твик чреват - вылетами в ту же оут оф мемори (видеодрайвер тоже может падать), выпадением текстур, артефактами. при этом сама игра будет использовать меньше памяти, чем до применения твика. данный твик должен поддерживаться самой программой/игрой (и он поддерживается таким софтом как auto cad/sony vegas/photoshop и аналогичными монструозными прогами). решение х64? отнюдь и увы, сама игра как я говорил, на них не расчитана, в 64 она потребляет куда больше памяти, причем это не зависит от "лучшей графики и больше загружено в память, и лагов нет", нет, от этого не зависит. лучше от х64 в апб ничего не становится, просто ваш процессор может переварить больший кусок за раз и это компенсирует некоторые лаги.

    плохо упакованный "худ" (текстуры интерфейса) вызывает сегментацию памяти, т.е. вы играете себе клацаете таб посмотреть очки, или лезете в сундук сменить оружие\машину\шмотку....а в этот момент происходит что? правильно - берется игровой архив и помещается в память, летели там себе данные летели,и тут на тебе хх мегабайт вклиниваются в эту ровную колею и начинают распаковываться,все это прекрасно заметно по паузе которая возникает во время доступа к шкафу.как временное решение можно просто посоветовать не клацать бесконца шкафом меняя оружие (никто не заставляет не менять оружие вообще, просто не нужно его менять каждые пять минут играя 5 часов без перезапуска игры),а так же автомобили в парковочном автомате.конечно же не скакать по копиям.когда вы меняете копию района весь этот хлам кастомизации других игроков,он ведь никуда не девается, в итоге это верный путь к "оут оф мемори".

    можно было бы улучшить все это дело путем полной распаковки данных (вес игры бы увеличился гигов до 8-10и), при этом часть проблем в виде лагов, и оут оф мемори отпала бы сама собой,но это уже решать садистам из g1.по хорошему клиент игры нужно было пересобрать еще на обт.

    возможно есть способ распаковать все текстуры в отдельный каталог и игра его подберет (распаковать - то не проблема, проблема в том что неизвестно,подберет игра папку вместо упаковки).в крайзисе такой фокус позволял убрать все фризы и пр. неприятности и комфортно играть даже с видеокартой на 256мб + 2гб оперативной памяти. патчи навряд ли что-то решат,разве что они исправят свои предыдущие огрехи, но кардинально что либо изменится,только если они пересоберут клиент, патчами это не лечится.

    из всего выше сказанного получается, что:
    апб нужен быстрый жесткий диск, или правильно оптимизированный жесткий диск. так же пойдет readyboost (флешка для кеширования файлов на ней,но не через тормозной usb 2.0, а 3.0 или мини-юсб диск через e-sata/firewire (ieee1394)), либо ram-дмск.
    процессор для комфортной игры должен быть минимум 2 ядра с частотой выше 3.3ггц ( core2due e8xxx вполне подойдет,например е8600 с частотой 3.6ггц и кешем 6мб (данный процессор ровно половина старшей серии core2quad q9xxx) и он будет лучше чем тормозной 4-х ядерный core2quad q6600 или трехъядерный атлон с частотой ниже 3ггц,или урезанный phenom x3/x4)
    видеокарту можно использовать практически любую из midle сегмента (нвидиа gts250\радеон hd5670\9600gt\hd3850). в общем любую затычку для слота, главное что конкретно в апб 512мб видеопамяти хватит вполне для игры на максимальных настройках в разрешении 1600 (в 1920х1ххх нужно мегабайт 600, но эти сто мегабайт будут кешированы в оперативной памяти и в принципе особого падения фпс не вызовет).
    ну и 4гб оперативки (лучше 6 если жд совсем мёртвый), 2 гигабайта точно недостаточно, 3гб не в полне достаточно. 4гб вполне хватит если диск не будет лагать.

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

    написанное не претендует на панацею от всех болезней и написано ламерским языком для легкого усвоения пользователями.
     
  2. Свинья

    Свинья User

    Joined:
    03.05.13
    Messages:
    168
    Likes Received:
    256
    "спасибку" хочешь?)) не дождешься))
     
  3. Velvet Remedy

    Velvet Remedy User

    Joined:
    09.02.10
    Messages:
    8,561
    Likes Received:
    1,285
    это прочтет 1% "населения" сан-паро, остальные будут ныть дальше о лагах и ставить конфиги на свои калькуляторы.
    никто заново собирать клиент на новом движке не будет, это не один и даже не два лимона баксов трудов, конторы, такие как нцсофт, г1, жадные дочёрта.

    насчет рае и 2гб, если "выкинуть" лишнее железо из биоса, которым никто не пользуется сейчас (комы, лпт, миди, незадействованные юсб и сата мосты), игра куда дольше проработает до вылета.
     
    Last edited by a moderator: Aug 14, 2013
  4. MadnessReturns

    MadnessReturns User

    Joined:
    03.05.12
    Messages:
    1,609
    Likes Received:
    683
    а откудова взята цифра в 3.3 ghz для процессора?
     
  5. Skandall

    Skandall User

    Joined:
    19.03.12
    Messages:
    985
    Likes Received:
    584
    этой статье уже год,сейчас на двуядернике с такой частотой врятли поиграешь.хотя я с збт инновы играл на двуядерном интеле с 2.6гц и 2 гб оперативки.
     
  6. MadnessReturns

    MadnessReturns User

    Joined:
    03.05.12
    Messages:
    1,609
    Likes Received:
    683
    у меня у процессора скорость 2.6 (6-тиядерник от амд), если выставить 1024х768 70-80 фпс перманентно. если поставить 1680х1050 то падает до 27-35, и у меня есть подозрения что в этом виновата видюшка а не проц.
     
    Last edited by a moderator: Aug 14, 2013
  7. Skandall

    Skandall User

    Joined:
    19.03.12
    Messages:
    985
    Likes Received:
    584
    у меня сейчас амдшник 4ядерный по 3гц,4гб оперативки и видеокарта радик hd6670 (1гб,128бит),фпс валится страшно даже с ущебрным кфг.до этого стоял geforce 8800gso (396мб,192бит) и 6гб оперативки, с кфг 80-100фпс,без него 50-70 (даже при записи с бандикамом).
     
  8. MadnessReturns

    MadnessReturns User

    Joined:
    03.05.12
    Messages:
    1,609
    Likes Received:
    683
    у меня сейчас nvidia geforce gt 420 буду менять на gt 560 не ti, так же буду менять блок питания, так-как мой 400-т ваттник не потянет новую лошадку на себе.
     
  9. Nikki.

    Nikki. User

    Joined:
    27.05.12
    Messages:
    1,331
    Likes Received:
    547
    @1.можно создать ram диск в памяти и поместить туда (хард-линк) злополучную папку assetcache@
    а можно подробней, кто шарит в этом?
     
  10. [NS] Boxxy

    [NS] Boxxy User

    Joined:
    06.12.12
    Messages:
    155
    Likes Received:
    38
    что, простите?
     
  11. Mr_Rivethead

    Mr_Rivethead User

    Joined:
    02.05.12
    Messages:
    174
    Likes Received:
    38
    конфиги находят, найдут и эту тему. если прикрепить её к "важным".
     
  12. AdiosAmigoO

    AdiosAmigoO Moderator

    Joined:
    03.06.11
    Messages:
    522
    Likes Received:
    306
    что за чушь! у меня как раз двухъядерник i5 на 3.3ghz , 100-120fps без вертикальной развертки. (1600x900)
    :hmz::mrr::gmd:
     
    Last edited by a moderator: Aug 15, 2013
  13. [NS] Boxxy

    [NS] Boxxy User

    Joined:
    06.12.12
    Messages:
    155
    Likes Received:
    38
    clarkdale штоле? пожалели денег на sandy bridge?
     
  14. Skandall

    Skandall User

    Joined:
    19.03.12
    Messages:
    985
    Likes Received:
    584
    автор этой статьи делал полное описание по пунктам и видео,но тема старая,ссылка на видео\проги битые.
    если хочешь,то вот http://apb-online.org/forum/15-6689-1
    когда у меня была частота 2.6гц у меня процессор грузился на 95-99%,с 4 ядрами выше 70% не было.
     
  15. AdiosAmigoO

    AdiosAmigoO Moderator

    Joined:
    03.06.11
    Messages:
    522
    Likes Received:
    306
    скажу честно, именно в этом я не разбираюсь.)) купил 2 года назад, на первые заработанные мною деньги.
    о покупке не жалею.(бюджет был небольшой) до сих пор тянет все игры (max). и куда вам 4-6 ядерники...
    -
    при записи (bandicam) немного лагает.
    возможно тут играет роль технологя ht на intel-ах... (загруженность протестирую)
     
    Last edited by a moderator: Aug 15, 2013
  16. Skandall

    Skandall User

    Joined:
    19.03.12
    Messages:
    985
    Likes Received:
    584
    у твоего процессора вроде 2 реальных и 2 виртуальных ядра,у тебя не i5-650 случаем?
     
    Last edited by a moderator: Aug 15, 2013
  17. AdiosAmigoO

    AdiosAmigoO Moderator

    Joined:
    03.06.11
    Messages:
    522
    Likes Received:
    306
    возможно, сейчас пишу с ноутбука. буду дома проверю.
    -
    вот только виртуальные ядра приносят мало пользы на сколько я знаю.
    -
    статья хороша, лови "спасибо"
     
    Last edited by a moderator: Aug 15, 2013
  18. SULTANOVA-VIKA

    SULTANOVA-VIKA

    Joined:
    27.11.12
    Messages:
    176
    Likes Received:
    49
    мой пк
    процессор amd iix4 840 3.20 ghz
    память 4,00 гб
    операционка win 7-64
    видюшка ati radeon hd-5700
    мать gigabite
    кто знает подскажите можно ли файл подкачки перенести с диска с системного на d локальный или обязательно съемный нужен usb 0.3 ?
    в деловом-портовом 40-40 человек фпс скачет 40-80-110 лаги просто ужасные, до профилактики еще можно было играть, но теперь даже в общем телепортит.
    при максимальных настройках графики фпс 40
    при отключенных эффектах тени, сглаживание, vsing, fps поднимается аж до 80-90
    от смены разрешения разницы нет совсем, стоит 1920-1080
    особо сильно лагает при большом количестве частиц дым, взрывы, стрельба дробью
     
    Last edited by a moderator: Aug 15, 2013
  19. SULTANOVA-VIKA

    SULTANOVA-VIKA

    Joined:
    27.11.12
    Messages:
    176
    Likes Received:
    49
    проще удалить эту не доработанную игру и скачать достойную замену, чем доделывать ее за разработчиков.
    может их еще профинансировать за счет игроков, раз они забросили проект на пол пути?
    по самой игре видно что она сырая на 80% не доработана, одни косяки и они быстрей запустили ее деньги гребсти.
    gta-5 быстро затмит всю эту ересть апэээээбээээээээээ
     
    X-Flash likes this.
  20. [Expel]

    [Expel] User

    Joined:
    19.03.12
    Messages:
    4,457
    Likes Received:
    522
    gta4 что-то не пошла с мультеплеером. про нее тоже говорили =_=