Minecraft fsg что это

Обновлено: 05.07.2024

Итак, Minecraft RTX вроде бы как официально вышел из беты почти 2 месяца назад. Но у пользователей до сих пор возникают проблемы с тем, чтобы активировать эту технологию NVIDIA в данной игре.

При этом сама Microsoft ничего не делает для того, чтобы владельцы версии игры из Windows Store могли просто зайти в игру, нажать пару галок и увидеть заветную трассировку на своём экране. Путь к графону оказался гораздо более тернист, чем хотелось бы

Что ж, придется обмазываться сторонними решениями. Зря что ли мы RTX карты покупали по тройной цене у перекупов, не так ли? Да и сам бесполезный Bedrock Edition многими покупался исключительно ради этой фичи.

Начнем с того, что без танцев с бубнами RTX доступен только на предзатовленных корпорацией Дженсена Хуанга специальных демонстрационных картах.

Раньше они были доступны в демо-версии игры, которая активировалась через Xbox Insider. Сейчас как обстоят дела с доступом на эти карты я не знаю. И знать уже не хочу.

Вне этих демок RTX включить можно только если поставить соответствующий resource pack. Этим мы и займемся.

Итак, на данный момент у нас есть как минимум два более-менее полнофункциональных ресурсных пака с поддержкой RTX.

Первый качается с сайта NVIDIA. О втором чуть позже. Первая ссылка - страница с гайдом. Вторая ссылка - ссылка на само скачивание пака. Да уж, сделать большую кнопку DOWNLOAD для удобства пользователей они не могли - ссылка на скачивание запрятана в самом тексте.

Learn how to create new PBR textures for Minecraft with RTX that work with its immersive…

И вот примерно так он выглядит.

Некоторые блоки из последнего обновления принципиально отсутствуют

Как вы можете понять по скриншотам, эта версия ресурсного пака почему-то очень сильно отличается от классического майнкрафтовского, да и от текстур в демо-сценах отличается. Что мешало NVIDIA сделать нормальные классические текстуры - совершенно непонятно.

Так же по ссылкам ниже можно скачать два ресурсных пака от нвидии с HD-текстурами. Однако в этих паках нет emessive составляющей у материалов. Проще говоря, блоки лавы и редстоуна в этих паках не светятся. А еще нет нормал маппинга и бампа.

Выглядит оно как-то так.

Нахонец, мы переходим ко второму, нормальному варианту - Kelly's RTX.

Кстати, хз в чём дело, но на данный момент мой гуглохром жалуется на вредоносность сайта. Так что посещаете на свой страх и риск. Первая ссылка - на саму тему с паками. Вторая - на скачивание файла. Третья - ссылка на скачивание пака с моего гуглодиска. Версия, которую я скачивал задолго до появления предъяв гуглохрома к этому сайту.

Kelly’s Minecraft Vanilla RTX Conversion Pack (Big Update! Gorgeous Godrays)

Данный пак делался с прицелом на ванильные, классические текстуры майнкрафта и потому смотрится, пожалуй, лучше всех остальных.

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

Но есть ряд важных аспектов. Ими мы сейчас как раз и займемся.

Начнём с того, как в игре работает освещение с точки зрения геймплея и функциональности. Вот как выглядит наша тестовая сцена в оригинале, без RTX и прочих шейдеров (в потолке дырка, без неё непроглядная тьма)

А так с RTX. Как мы видим, никакой свет не попадает внутрь шахты. Результат - темно как в жопе у коренного жителя африканского континента.

А вот немного модифицированный вариант.

Как мы это сделали? Сейчас мы займемся своего рода моддингом. Идём на нашем компе по следующему адресу:

C:\Users\"имя вашей учетной записи на вашем компе" \AppData\Local\Packages\Microsoft.MinecraftUWP_"куча цифр и буков"\LocalState\games\com.mojang\resource_packs\Kelly'sRTX\textures\blocks

Далее нам нужна текстура камня. И не простая текстура, а MER-текстура - stone_mer. MER означает "Metallness-Emissive-Roughness" - классические PBR параметры, отвечающие за зеркальность, свечение и матовость материала соответственно.

Красный цвет в них отвечает за metallness - зеркальность. Зеленый отвечает за emissive - свечение. Синий отвечает за roughness - матовость. Нам нужно к нашей синей текстуре нашего матового камня добавить немного зеленого цвета.

Для этого расчехляем наш купленный на торрентах за кровные 0 рублей фотошоп. Если вы не являетесь поклонником продукции Adobe, то можете заюзать GIMP или Krita.

По умолчанию параметр G: (зеленый цвет) стоит в значении 0. Я выставил значение 2 и просто залил полученным цветом всё изображение.

Благодаря этому текстура нашего камня по умолчанию слегка светится и вы даже в самой анальной темноте не сможете потеряться.

В принципе можно выставить значение и свыше 2, но желательно не больше 5.

Подразумевается, что эту же операцию нужно провернуть со всеми текстурами, которые могут встретиться под землей - гранит, андезит, гравий, все руды и так далее. Однако мне лень тратить время на ручной перебор сотен текстурок. Если кто-то умеет в скриптинг в среде фотошопа, то он бы в два счёта смог сделать эту работу. Лично я не знаю и не умею.

А ещё было бы здорово, если бы Microsoft или NVIDIA сделали некий глобальный параметр, который всем материалам добавлял чутка emissive. Однако эта технология явно не столько для удовольствия людей делалась, сколько ради маркетинга. И об удовлетворении подобных прихотей они наверняка даже не подумали ни разу.

Вариант от NVIDIA имеет нормал маппинг. Это такая фиолетовая текстурка, которая как бэ поворачивает пиксели и создаёт эффект игры света на поверхности, тем самым имитируя объем. И потому этот пак может давать более интересные результаты с технической точки зрения. Однако его нужно перерисовать под ваниллу чуть менее, чем полностью. Этим я даже не пытался заниматься.

Вариант от Kelly по дефолту не поддерживает нормал маппинг. Вместо этого он работает через бамп маппинг - черно-белую текстурку. Это чуть более примитивная технология, которая как бэ приподнимает пиксели и тем самым создаёт объем. Очень грубый объем. На практике оно выглядит как кафельная плитка.

Данный эффект можно убрать или снизить, обработав текстуры с припиской normal. Тут для примера я взял текстуру песка (sand_normal) и залил ее черным цветом. И получилось это.

Заключение

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

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

Minecraft fsg что это

Bahia, Brazil




SS = Set Seed (Beating the game as fast as possible; glitches are allowed)
SSG = Set Seed Glitchless (Beating the game as fast as possible; glitches are not allowed)
RS = Random Seed (Beating the game as fast as possible; glitches are allowed)
RSG = Random Seed Glitchless (Beating the game as fast as possible; glitches are not allowed)

Minecraft: повысить стабильность игры и FPS легко

Знаете, я люблю Майнкрафт. Честно. Я очень много времени отыграл на различных сборках и серверах и из-за этого познания в этой игре у меня довольно-таки обширные. И само собой, играть в хорошую игру хочется с хорошей производительностью, особенно когда твой монитор с частотой 144 гц (повыпендривался, да) - хочется раскрыть "потанцевал" плавности и стабильности. Но вот незадача - Майнкрафт, особенно с большим количеством модов, иногда дает недостаточную производительность и FPS может рухнуть, опять же, если вы играете с модами в мире с большим количеством механизмов. Я с этим сталкивался всегда - каждое мое похождение (не прохождение, а именно похождение) по очередной сборке через некоторое время становилось невероятно медленным и печальным как раз-таки из-за этого. Это Мрачный Геймер и я расскажу вам как же сделать Майнкрафт максимально стабильным и производительным.

1. Использование специальных модификаций

Моды на Майнкрафт не всегда добавляют что-то новое, они еще и могут повышать производительность игры. Для разных версий игры существуют разные модификации направленные на это. Так, в 1.7.10 был Fastcraft , а в более новых появился Better FPS . Оба направлены на повышение производительности путем более грамотного распределения и предраспределения (да, это разные вещи) памяти, переработки алгоритмов игры и так далее. Также небезызвестный Optifine , который существует на все версии игрыи работает по большей части с рендерингом, а не с игровыми тиками. Ну и для максимальной оптимизации нового освещения, которое появилось в игре, кажется, с версии 1.12.2 (или 1.10.2, время летит быстро) можно использовать мод Phosphor - c этим модом у игры будет уходить гораздо меньше времени на на просчет освещения в чанках.

2. Аргументы Java

Майнкрафт написан и работает на Java, что уже само по себе невероятно замедляет его работу и делает нестабильным. Вдаваться в подробности почему я не буду, а то это уже будет сравнение языков программирования. Но есть костыли с помощью которых можно заставить виртуальную машину работать оптимальнее - использовать аргументы запуска. Работает это на всех версиях Майнкрафта. Аргументы нужно указывать в лаунчере игры:

-Xincgc - активирует сборщик мусора, который время-от-времени будет выгружать неиспользуемую оперативную память. Тип сборщика выбирается в зависимости от версии Java.
-server - активирует серверную версию Java, в которой по умолчанию включена функция поддержки экспериментальных флагов, а также ускоряет компиляцию классов, что даёт прирост в производительности, но увеличивает время запуска (только 64-битные системы)
-Xmx5G - количество максимальной выделяемой памяти под сервер
-Xms512M - количество минимально выделяемой памяти под сервер
-Xmn128M - количество выделяемой памяти под недолгоживущие объекты (которые не были выгружены сборщиком мусора)
-XX:MaxPermSize=128M - количество памяти под PermGen Space (не работает на Java 8)
-XX:SharedReadOnlySize=30M - количество памяти под read-only место в PermGen

Все здесь писать не буду, а то места занимает много, источник информации я указал

Какие аргументы использую я:

-XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M

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

3. Использовать Java Development Kit вместо Java Runtime Environment

Если вы не знали, то есть разные версии Явы. Обычная для пользователей называется Java Runtime Environment (JRE) . Ее вы и загружаете с сайта Oracle когда вас просят скачать Яву для Майнкрафта. Но в этих ваших интернетах пишут что Майнкрафт запущенный на Java Development Kit (JDK) работает лучше, и по своим личным наблюдениям, когда я перешел на эту версию Явы игра стала работать стабильнее и фпс вырос на 5-10% в среднем. Просто так скачать ее не получится, придется предварительно зарегистрироваться на сайте Oracle. Но кк скачать ее я думаю, вы справитесь. В некоторых случаях необходимо будет указать путь к этой версии Явы в лаунчере игры, или удалить все версии Java кроме этой. И всегда используйте самую свежую версию Java.

4. Использовать выделенный сервер

Майнкрафт работает лучше если серверная и клиентская части запускаются отдельно друг от друга. Желательно еще и разные машины использовать для этого, но не все люди могут позволить себе такое удовольствие, так как для этого нужно два компьютера, но можно запустить сервер и на том же компьютере где вы играете, просто нужно будет больше оперативной памяти, но все же стабильность игры повысится, особенно при использовании кастомных серверных ядер по типу Spigot - это доработанная версия серверного ядра с дополнительными оптимизациями. А если вы и так играете на сервере, то вам об этом беспокоиться не нужно.

5. Понижение настроек графики и дальности прорисовки

Об этом пишу в последнюю очередь, ибо это довольно-таки очевидная вещь. Банальное понижение настроек графики и дальности прорисовки снижает нагрузку на компьютер и повышает FPS.

6. Играть в новые версии игры

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

Заключение

В заключение хочу сказать что те пункты которые стоят вначале работают лучше последних двух по очевидным причинам. Я не писал о том что можно выделить больше памяти игре так как это очевидно. Еще очевиднее только купить новый компьютер, хотя вряд ли существует такой комп который вытянет карту GT New Horizons после года-двух игры на ней без просадок FPS.

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

А еще вы можете написать в комментариях о чем бы вам хотелось почитать в следующий раз - я учитываю адекватные пожелания читателей.

На этом все, это был Мрачный Геймер. и помните что конструктивная критика делает любой контент лучше, и

Оптимизация сервера Minecraft


В нашем блоге мы уже рассказывали, как создать свой сервер Minecraft, однако с тех пор прошло 5 лет и многое поменялось. Делимся с вами актуальными способами создания и оптимизации серверной части столь популярной игры.

За свою 9-летнюю историю (если считать от даты релиза) Minecraft заработал потрясающее количество поклонников и хейтеров как среди обычных игроков, так и среди гиков. Простая концепция мира из кубиков превратилась из обычного развлечения в универсальную среду для общения и создания различных объектов из реального мира.

Помимо строительства, в игре есть возможность создавать логические схемы, которые позволяют реализовывать полноценные алгоритмы внутри Minecraft. На YouTube полно весьма впечатляющих роликов, где люди, приложив огромное количество сил и потратив множество времени, создали копию того или иного электронного устройства или построили детальную копию существующих и вымышленных архитектурных сооружений. Все ограничивается лишь фантазией геймера и возможностями игровой вселенной.

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

Проблемы и решения

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

Что касается вопроса об объеме оперативной памяти, тут следует исходить из следующих показателей:

  • планируемое количество игроков;
  • планируемое количество миров на сервере;
  • размер каждого мира.

Для запуска серверной части рекомендуем воспользоваться флагами, указанными в статье Tuning the JVM – G1GC Garbage Collector Flags for Minecraft. Эта «черная магия» позволяет серверу грамотно настроить «сборщик мусора» и оптимизирует использование оперативной памяти. Не стоит выделять памяти больше, чем реально потребляет сервер при пиковом наплыве игроков.

Генерация карты блоков

“Вы действительно считаете, что Луна существует, только когда вы на неё смотрите?” (Альберт Эйнштейн)

Абсолютно новый сервер. Как только игрок первый раз успешно подключается, игровой персонаж появляется на общей точке сбора (спаун). Это единственное место, где игровой мир предварительно генерируется сервером. В этот же момент клиентская часть смотрит в настройки, и ключевым параметром является дальность прорисовки. Измеряется она в чанках (область карты 16x16 и высотой в 256 блоков) Сколько чанков там указано, именно столько и будет запрошено у сервера.

На сервере хранится глобальная карта мира, и если в ней еще нет сгенерированных блоков в точке появления игрового персонажа, то сервер их динамически генерирует и сохраняет у себя. Мало того, что это требует больших вычислительных ресурсов, так еще и постоянно увеличивает размер карты мира. На одном из старейших анархических серверов 2b2t (2builders2tools) размер карты уже превысил 8 Tb, а граница мира проходит на отметке в 30 млн блоков. С этим сервером связаны тысячи историй, и он заслуживает отдельной статьи серии статей.

Генерация мира вокруг одного игрока — не проблема. Генерация мира вокруг сотни игроков вызовет незначительные тормоза сервера на протяжении короткого времени, после чего нагрузка снизится. Генерация мира на дальность прорисовки клиента вокруг тысячи игроков уже способна «уронить» сервер и повыбрасывать с него всех клиентов по таймауту.

В серверном ПО имеется такое значение, как TPS (Ticks per Server — тактов в секунду). Штатно 1 такт равен 50 мс. (1 секунда реального мира равна 20 тактам игрового мира). Если обработка одного такта вырастет до 60 секунд — серверное приложение будет закрыто, выкинув всех игроков.

Выход — ограничить мир определенными координатами и выполнить предварительную генерацию блоков. Тем самым мы снимаем необходимость динамической генерации в процессе игры, и серверу будет достаточно прочитать уже существующую карту. Оба вопроса решаются одним-единственным плагином WorldBorder.

Проще всего задать границу мира в виде окружности относительно точки спауна (хотя можно ее сделать любой формы) одной командой:


Если игровой персонаж попытается пересечь границу, то будет отброшен на несколько блоков назад. Если это проделать несколько раз за ограниченное время, то нарушитель будет принудительно телепортирован на точку спауна. Предварительная генерация мира выполняется еще проще, командой:


Поскольку данное действие потенциально может затронуть игроков, находящихся на сервере, не забудьте подтвердить выполнение:


В общей сложности на то, чтобы сгенерировать мир радиусом в 5000 блоков (

40 млрд блоков) ушло примерно 2 часа на процессоре Intel® Xeon® Gold 6240. Поэтому, если хотите запустить прегенерацию большей карты, учитывайте, что этот процесс займет приличное количество времени, а TPS сервера будет серьезно снижено. Кроме того, помните, что даже радиус в 5000 блоков потребует примерно 2 Гб места на дисковом накопителе.

Несмотря на то, что крайняя версия плагина была разработана для Minecraft версии 1.14, опытным путем выяснено, что она прекрасно работает и на последующих версиях. Полный список команд с пояснениями доступен на форуме плагина.

Проблемные блоки

Разновидностей блоков в Minecraft великое множество. Однако мы бы хотели остановить внимание читателей на таком блоке, как TNT. Как следует из названия, этот блок представляет собой взрывчатку (примечание редакции — это игровой предмет виртуального мира и ничего с настоящими ВВ этот предмет не имеет). Его особенность такова, что в момент активации на него начинает действовать сила гравитации. Это заставляет сервер обсчитать все координаты, если в этот момент блок начинает падать.

Если блоков TNT несколько, то детонация одного блока вызывает детонацию и включение гравитации у соседних блоков, разбрасывая их во все стороны. Вся эта красивая механика на стороне сервера выглядит как множество операций по подсчету траектории каждого из блоков, а также взаимодействия с соседними блоками. Задача крайне ресурсоемкая, что легко может проверить каждый. Сгенерируйте и подорвите куб из блоков TNT, размером хотя бы 30x30x30. И если вы думали, что у вас хороший мощный игровой компьютер, то сильно заблуждались ;)


Подобный «эксперимент» на сервере с Intel® Xeon® Gold 6240 привел к серьезной «просадке» TPS и 80% нагрузке на CPU в течение всего времени детонации блоков. А следовательно, если кто-либо из игроков сможет проделать подобное, то проблема с производительностью затронет всех находящихся на сервере игроков.

Еще более жесткий вариант — Кристаллы Края. Если TNT все же взрывается последовательно, то Кристаллы Края детонируют все одновременно, что в теории может вообще остановить работу серверного приложения.

Избежать этого сценария можно, только полностью запретив использование данных блоков в игровом мире. Например, с помощью плагина WorldGuard. Обратите внимание, что сам по себе этот плагин не работает без другого плагина WorldEdit. Так что устанавливаете вначале WorldEdit, а затем WorldGuard.

Виды серверов

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

Vanilla

Компания Mojang Studios распространяет серверную часть игры в виде Java-приложения бесплатно на официальном сайте. Это позволяет создать свой собственный выделенный сервер и персональный мир, сделав его доступным для подключения из любой точки планеты. Для тех, кто делает это впервые, есть отличный туториал, доступный в соответствующей игровой Wiki.

У этого подхода есть один серьезный недостаток, а именно — отсутствие возможностей «из коробки» подключать плагины, расширяющие функционал сервера и позволяющие не только автоматизировать многие процессы, но и оптимизировать производительность. Кроме того, у официального сервера достаточно большое потребление оперативной памяти на каждого подключенного игрока.

Bukkit

Созданное энтузиастами на базе Vanilla-версии серверное приложение Bukkit значительно расширяло возможности игры за счет поддержки плагинов и модов (модификаций). Оно позволило не только добавлять в игровой процесс новые блоки, но и выполнять различные манипуляции, недоступные ванильному ПО. Что интересно, памяти это приложение требовало значительно меньше.

Установить Bukkit не составляет особого труда, соответствующая инструкция есть на ресурсе GamePedia. Но это не имеет смысла, так как с 2014 года команда Bukkit распалась, разработчики проекта стали сотрудниками Mojang Studios, а репозиторий заброшен. Таким образом, Bukkit фактически мертв, и имеет смысл обратить внимание на два следующих проекта.

SpigotMC

Для облегчения жизни разработчиков плагинов была необходимость в API для взаимодействия с игровым миром. Именно эту задачу и решили создатели Spigot, взяв за основу ядро Bukkit и переработав его для достижения лучшей надежности и производительности. Тем не менее, Git-репозиторий проекта был заблокирован в связи с Законом об авторском праве в цифровую эпоху (DMCA), и скачать оттуда исходники невозможно.

На текущий момент SpigotMC активно развивается и используется. Он поддерживает все плагины, созданные под Bukkit, однако с ним обратно не совместим. Чтобы обойти запрет DMCA Takedown, был придуман элегантный способ под названием BuildTools. Этот инструмент избавляет от необходимости дистрибуции скомпилированного приложения и позволяет пользователям выполнить компиляцию Spigot, CraftBukkit и Bukkit из исходного кода. Все это делает запрет DMCA бесполезным.

PaperMC

Казалось бы, все круто, и Spigot стал прекрасным вариантом. Но некоторым энтузиастам этого показалось мало, и они запилили свой собственный форк Spigot «на стероидах». На странице проекта ключевым достоинством указано, что “It's stupid fast”. Развитое коммьюнити позволяет оперативно решать возникающие вопросы, а расширенное API — делать интересные плагины. Запустить PaperMC можно одной простой командой, приведенной в документации.

С совместимостью у PaperMC все прекрасно, так что написанные плагины под SpigotMC легко заработают и на PaperMC, но без официальной поддержки. Обратная совместимость со SpigotMC также присутствует. Теперь, когда мы перечислили различные варианты создания сервера, перейдем к тем проблемам производительности, которые могут возникать.

Читайте также: