Мелка река, да круты берега.
Не широк поток, а держит.
(Литературное наследие наших далеких предков)
Counter-Strike: Source требует довольно мощной системы для нормальной частоты кадров, да и просто для того, чтобы игра классно выглядела. Наши советы помогут вам правильно выбрать различные параметры настройки игры и откроют некоторые маленькие хитрости. Первая часть статьи посвящена оптимизации графики средствами Windows, вторая — настройкам самого Counter-Strike.
Что такое fps?
FPS — это не только жанр, в частности, Counter-Strike, но и количество кадров в секунду (от англ. «frame per second»), которое генерирует ваша видеокарта. На практике — чем выше это число, тем лучше. Различают средний, минимальный и максимальный fps. Измерить его можно специальными тестами, такими как 3DMark, либо играми, если они поддерживают такие измерения.
Тема этой статьи — Counter-Strike: Source, но наши советы помогут вам в борьбе за fps во всех играх. В частности, все советы применимы для Half-Life II.
Это интересно: человек лучше замечает не свойства окружающей среды, а изменение этих свойств, то есть динамику процесса. Это характерная особенность любой сложной биологической системы. Применимо это утверждение и к зрению. Скачки fps действуют хуже, чем постоянный низкий fps. При игре с неровным fps мозг не успевает адаптироваться к определенному значению, как уже возникает новое. Это приводит к ухудшению восприятия. Кроме того, низкая частота обновления экрана сама по себе вредна для глаз. Не стоит также забывать, что fps — это не только частота показа новых кадров, но и частота расчета физической модели движения объектов на игровой сцене. Чем чаще эта модель будет обновляться, тем больше она будет похожа на реальную.
Семь раз отмерь...
Прежде чем воспользоваться какими-либо советами по повышению fps, советую вам измерить изначальное неоптимизированное значение fps. После всех описанных ниже действий не забудьте сравнить результаты «до» и «после». И ни в коем случае не сдерживайте свой порыв написать письмо в редакцию и рассказать, что получилось. Мы гарантируем, что число fps повысится минимум в два раза. Подчеркиваю: минимум.
Предоставим 3DMark05 вашей собственной фантазии, а сейчас займемся замером fps с помощью стандартных средств Counter-Strike: Source. Запустите игру, выберите Video Stress Test, нажмите Begin и погрузитесь в одноминутное путешествие по тестовому миру. Если вы хотите увидеть текущее значение fps, перед запуском теста вызовите консоль — клавиша [~] — и введите cl_showfps 1. Хотя делать это вовсе не обязательно, так как в конце теста выдается табличка со средним значением fps (у меня — 43,01).
Оптимизация Windows
Службы
Наша «служба» и опасна, и трудна! |
Служба — это небольшая программа, стартующая одновременно с запуском Windows (NT, XP, 2000), она выполняет какие-либо служебные функции или обеспечивает работу других программ. Без некоторых из них — как без воздуха, но многие лишь зря «едят» вашу оперативную память и «грузят» процессор. Сейчас я разъясню, какие службы необходимо оставить, а с какими лучше распрощаться.
Это важно: особый прирост в производительности заметят те из вас, у кого меньше 512 мегабайт оперативной памяти.
Чтобы посмотреть список служб, нужно зайти в Панель управления > Администрирование > Службы либо набрать в Пуск > Выполнить services.msc. Не пугайтесь огромной длины полученного списка — многие службы Билл Гейтс уже отключил.
Мы будем менять тип запуска службы. Для этого нужно дважды щелкнуть по ненужной службе и на закладке «Общие» найти поле «Тип запуска». Есть три типа запуска:
Автоматический — эта служба постоянно включена и постоянно «ест» место в оперативной памяти. Иногда это избавляет от необходимости тратить время на ее запуск.
Вручную — если системе эта служба потребуется, она будет запущена.
Отключено — в этом случае система ни при каких обстоятельствах не имеет права запускать эту службу.
Это важно: если вы не уверены, то не отключайте службу.
Я воздержусь от описания служб — Microsoft и так предоставила по ним обширную документацию в администрировании. Тип запуска, который я укажу, всего лишь рекомендуемый, в каждой конкретной ситуации надо действовать, следуя здравому смыслу.
DNS-клиент (DNS Client) — если ваш компьютер не подключен к Интернету, то можно выставить «Вручную».
NetMeeting Remote Desktop Sharing — лучше всего отключить.
Telnet — если вы хотите, чтобы кто-то, сидя на другой машине, запускал программы на вашей, то оставьте. В противном случае лучше отключить.
Агент политики IPSEC (IPSEC Policy Agent) — данная служба нужна, только если компьютер подключается к домену с Windows 2000. Если нет, «Вручную» — наш выбор.
Диспетчер авто-подключений удаленного доступа (Remote Access Auto Connection Manager) — выставьте «Вручную».
Диспетчер логических дисков (Logical Disk Manager) — рекомендую «Вручную».
Диспетчер очереди печати (Print Spooler) — если родина обделила вас принтером, то эту службу можно смело отключать.
Диспетчер подключений удаленного доступа (Remote Access Connection Manager) — для локальных компьютеров «Вручную», если же вы подключены к сети — оставьте «Авто».
Диспетчер служебных программ (Utility Manager) — если вы не пользуетесь «специальными возможностями», то смело отключайте.
Диспетчер учетных записей безопасности (Security Accounts Manager) — если у вас нет сети, смело ставьте «Вручную».
Журнал событий (Event Log) — если вы не заглядываете в log-файлы работы системы, то отключите.
Защищенное хранилище (Protected Storage) — эта служба хранит пароли к почтовому ящику, к форумам и многому другому. Если компьютер не подключен ни к чему, кроме электросети в 220V, то смело ставьте в ручной режим.
Источник бесперебойного питания (Uninterruptible Power Supply) — если у вас есть UPS (ИБП), то выберите «Авто», иначе — «Отключено».
Маршрутизация и удаленный доступ (Routing & Remote Access) — вам вряд ли понадобится это служба. Если же будут возникать проблемы с работой сети, ее нужно будет включить.
Модуль поддержки смарт-карт (Smart Card Helper) — сомневаюсь, что у кого-то есть подобные устройства, так что выставляйте «Вручную» или вообще отключите.
Обозреватель компьютеров (Computer Browser) — если ваш компьютер не подключен к локальной сети, то эта служба вам не нужна.
Общий доступ к подключению интернета (Internet Connection Sharing) — никому не нужная функция. Даже если через ваш компьютер ваши друзья выходят во всемирную сеть, лучше пользоваться специализированными программами. Например, Coolproxy.
Оповещатель (Alerter) — если ваша машина не имеет доступа к локальной сети, выберите «Отключить».
Планировщик заданий (Task Scheduler) — если вы пользуетесь этим планировщиком, то оставляйте. Если нет — отключите.
Расширения драйвера оснастки управления Windows (Windows Management Instrumentation Driver Extensions) — лучше всего установить «Вручную».
Сервер (Server) — для компьютеров, не имеющих доступа к локальной сети, эту службу следует отключить.
Сервер папки обмена (ClipBook) — для несетевых компьютеров отключите.
Сетевые подключения (Network Connections) — с этой службой творятся какие-то необъяснимые вещи. Даже если выбрать тип запуска «Вручную», она все равно постоянно запущена. Если вы не выходите в Интернет и не подключены к локальной сети, то отключите ее.
Служба RunAs (RunAs Service) — ставьте «Вручную» или вообще отключайте.
Служба индексирования (Indexing Service) — лучше отключить.
Служба поддержки TCP/IP NetBIOS (TCP/IP NetBIOS Helper Service) — если ваша машина не подключена ни ко всемирной, ни к локальной сети, отключите.
Служба сообщений (Messenger) — «Вручную» для компьютеров, подключенных к локальной сети. Для остальных лучше отключить.
Служба удаленного управления реестром (Remote Registry Service) — Здесь без вопросов — в морг. Отключайте и даже не задумывайтесь.
Служба факсов (Fax Service) — если вы не используете свой компьютер для приема или передачи факсимильных сообщений, то отключите эту службу.
Смарт-карты (Smart Card) — я уже упоминал про смарт-карты. Эту службу тоже надо отключить.
Съемные ЗУ (Removable Storage) — если вы не используете съемные носители ZIP, то отключайте эту службу.
Телефония (Telephony) — выставьте «Вручную».
Уведомление о системных событиях (System Event Notification) — для сетевых компьютеров выставляйте «Авто». В ином случае — «Вручную».
Это интересно: кстати, тип запуска служб можно выставить и в реестре; это полезно для восстановления системы после отключения жизненно важной службы. Наберите regedit в Пуск > Выполнить и откройте раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services, там вы увидите подразделы с сокращенными названиями служб. В подразделе службы найдите DWORD параметр «Start». Он может иметь значения 2 — «Авто», 3 — «Вручную», 4 — «Отключено».
Остальные службы лучше не трогать. Кроме служб стандартной поставки лучше всего отключить и все остальные, вдобавок выгрузив программы, запускаемые вместе с Windows (например, ICQ). Естественно, драйвера видеокарты рекомендуется оставить. Больше всего грузят систему антивирусы. Например, служба Касперского без запуска самого приложения занимает около 10 мегабайт оперативной памяти, и выгрузить ее через «Диспетчер задач» (Ctrl+Alt+Delete) нельзя.
Это интересно: если у вашего любимца совсем плохо с оперативной памятью и системным процессором, можно делать чисто игровые старты системы. Напишите msconfig в Пуск > Выполнить. В появившемся окне откройте вкладку «Службы», нажмите на кнопку «Выключить все», а потом включите тот минимум служб, который необходим для запуска игры (разумеется, базовые службы лучше не отключать). Перезагрузите систему и запускайте игру. Пару FPS так можно вытянуть, но для работы опять наберите msconfig и включите все службы, а затем перезагрузитесь.
Диск
Кроме регулярной дефрагментации диска следует проводить еще много других операций. О них мы и поговорим. Например, желательное количество свободного места на системном диске должно быть вдвое больше, чем оперативной памяти.
Восстановление системы
Эта функция придумана злобными капиталистами, дабы узурпировать трудовой и игровой народ! Мало того, что с ее помощью система восстанавливается только «через два раза на третий», и то криво. Да еще в самое неподходящее время она начинает использовать диск, и любая игра (кроме «Тетриса») превращается в пошаговую. Программа товарища Нортона «Symantec Ghost» лучше во всех отношениях.
Спящий режим (Hibernation)
Я почти не использую эту функцию. Система сохраняет содержимое оперативной памяти на диск в файл hiberfil.sys (в корне системного диска) и выключается, а при последующем запуске полностью восстанавливает свое состояние. Одна беда — размер файла hiberfil.sys равен размеру установленной оперативной памяти. Получается, что этот файл зря тратит драгоценное место. Поэтому, если вы не пользуетесь спящим режимом, его можно отключить, сняв галочку в Панели управления (Control Panel) > Настройки энергопитания (Power Options) > Hibernate > Enable hibernation. Таким образом вы освободите в системном разделе место, равное размеру оперативной памяти.
IRQ
Щелкните правой кнопкой мыши по значку «Мой компьютер» на рабочем столе, затем выберите «Свойства». Перейдите в закладку «Оборудование», нажмите на кнопку «Устройства» и дважды щелкните по вашему видеоадаптеру. В закладке «Ресурсы» вы найдете IRQ данного устройства. Запишите этот номер. Теперь нажмите Старт > Выполнить и введите sysedit. Найдите раздел [386enh] в файле System.ini и добавьте в него строку irq[n]=4096, где [n] — номер IRQ, используемого видеокартой, а 4096 — объем памяти в байтах, который вы хотите для него зарезервировать (например, «irq5=4096»). Я рекомендую значение 4096, хотя при желании вы можете поэкспериментировать с другими значениями. Для того чтобы изменения вошли в силу, необходима перезагрузка.
Разгон видеокарты
Это отнюдь не результат неудавшегося разгона видеокарты — это ошибка самого приложения. Для того чтобы увидеть на своем экране то же самое, нужно свернуть и развернуть игру, а потом запустить тест. |
Если у вас есть доступ к интернету, то прежде всего зайдите на сайт производителя чипсета вашей видеокарты (к примеру, www.nvidia.com или www.ati.com) или, если вы пользуетесь видеовходом или выходом, на сайт производителя видеокарты (например, www.asus.com). Иногда установка свежих драйверов дает эффект, соизмеримый с разгоном. Старайтесь не пользоваться драйверами с других сайтов, хотя эти драйвера бывают более новых версий, чем у производителя.
Для начала я должен вас предупредить, что разгон влечет за собой ряд негативных последствий, поэтому сначала дочитайте абзац до конца, а потом решите, будете ли вы разгонять машину. Первая из возможных проблем — риск выхода из строя видеокарты. Но если вы будете соблюдать инструкции, то этот риск сведется к минимуму. Далее, теоретически вы лишаетесь гарантии на видеокарту. Правда, доказать, что происходил разгон, почти невозможно. Еще один минус — уменьшение срока годности. Но представьте, сколько будет стоить ваша карта лет через семь...
Это интересно: прирост производительности при разгоне видеокарты составляет около 20-30%. А теперь загляните в прайс-листы и узнайте, насколько дороже видеокарта, превосходящая вашу на эти самые 20-30%.
Существует множество программ для разгона видеокарты, но я хочу отметить только одну — Riva Tuner. Удобный интерфейс и огромное количество опций просто не оставили мне выбора. Эту программу я и буду описывать. Cкачать ее можно с сайта www.nvworld.ru («весит» она около мегабайта).
Это интересно: видеокарту на базе чипсета NVIDIA можно разогнать без каких-либо программ. Для этого надо в разделе реестра HKLM\Software\NVIDIA Corporation\Global\NVTweak создать параметр CoolBits (типа DWORD) со значением 2. В панели драйверов появится вкладка «Частоты». Для того чтобы открыть эту вкладку, необходимо нажать на пустом месте рабочего стола правую клавишу и выбрать пункт «Свойства». Затем в закладке «Параметры» нажмите кнопку «Дополнительно». В закладке «GeForce *****» выберите пункт «Настройка тактовой частоты». Выберите «Применять при запуске» и «Разгон вручную», прочитайте соглашение и нажмите «Применить». Теперь вы сможете с помощью драйвера изменять частоты чипа и памяти.
Для начала немного теории. Выбрать точно определенную частоту вы, скорее всего, не сможете. Ведь частоты формируются на основе умножения «эталонной» частоты, поступающей от осциллятора (кварца), на множитель с каким-то шагом. Эталонная частота обычно 14.318KHz на старых картах и около 27KHz на новых. Так что из возможных будет выбрана частота, максимально близкая к заказанной.
Теперь назову факторы, которые способствуют разгону. Первый — хорошее охлаждение корпуса и видеокарты. Второй — фирма-производитель видеокарты. Третий — хороший блок питания и материнская карта. Четвертый — производительность остальной системы: если процессор не успевает за вашей видеокартой, ничего хорошего из разгона не выйдет.
Запустите программу Riva Tuner, нажмите на кнопочку с треугольником рядом с описанием вашей видеокарты, выберите «Low level system setting» и поставьте галочку в верхнем квадратике. Если ваша видеокарта GeForce FX и старше, то разгонять придется через драйвера. Для этого надо нажать на аналогичную кнопку после надписи «ForceWare detected», выбрать «System setting» и поставить галочку в верхнем квадратике.
Этот образчик абстракционизма — так называемый «артефакт изображения». Но такие «наглядные» артефакты встречаются довольно редко. |
Рекомендуемая процедура разгона выглядит так. Сначала вы поднимаете на 5 мегагерц скорость видеопроцессора, затем несколько раз запускаете тест. Если в процессе тестирования вы не заметили никаких «артефактов изображения», то можете поднять еще на пять мегагерц. Опять запустите тест. И так до тех пор, пока не появятся дефекты изображения, «синий экран смерти», 2-3-секундный скачок или зависание системы либо — на картах NVIDIA серии FX и старше — резкая потеря производительности. Увидев что-либо из вышеперечисленного, снизьте частоту чипа на 5 и начните опять ее наращивать, но уже с шагом 1-2. Найдя таким образом предел частоты чипа, сделайте то же самое с частотой памяти. Здесь есть один подводный камень — синхронность. То есть не всегда при большом разгоне будет наблюдаться большая производительность. Чтобы настроить вашу видеокарту, возьмите ручку, блокнот и запишите: FPS до разгона, начальные значения частот и FPS, наблюдаемые при каждом шаге разгона памяти.
Это интересно: Forceware (драйвер видеокарт NVIDIA) имеет хорошую систему протоколирования событий, которая может быть включена созданием в реестре опции RmLogonRC со значением 1. В этом случае драйвер запишет все события в журнал системы, так что с помощью «просмотра событий» можно будет увидеть причины. Таким образом вы сможете точно установить, из-за чего произошел тротлинг (защита от переразгона на NVIDIA FX и старше) в каждом конкретном случае. Разумеется, должна быть включена соответствующая служба.
Найдя максимум разгона памяти, сравните результаты FPS тестов. Если при максимальных значениях частот достигается максимальная производительность, то уменьшите частоту чипа так, чтобы она была равна частоте чипа до разгона, умноженной на частоту памяти после разгона и деленной на частоту памяти до разгона. Например, 150 (чип) на 300 (память) — память я разогнал до 400, значит, чип надо поставить (если нет багов) на 200. И поэкспериментируйте с ближними значениями, после чего выберите частоты, соответствующие наибольшей производительности.
Если же на одном из этапов повышения скорости памяти замечен максимум производительности, то следует ее опустить туда, где производительность была максимальна, и «поиграть» с ближайшими значениями. После того, как частоты, дающие максимальную производительность, найдены, нужно просмотреть тест раз шесть и пару часов побегать с ботами. Если при этом ничего подозрительного не замечено (например, дымок или искры из корпуса), то поздравляю — вы успешно разогнали свою видеокарту. Теперь можете купить себе шоколадную медаль и не здороваться с людьми, которые еще ничего в своей жизни не разгоняли.
А теперь серьезно: на дворе зима, и температура в вашей квартире, естественно, ниже, чем летом. Поэтому где-то в июне могут начаться ошибки при разгоне видеокарты. Чтобы их избежать, снизьте сейчас частоты на пару мегагерц. После того, как вы окончательно определитесь с частотами, поставьте галочку на пункте «Apply on Windows Start».
Еще немного улучшить скорость вам поможет опция совместимости с вашей материнской платой. Она находится в «System tweaks» в закладке «Compatibility». Кроме того, можно «покувыркаться» в Low level system tweaks > Overclocking > More.
Counter-Strike Inside
Так называемые «продвинутые» настройки видео. |
В этой главе мы вкратце опишем основные настройки, доступные из обычного меню игры, в которое можно попасть, выбрав Options > Video > Advanced. Все неупомянутые настройки можно смело ставить на максимум — возможно, мы изменим эту характеристику с помощью консольных команд.
Это важно: на компакт-диске ЛКИ находится файл-config, предназначенный для ленивых мира сего. Если вы хотите сходу повысить свой fps, потеряв при этом некоторую долю реалистичности графики, то скопируйте этот файл в директорию \Counter Strike Source\cstrike\cfg. Теперь после запуска игры откройте консоль и пропишите exeс graph. Например, у меня после прохождения повторного теста fps равен 73,08.
Antialiasing mode
В раскрывающемся списке вы можете выбрать уровень сглаживания, который позволяет избавиться от так называемого «эффекта лестниц». Как это работает? Например, разрешение в игре установлено на 800х600. Если установить уровень сглаживания 2х2, то изображение будет представляться в разрешении 1600х1200, а при выводе на экран картинка вновь будет сжиматься до 800х600. В результате существенно улучшается качество картинки, но при этом сильно падает скорость. Естественно, ставить надо по минимуму.
Wait for vertical sync
V-Sync (синхронизация с вертикальной разверткой монитора) — лучше не включать (Wait for V-Sync = Off), так как это привязывает частоту видеокарты к частоте обновления монитора и снижает производительность. Выходит, что, даже если вы можете получить большие FPS, ваша карта будет «ждать» развертку монитора... Побочный эффект, который может возникнуть при этом, — «рваное изображение».
Filtering mode (anisotropic)
Эта опция контролирует способ фильтрации текстур. Вы можете выбрать билинейную (bilinear), трилинейную (trilinear) или анизотропную (anisotropic) фильтрацию. Для лучшего визуального качества следует выбирать анизотропную фильтрацию, однако большинство графических карт при этом сильно потеряют в производительности. В таком случае используйте трилинейную фильтрацию.
Консоль
В этом разделе речь пойдет о тех настройках, которые производятся непосредственно из консоли.
До и после оптимизации с помощью консольных команд. FPS на первом рисунке — 24, на втором — 47. Прирост в два раза. И это только консоль! |
Это важно: некоторые приведенные ниже команды считаются cheat'ами. Если на сервере стоит команда sv_cheats 0, то часть команд просто не будет работать. Поэтому если вы играете дома с ботами, то вверху файла-config обязательно введите sv_cheats 1.
r_lod 0
Команда заставляет модели игроков не менять их качества в зависимости от удаленности от игрока. Если установить в 5, то модель будет выглядеть издалека так же хорошо, как если бы она стояла перед игроком. Ставим 0 — нам ведь важно значение FPS.
mp_decals 0
Декали — это специальные текстуры, которые можно накладывать поверх обычных текстур. Пример декалей — выбоины от пуль, от взрывов гранат, пятна крови — в общем, различного рода следы. Максимально возможное значение для этой команды — 4096. По умолчанию стоит 200, так что думайте сами — жертвовать количеством fps или реалистичностью.
cl_smooth 0
Отключение сглаживания.
cl_phys_props_enable 0
Убирает маленькие интерьерные модели с карты, разгружая тем самым ваш процессор. Всякие листья, бутылки, мусор... Бочки и ящики, естественно, остаются. Огромный прирост FPS!
cl_pushaway_force 0
Убирает отталкивание, если вы, например, врезаетесь в бочку или другой физический объект. Считается за cheat.
fog_enable 0
Выключает дальний случайный туман.
cl_show_bloodsprays 0
Отключить кровь. Считается за cheat, так как отсутствие крови может облегчить жизнь игрокам.
cl_ejectbrass 0
Убирает показ стреляных гильз.
cl_c4dynamiclight 0
Если установить в 1, то мигающий свет С4 станет динамичным. Для нас лишние затраты ресурсов ни к чему.
mat_picmip 1
Команда, как и в предыдущих версиях игры, улучшает качество текстур. Максимальное значение — 999.
r_modellodscale 0.1
Чтобы понизить уровень качества моделей, ставьте 0.1. Значение по умолчанию — 1.
r_WaterDrawReflection 0
Отключает рефракцию воды.
r_mmx 1
Тест fps в Counter-Strike: Source. |
Включает поддержку процессоров MMX.
r_sse 1
Включает поддержку процессоров SSE.
r_sse2 1
Включает поддержку процессоров SSE2.
r_3dnow 1
Включает поддержку технологии 3DNOW (только для AMD).
r_3dsky 0
Убирает марево вокруг 3D объектов.
r_shadows 0
Отключает тени в игре.
cl_allowupload 0
Команда запрещает загрузку файлов на сервер с вашего компьютера. Улучшает пинг.
cl_allowdownload 0
Команда запрещает скачку файлов с сервера на ваш компьютер и, соответственно, тоже улучшает пинг.
Это интересно: если вам небезразлично качество screenshots, которые автоматически создаются при нажатии на клавишу [F5], введите в консоли команду jpeg_quality «100». Это обеспечит максимальное качество получаемой картинки. По умолчанию стоит значение 90.