Team Fortress 2

Team Fortress 2

Not enough ratings
TF2 на процессорах Apple Silicon M1, M2 и др. Оптимизация, настройка и советы.
By dödmanstjärn
   
Award
Favorite
Favorited
Unfavorite
Введение
Данное руководство создано для пользователей, играющих в TF2 на устройствах MacBook, iMac и др. на ARM-процессорах Apple Silicon M-серии (М1, М2 и т.д.)

Проведя множество экспериментов, я готов это написать... Учтите, что у Вас всё может быть иначе, поскольку тестировалось всё на данной модели:

MacBook Air M1 (2020 г.)
  • Процессор: M1 (8 ядер, 4 ядра производительности, 4 ядра эффективности);
  • ОЗУ: 16 ГБ;
  • SSD-накопитель: 512 ГБ;
  • ОС: с macOS 12 Monterey по macOS 14 Sonoma.
Первоначальная настройка
Первым делом, для того, чтобы начать игру вам необходимо любое из доступных средств виртуализации. В момент написания руководства Team Fortress 2 до сих пор не доступна в Steam на macOS, поскольку не существует её 64-битной версии под эту систему.


Для того, чтобы всё же запустить игру, вам потребуется либо виртуальная машина, либо эмулятор. Рассмотрим доступные из них.

Виртуальная машина Parallels Desktop 19
Плюсы:
  • Интуитивно понятный интерфейс;
  • Возможность сразу поставить необходимую ОС;
  • Отличная оптимизация;
  • Практически бесшовная работа между основной macOS и виртуальной машиной;
  • Идентичные комбинации клавиш и для основной системы и для виртуальной машины.
Минусы:
  • Платно;
  • Нельзя эмулировать ОС, написанные под архитектуру x86 (если вы на ARM);

Виртуальная машина VMWare Fusion 13
Плюсы:
  • Интуитивно понятный интерфейс;
  • С 15 мая 2024 года стала бесплатной;
Минусы:
  • Нельзя эмулировать ОС, написанные под архитектуру x86 (если вы на ARM);
  • Посредственная оптимизация на процессорах Apple Silicon;

Виртуальная машина и эмулятор UTM
Плюсы:
  • Бесплатный;
  • Также есть под iOS, iPad OS (через AltStore);
  • Позволяет запускать ОС, написанные под x86 (с помощью встроенного эмулятора QEMU);
Минусы:
  • Это всё таки эмулятор. Хорошей работы ОС и её быстрой работы тут ждать не приходится. Всё может быть крайне медленно.

CrossOver 24
Плюсы:
  • Не так сильно нагружает систему, т.к. это прослойка, в основе которой лежит Wine;
  • Гибко настраиваемая возможность создания бутылок для приложений;
  • Бесшовный переход из приложений и игр, работает, так сказать, прямо в macOS;
Минусы:
  • Платно;
  • Иногда возникают не понятные ошибки. У меня, например, часто вылетали приложения и сама TF2;

Рассмотрев все из предложенных вариантов, я рекомендую вам использовать два из них: либо Parallels Desktop 19, либо Crossover. Я же, в свою очередь, буду пользоваться первым, поскольку мне нужна не только игра, но и порой сама Windows.
Система
Как я и сказал выше, я пользуюсь виртуальной машиной Parallels Desktop 19. И у нас есть выбор - какую систему использовать на ней. Ею может быть либо Windows 10, либо Windows 11, поскольку только эти издания системы от Microsoft могут быть написаны под ARM.

Но, на самом деле, вопрос скорее риторический. Выпуск новых версий Windows 10 под ARM уже давно остановлен, поскольку она была исключительно продуктом для тестировщиков и разработчиков. Настоятельно не рекомендую вам её использовать(как бы я и не любил Windows 10, тут, увы, придётся страдать с Windows 11), поскольку там могут вылезти неизвестные ошибки. Но, если вы хотите использовать именно Windows 10, то скачать подходящий образ можно здесь[archive.org] или здесь[archive.org].

Скачать образ Windows 11 ARM можно напрямую из виртуальной машины, либо найти в Интернете, с её поиском не должно возникнуть никаких трудностей.

Также, существует облегчённая сборка Windows 11 ARM - Tiny 11 (вырезано большинство "очень полезных" сервисов Microsoft и их партнёров). Её достаточно сложно найти в Интернете, но я смог это сделать. Скачать её можно здесь.[drive.google.com] Кстати, именно на ней я и сижу. Но, на самом деле, производительность на ней и на обычной Windows 11 в играх практически не отличается, мне просто не нравится стандартная захламлённая сборка этой системы :ˆ)
Настройка виртуальной машины
Это один из самых главных разделов этого руководства, поскольку настройки самой машины крайне сильно повлияют на общую производительность системы.

Итак, думаю о том, как установить систему на неё не стоит говорить. А если всё так вы не знаете, как это сделать, то рекомендую вам это видео, не вижу смысла на этом останавливаться:

Итак, система установлена. Далее необходимо настроить виртуальную машину.

Первым делом настоятельно рекомендую вам ОТКЛЮЧИТЬ ГИПЕРВИЗОР. Он пожирает очень много ресурсов системы. Также, в этом же пункте, настройте количество ядер и ОЗУ, отведённых на виртуальную машину. Рекомендую использовать 50% от каждого параметра вашего устройства (например, если у вас 16 ГБ ОЗУ, то отводить под виртуальную машину нужно 8 ГБ. Сама виртуальная машина говорит, что тот остаток, что не используется ей самой нужен под графику и под прочие нужны, так что выделять абсолютно всю память - плохая затея):


Настройте ваш экран. Вы можете либо растянуть его (пункт "Scaled") (плохое разрешение, лучшая производительность), либо использовать лучшее разрешение для Retina-дисплея (пункт "Best for Retina") (отличное разрешение, может пострадать производительность)

Настройка TF2
Итак, вот мы и перешли к самой игре. Скачав её и запустив безо всяких настроек игра будет выдавать около 30-40 FPS в простое. На загруженных же локациях и/или с большим количеством игроков эта цифра будет стремится к очень плохому показателю. Нас такое не устраивает.

Следующие мной настройки будут разделены на три части: лучшая графика, но минимальный FPS, средняя графика и средний FPS и минимальная графика, но отличная производительность.

Хорошая графика, относительно хороший FPS (60-70)
Настройки:
  • Параметры запуска (см. описание в конце раздела):
    -novid -nojoy -nosteamcontroller -nohltv -high -particles 1 -precachefontchars -threads 4
  • Разрешение экрана: 1920x1080;
  • Настройка игры: по вашему вкусу, т.к. влияет не очень сильно. Но рекомендованы мною настройки графики приложены ниже (они одинаковы для всех моих шаблонов).
Возможные изъяны:
  • Сильная потеря кадров в воде (например, на карте 2fort);
  • При большом количестве игроков всё же может подтормаживать.

Средняя графика, хороший FPS (80-100)
Настройки:
  • Параметры запуска (см. описание в конце раздела):
    -dxlevel 90 -novid -nojoy -nosteamcontroller -nohltv -high -particles 1 -precachefontchars -threads 4 -r_emulate_gl
  • Разрешение экрана: 1280x800;
  • Настройка игры: по вашему вкусу, т.к. влияет не очень сильно. Но рекомендованы мною настройки графики приложены ниже (они одинаковы для всех моих шаблонов).
Возможные изъяны:
  • Сильная потеря кадров в воде (например, на карте 2fort);
  • Отсутствие некоторых текстур и/или их плохое качество в игре.

МАКСИМАЛЬНЫЙ ДАУНГРЕЙД, отличный FPS (100-140)
Настройки:
  • Параметры запуска (см. описание в конце раздела):
    -dxlevel 81 -novid -nojoy -nosteamcontroller -nohltv -high -particles 1 -precachefontchars -threads 4 -r_emulate_gl
  • Разрешение экрана: 1152x720;
  • Настройка игры: по вашему вкусу, т.к. влияет не очень сильно. Но рекомендованы мною настройки графики приложены ниже (они одинаковы для всех моих шаблонов).
Возможные изъяны:
  • Отсутствие таких текстур, как: боевые краски, блеск особо опасного и профессионального убийцы на оружии, некорректное отображение некоторых частей интерфейса;
  • Из-за использования старого DirectX 8 - долгая загрузка игры, если та была свёрнута. Это исправимо, см. исправление в сноске с описанием параметров запуска.

Дополнительная информация

Сноска / Описание параметров запуска
Параметр запуска
Описание
Влияние на производительность (от 1 до 5, где 1 - крайне слабо, 5 - крайне сильно)
-novid
Отключает начальную заставку VALVe при запуске игры, тем самым выгружая её из оперативной памяти.
1
-nojoy
Отключает возможность подключения геймпада, освобождает оперативную память от этой службы.
1
-nosteamcontroller
Отключает возможность службу, связанную с поддержкой геймпада от VALVe - Steam Controller, тем самым освобождая оперативную память.
1
-nohltv
Отключает службы HLTV. Освобождает оперативную память, имеет влияние на сеть, пинг должен стать меньше.
1.5
-high
Запуск игры в повышенном приоритете над стандартными службами ОС WIndows.
2
-particles 1
Ограничение количества частиц до 512 ед. на карту.
2
-precachefontchars
Предварительное кэширование системных шрифтов, символов и т.д. Оптимизирует потребление оперативной памяти.
2
-r_emulate_gl
Говорит игре, что в качестве движка для рендера необходимо использовать OpenGL. Незначительно повышает FPS, но может помочь при внезапных вылетах, если таковые встречаются.
2
-threads <n>
Где <n> - ваше значение. Указывает, сколько игре выделено ядер. Рекомендуется ставить не ниже, чем 2. Узнать доступное количество ядер можно в настройка виртуальной машины или в диспетчере задача самой Windows. Значительно влияет на нагрузку ЦП. В моём варианте поставлено 4, поскольку именно столько и выделено под мою виртуальную машину, но если вы обладаете устройством с процессором с большим количеством ядер (напр. М1 Pro, M2..) вы можете увеличить это значение.
3
-dxlevel 90
Смена DirectX на версию DX 9.0. Значительно влияет на FPS, потребление оперативной памяти и нагрузка на ЦП, но ухудшает графику в игре (незначительно, могут пропасть некоторые текстуры).
4
-dxlevel 81
Смена DirectX на версию DX 8.0. Очень сильно влияет на производительность и на графику, очень сильно повышает FPS и снижает потребление оперативной памяти. Из минусов - отсутствие боевых красок, блесков особо опасного и профессионального убийцы и достаточно упрощённые текстуры. Чтобы исправить медленную загрузку игры, если та была свёрнута, необходимо запустить игру с этим параметром запуска, свернуть её, войти в настройки параметров запуска и убрать её. После этого - завершить процесс TF2 через диспетчер задач. После этого игра будет разворачиваться и сворачиваться быстро.
5

Сноска / Рекомендованные настройки графики
Дополнительные настройка TF2: Модификации и конфигурация
Если игра всё же до сих пор не отвечает вашим требованиям даже с минимальными настройками графики, то можете попробовать иные улучшения.

Модификации:
  • No explosion smoke, No muzzle flash. Этот скрипт отключает эффекты взрывов, пыли, вспышки. Хорошо оптимизирует игру, прибавляет FPS. Скачать.[drive.google.com]
  • Устанавливается по данному пути:
    ../steamapps/common/Team Fortress 2/tf/custom
  • No hats mod. Отключает абсолютно все шапки, аксессуары и эффекты необычного типа в игре. Даёт очень хорошую прибавку к FPS. Скачать.[github.com]
  • Устанавливается по данному пути:
    ../steamapps/common/Team Fortress 2/tf/custom

Конфигурация:
  • Редактор конфигурации игры доступен здесь.[comfig.app] Вы можете детально настроить то, что вам нужно: отключение каких-либо частиц, текстур и т.д.
Заключение
В заключении могу сказать, что это исключительно моё видение улучшения игры. Экспериментируйте и пробуйте, делитесь в комментариях своими советами. Спасибо за прочтение.
1 Comments
Кирпич Jun 21, 2024 @ 3:04am 
Я играю через кроссовер