Популярный пост Sanek841 Опубликовано 29 октября, 2015 Популярный пост Поделиться Опубликовано 29 октября, 2015 Быстродействие Trainz Игра Trainz Simulator 2012 – это достаточно тяжёлое и ресурсоёмкое приложение. Заставить её работать более-менее адекватно на lo-end железе почти невозможно, хотя кое-что можно сделать. Самая распространённая ошибка, которую совершают начинающие игроки, компьютеры которых не отвечают самым высоким стандартам производительности – начинают снижать качество рендеринга, думая, что их видюха "не тянет". Любая более-менее современная (ну, скажем так, выпущенная после 2008 года как минимум) дискретная видеокарта способна справиться с графикой Trainz при максимальных или около того настройках. При этом движок игры имеет несколько менее очевидных "бутылочных горлышек", о которых и пойдёт речь. Первым из таких моментов является, как ни странно, звуковая карта. Дело в том, что особенностью Trainz является необходимость одновременного воспроизведения большого количества звуковых потоков от разных источников с большим количеством меняющихся во времени параметров. И если ваш компьютер не оборудован игровой звуковой картой, поддерживающей аппаратное ускорение 3D-эффектов и воспроизведение многопоточного аудио, то вот вам и первый подводный камень, ибо в этом случае задача обсчёта звуковых потоков ложится на центральный процессор. Если он у вас достаточно мощный, то особо беспокоиться не стоит. Достаточно просто просто зайти в настройки игры и отключить опцию 3D sound effects. Если же процессор слабенький, то придётся вносить коррективы в контент – как вариант убирать с карт лишние стационарные источники звуков, т.к. разработчики очень любят ставить на карты галдящих галок, работающие тракторы, шумы вокзалов и прочие вещи, не имеющие отношения к собственно симуляции и без которых совершенно спокойно можно обойтись.Кстати о процессорах. Trainz в его нынешней версии скомпилирован как 32-х битное 1-поточное приложение. Поэтому если у вас многоядерный процессор, особого прироста производительности это не даст. Как показали эксперименты, из 4 ядер процессора AMD Phenom II x4 более-менее загружено работой только одно. Остальные чем-то тоже заняты, но процентов на 10-15. Так что по грубой прикидке, чтобы поднять производительность хотя бы на 50%, надо удвоить количество ядер. Поэтому с точки зрения Trainz лучше использовать процессоры с максимальной тактовой частотой, чем большим количеством ядер. У процессоров AMD есть, например, такая замечательная опция – CPU down core, которая позволяет выключать ядра, тем самым снижая потребляемую мощность. Нестандартное применение этой опции - разгон оставшихся ядер. Например, мой AMD Phenom II x4 945, если отключить 2 из 4 его ядер легко гонится до 3400МГц (225х15) и при этом его температура со штатным кулером в игре не выше 60 градусов. На всех "котлах" температура поднимается до 80 градусов, нужен более мощный кулер. В любом случае в Trainz разгон системы на 5% даёт прирост производительности больший, чем переход с 2-х ядерного процессора на 4-х ядерный.То же, в общем-то, относится и к памяти. Много памяти в системе - это хорошо, но Trainz всё равно сможет "увидеть" и использовать не больше 3Гб. Поэтому значение ResourceMemory в trainzoptions.txt нет смысла увеличивать более 2048мБ. Но и загонять игру в своп тоже не хорошо: производительности это явно не добавит. Для систем с 4Gb памяти оптимальным является значение 1-2Gb. Но к настройкам самой игры мы ещё вернёмся. По поводу памяти надо иметь в виду так же следующее: Jet (так называется движок игры) активно перемещает данные между видеопамятью и оперативкой. Следовательно, все элементы этой цепочки должны быть максимально быстрыми: и видеопамять, и шина и сама оперативка. Тут требования более-менее общие для всех насыщенных объектами игровых приложений. Кстати, Trainz по этому параметру далеко обгоняет практически все существующие игры и симуляторы: движок игры в каждом кадре имеет дело с сотнями – и даже тысячами – объектов, которые оперативно подгружаются с жёсткого диска. Если же у вас память или шина медленные, то в драйверах видеокарты следует поиграть с texture filtering. Предобработка текстур позволяет сократить объёмы передаваемых между оперативкой и видеопамятью данных за счёт незначительного снижения качества картинки.Отсюда ещё одно "узкое место": винчестер. Если есть возможность, то радикальным решением является использование SSD- или SSHD-дисков. В самой максимальной инсталляции мне не удавалось "раздуть" игру больше 40Gb дискового пространства, так что небольшой и относительно недорогой SSD на 40-60Gb, целиком отведённый под игру – наилучший способ решить проблему. Кстати заодно такой подход позволит вам делать бэкап игры в виде образа этого диска, и в случае аварии самого диска или базы данных ассетов, оперативно восстанавливать, что особенно важно для разработчиков. Я на эти грабли, к сожалению, однажды наступил - ощущения так себе, когда несколько месяцев трудов идут лесом.Впрочем, немного улучшить производительность игры можно и не прибегая к серьёзному апгрейду компьютера. Благо, игра достаточно хорошо и гибко настраивается, и для этого существует файл trainzoptions.txt, который в нынешней версии игры находится в директории UserData. И в первую очередь следует соблюдать одно простое правило: ни в коем случае не прописывать в trainzoptions.txt параметры, относящиеся к настройкам видеосистемы. К таким параметрам относятся:-DefaultAutoMip-DynamicVertexBufferSize-DynamicIndexBufferSize-VBO-width-height-framerate-framestoaverage-vsyncБольшинство из этих параметров являются атавизмами, доставшимися от древних версий движка и только мешают встроенным в нынешний Jet адаптивным механизмам оптимизации работать. Они не оптимальны для современных видеочипсетов, и откровенно оверрайдят настройки драйверов. Разрешение экрана можно задать в настройках игры. параметры вроде framerate, vsync и framestoaverage лучше всего устанавливать в настройках драйверов видеокарты. Там же имеет смысл настроить антиалиасинг, анизотропную фильтрацию и прочие графический параметры. Повторюсь: любая современная видеокарта способна справиться с графикой Trainz на максимальных настройках. И желательно, чтобы эти настройки определялись по максимуму драйвером видеокарты, а не диктовались движком игры.Тем не менее в trainzoptions.txt есть и важные для нас опции. К ним относятся:-CabinFOV-DriverFOV-SurveyorFOV-freeintcam -ResourceMemory-KeepAllResources-arealimitВсё, что кончается на FOV определяет углы обзора виртуальных "камер": в кабине, на внешних видах в режиме Driver и в редакторе соответственно. Чтобы картинка не выглядела снятой "рыбьим глазом", значение DriverFOV следует брать как можно меньше: 7-10 (градусов). Остальные параметры можно выбирать по вкусу. В редакторе, например, удобно иметь широкий обзор. В кабине оптимальный угол обзора - 40-60 градусов, при этом кабины отечественных локомотивов смотрятся реалистично, но при малых углах придётся больше "вертеть головой".Про параметр ResourceMemory я писал выше, он определяет размер пула оперативной памяти для кеширования объектов сцены. Чем он больше - тем реже придётся движку лазить за новыми ассетами на жёсткий диск, тем меньше будет лагов. Хотя это правило не железное. Проверить, хватает ли вам памяти, можно следующим нехитрым способом: сядьте в кабину локомотива на какой-нибудь насыщенной объектами станции с хорошим видом "в горизонт" (я использую Ладожский вокзал на трассе "Санкт-Петербург – Мга – Волховстрой", хотя, идеальное место, конечно – это Киевский вокзал на трассе Москва – Калуга – БМО, но она уж больно долго грузится для тестов), и наклоните камеру в надир ("посмотрите" себе "под ноги"), а затем резко переведите "взгляд" камеры на горизонт. Если появились лаги – изменяйте пару параметров ResourceMemory и AreaLimit до тех пор, пока лаги не прекратятся или станут сильно меньше. Эта настройка сугубо индивидуальна для каждой системы. У меня оптимум наступил при ResourceMemory=2048 и AreaLimit=2000. Дальнейшее увеличение AreaLimit начало приводить к возрастанию лагов в движении. После всех этих настроек fps на Киевском вокзале выглядит так:Кратковременные провалы - это лаги, вызванные подгрузкой контента в движении.Кстати, многие не совсем верно понимают смысл параметра AreaLimit. Он не тождественен параметру View Distance в настройках игры. Он определяет, на каком максимальном расстоянии от наблюдателя объекты считаются актуальными в цене и не подлежат выгрузке из оперативной памяти при значении KeepAllResources=1. Т.е. View Distance может быть хоть 5000, но если вы "отвернётесь" от объекта, расстояние до которого больше, чем AreaLimit, то он будет выгружен из памяти. Повторный "взгляд" в его сторону заставит движок вновь обращаться к жёсткому диску. Увеличивать AreaLimit сверх меры так же не стоит, т.к. это может привести к лагам в движении из-за перегрузки большого количества объектов. Кроме того на периферии сцены как правило ставят лёгкие объекты или объекты с ЛОДами, так что их загрузка-выгрузка куда меньше скажется на производительности, чем операции с тяжёлыми объектами 1-го плана. Оптимальное значение AreaLimit лежит в пределах 500-2000м и выбирается индивидуально для каждой системы.И в заключение – мой trainziptions.txt-CabinFOV=60 -DriverFOV=7-SurveyorFOV=60-freeintcam -ResourceMemory=2048-KeepAllResources=1 -sectionlimit=1-arealimit=2000-disablerailjointsound -disablecarz=1-znear=1.5Приятных покатушек! Источник: http://gregory.pp.ru/24oct2014/trainz_performance 9 Ссылка на комментарий Поделиться на другие сайты Поделиться Награды
Пользователи MaxMsts Опубликовано 14 ноября, 2017 Пользователи Поделиться Опубликовано 14 ноября, 2017 Возможно мне не стоит пытаться устанавливать Trainz с моим железом. Процессор - Intel® Pentium® CPU 2020M @ 2.40 GHz, ОЗУ - 4 ГБ, Видеокарта - Intel HD. Это ещё не всё, т. к. у меня не системный блок, а ноутбук, поэтому хорошей аудио-карты нет, а заменить или дополнить детали не представляется возможным. Ссылка на комментарий Поделиться на другие сайты Поделиться
k0LEGa Опубликовано 15 ноября, 2017 Поделиться Опубликовано 15 ноября, 2017 Железо очень слабое. Будет низкий показатель фпс 1 Ссылка на комментарий Поделиться на другие сайты Поделиться Награды
IFOR Опубликовано 15 ноября, 2017 Поделиться Опубликовано 15 ноября, 2017 И я еще с этого ноута и сессии держал. Ссылка на комментарий Поделиться на другие сайты Поделиться Награды
k0LEGa Опубликовано 15 ноября, 2017 Поделиться Опубликовано 15 ноября, 2017 IFOR у меня ноут core i5 второе поколение 8 Gb DDR3 памяти. Тоже сессии держал, но это не комфортно все равно Ссылка на комментарий Поделиться на другие сайты Поделиться Награды
sergey65 Опубликовано 15 ноября, 2017 Поделиться Опубликовано 15 ноября, 2017 Возможно мне не стоит пытаться устанавливать Trainz с моим железом. Процессор - Intel® Pentium® CPU 2020M @ 2.40 GHz, ОЗУ - 4 ГБ, Видеокарта - Intel HD. Это ещё не всё, т. к. у меня не системный блок, а ноутбук, поэтому хорошей аудио-карты нет, а заменить или дополнить детали не представляется возможным. Можно не много ускорить и увеличить память. Возьми флешку на 8Гб по шустрей которая и используй её как ReadyBoost. Мне помогало, примерно с такими-же характеристиками. Ссылка на комментарий Поделиться на другие сайты Поделиться Награды
Пользователи MaxMsts Опубликовано 18 ноября, 2017 Пользователи Поделиться Опубликовано 18 ноября, 2017 Вот решил копить на ПК ( 29 тыс. рублей ) с intel core i5 и 8гб ОЗУ, но видеокарта Intel HD Graphics 630. Потом конечно можно вставить и помощнее. Вопрос на первое время будет стабильный показатель фпс? Ссылка на комментарий Поделиться на другие сайты Поделиться
k0LEGa Опубликовано 20 ноября, 2017 Поделиться Опубликовано 20 ноября, 2017 вкладывай в видеокарту, процессор можно и i7 третьего или четвертого поколения. Бери хотя бы 1060 3 Gb Ссылка на комментарий Поделиться на другие сайты Поделиться Награды
Рекомендуемые сообщения