Как сделать рендер карты майнкрафт
Привет, это Джакобо. Делать скрины в Майнкрафте сложно. Не в том плане, что нужно нажать на F2 и залезть в директорию игры, а в том, что нужно выставить прорисовку на как можно более дальнюю, если объекты на большом расстоянии и не вползают в 10,5 чанка, а это на слабых компах трудно, если и невозможно вовсе. Также, делая скрин, вы все равно не сможете показать всю карту разом, не только из-за размеров, но из-за того, что маленькие объекты не видны за большими. Продолжать можно, но думаю, вы поняли.
В спасение приходит прога Chunky.
Теперь, когда прога у вас под рукой, начинаю свой рассказ. Начнем с самого начала. При запуске у вас открывается Chunky Launcher. Здесь ничего не надо делать, можете разве что объем памяти увеличить. Жмете Launch. Если вы правильно нажали на кнопку Launch (Это делается ЛКМ кстати)))0), то запускается сама Chunky. И вы попадаете в прекрасный мир с множеством возможностей, которых у вас не было ранее.
При запуске, как правило, автоматически открывается та карта, на которой вы были в последний раз.
Рассмотрим самое главное и то, в чем я хотя бы немного разбираюсь. По порядку.
Немного лайфхаков:
Как сделать рендер карты майнкрафт
Опрос
Чего больше добавлять на сайте?
Chunky 1.1.13d – рендер карт в Minecraft
Как известно, для игры Minecraft разработано большое количество разнообразных программных продуктов, каждый из которых имеет в своем функционале полезные инструменты. Это и создание различных скинов, утилиты для просмотра карт, редактирование уже готовых локаций, разработка собственных модов и многое другое. Сегодня мы вам расскажем про еще один продукт, который сочетает в себе большое количество разнообразных функций. Основная, это рендер карт. То есть, вы можете открыть определенную локацию, сделать скриншот и отредактировать его так, как в Photoshop.
Но и это еще не все. Программа Chunky minecraft позволяет просматривать карты. Допустим, вы загружаете или указываете путь к сохранению. Далее просто используете параметры рендера картинки и сохраняете ее. При этом вы можете использовать функции встроенного зума, добавить текстуры, выбрать нижний или верхний мир, выбрать определенные координаты локации и многое другое. На самом деле эта утилита очень полезная. Лично я ее использую больше для создания красивых макетов карты, чем для рендера. К сожалению, редактирование занимает довольно таки продолжительное время, поэтому использую в этих целях крайне редко, но вам все же советую.
У нас на сайте практически в каждом материале, который связан с картами, выкладывается скрин, в котором представлен полный макет определенной локации. Для этого используется данная утилита. Если говорить конкретно о рендере, то сразу вам скажу, что его возможности просто безграничны. Видели когда-нибудь в интернете картинки с красивыми постройками? Допустим, где с высоты птичьего полета виден весь замок, и прилегающая к нему территория. При этом нет никаких проблем с прогрузкой чанков. Это также было реализовано при помощи этого продукта.
В целом, программа Chunky позволяет настраивать конечный результат так, как вы хотите. Например, вы можете добавить собственные текстуры облаков или выбрать картинку в интернете. Будет выглядеть очень красиво. Дополнительно можно настраивать позиции камеры, выбирать качество изображения, делать многочисленные скриншоты в процессе рендера, добавлять свои текстуры, настраивать угол наклона и захода солнца, отблески, ветер, туман и многое другое. В общем, это универсальный продукт, который предназначен именно для игры Minecraft. Если вы хотите удивить друзей, да и сами научиться работать с изображениями, то вам обязательно нужно использовать эту утилиту.
Скачать плагин BlueMap — Инструмент для просмотра карт в 3D с видом от первого лица в браузере 
Описание плагина BlueMap:
BlueMap — это инструмент, который генерирует 3D-карты ваших миров Minecraft и отображает их в вашем браузере.
Вы можете сделать вид от первого лица и перемещаться по миру практически как игрок.
Его действительно легко настроить — почти по принципу plug-and-play — если вы используете встроенный веб-сервер (необязательно).
Он автоматически обновляет вашу карту, как только что-то меняется в вашем мире, а также рендеринг вновь созданного ландшафта и управление задачами рендеринга.
Некоторые функции и некоторые блоки все еще отсутствуют. В частности, некоторые объекты плитки не будут отображаться правильно / вообще. См. Ниже список того, что планируется для будущих выпусков.
И так, начнём настройку BlueMap:
Для запуска bluemap вам потребуется:
Установка на сервера Spigot и Paper
Если у вас есть spigot либо paper сервер, вы можете использовать bluemap в качестве плагина на своем сервере. Затем плагин отображает и активно обновляет вашу карту, когда что-то меняется. Задачи рендеринга приостанавливаются и возобновляются, если сервер выключается / перезагружается.
Переместите загруженный jar файл в папку плагинов (plugins) вашего сервера и перезапустите сервер.
BlueMap теперь сгенерирует файлы конфигурации здесь ./plugins/BlueMap/,откройте эти конфигурации с помощью вашего любимого редактора и прочтите главу Конфигурация, чтобы узнать, как настроить bluemap.
После того, как вы отредактировали конфиги, используйте команду /bluemap reload на вашем сервере или перезапустите сервер.
Теперь BlueMap начинает отображать ваши карты. Вы можете перейти по адресу http: // : / для просмотра карт.
Конфигурация
Общее положение:
Если у вас нет файлов конфигурации, bluemap генерирует для вас примеры конфигураций при запуске. В этих сгенерированных файлах конфигурации над каждым полем есть комментарий с указанием того, что оно делает, и значением по умолчанию (если оно есть).
Основная конфигурация: core.conf
Этот файл конфигурации содержит основные настройки, которые необходимы для основных функций, если BlueMap.
В поле accept-download по умолчанию установлено значение false, но вам нужно установить его в значение true, если вы хотите использовать bluemap!
Перед тем как это сделать, внимательно прочтите следующее:
По умолчанию для поля metrics установлено значение true, и он определяет, отправляет ли bluemap какие-либо действительно небольшие отчеты о метриках. Отчет содержит только используемый тип реализации (например, «cli» или «sponge») и версию. Это позволяет мне отслеживать базовое использование BlueMap и помогает мне сохранять мотивацию к дальнейшему развитию этого инструмента! Пожалуйста, оставьте это 🙂
С помощью поля data вы можете изменить папку, в которой bluemap сохраняет файлы, необходимые во время выполнения, или для сохранения других данных.
(Например, загруженный файл клиента minecraft, другие ресурсы по умолчанию и состояние ваших задач рендеринга, если они были приостановлены.)
Конфигурация рендеринга: render.conf
В конфигурации рендеринга вы точно определяете, что и как BlueMap должен рендерить.
Поле webroot в render.conf определяет папку, в которой будут сохранены ваши визуализированные карты и будут созданы файлы веб-приложения.
С помощью useCookies вы можете отключить использование файлов cookie в веб-приложении. Файлы cookie используются только для сохранения настроек пользователей, поэтому им не нужно устанавливать их заново каждый раз, когда они повторно посещают карту.
enableFreeFlight позволяет включать/отключать режим свободного полета в веб-приложении.
С помощью startPos вы можете контролировать положение xz на карте, по которому камера будет центрирована, когда вы откроете карту.
Поле skyColor управляет цветом неба с использованием шестнадцатеричного формата CSS. Это полезно для других измерений, таких как нижний мир и конец, где небо темно-красное или пурпурное.
ambientLight определяет силу окружающего света, которую получает каждый блок, независимо от солнечного света / блочного света. Полезно, если в мире нет солнечного света, например, преисподней и краев.
Если renderCaves имеет значение false, bluemap не отображает лица, для которых значение солнечного света/небесного света равно 0. Это удаляет ненужную геометрию и улучшает визуализацию. скорость и самое главное производительность веб-клиента на много! Однако иногда он может удалять лица, которые вы видите сверху, например дно океанов или стена под большим выступом. Если у вас есть измерение, в котором нет солнечного света, такого как Нижний мир и конец, вы должны включить этот параметр.
Поля minX, minY, minZ, maxX, maxY и maxZ определяют «границы» визуализированного мира. Итак, если вы хотите визуализировать только определенную область вашего мира, вы можете сделать это здесь. С помощью y-полей вы также можете визуализировать только блоки определенной высоты. Вы можете использовать это, например, для удаления потолка преисподней, чтобы видеть нижние области на рендере.
Если вы ограничили границы своей карты полями выше, вы можете использовать поле renderEdges, чтобы определить, как будут отображаться эти «края» вашей карты. Если это значение true, блоки на краях будут отображаться, в противном случае края будут прозрачными.
useCompression можно использовать для отключения сжатия чанков. (Обычно тайлы сжимаются с помощью gZip). Сжатие уменьшает размер файла более чем на 80%, поэтому отключать его не рекомендуется.
Обычно BlueMap определяет, не сгенерировал ли чанк световые данные, и пропускает рендеринг этих чанков. Если ignoreMissingLightData имеет значение true, BlueMap будет отображать чанки, даже если нет данных о свете! Это может быть полезно, например, если какой-то мод препятствует правильному сохранению световых данных. Однако у этого также есть несколько недостатков:
Для этих чанков каждый блок всегда будет полностью освещен.
Ночной режим может работать некорректно
Пещеры всегда будут отображаться (игнорируя параметр «renderCaves»).
Конфигурация веб-сервера: webserver.conf
Встроенный веб-сервер — это самый простой способ разместить вашу карту в Интернете, чтобы вы могли просматривать ее в своем браузере. Если он включен, он будет размещать (используя http) все файлы в папке, определенной полем webroot в этой конфигурации, на указанном IP-адресе и порту.
С помощью поля enabled вы можете включить (true) и отключить (false) встроенный веб-сервер.
Поле webroot в файле webserver.conf определяет папку, которую веб-сервер будет размещать в Интернете. Обычно это значение должно быть таким же, как и в поле webroot в render.conf.
Поле ip определяет IP-адрес, к которому будет привязан веб-сервер. Если вы опустите это поле, bluemap привязывается ко всем сетевым интерфейсам (0.0.0.0). Если вы хотите получить доступ к своему приложению только на компьютере, на котором размещена карта, используйте localhost.
С помощью port вы можете изменить порт, к которому привязан веб-сервер. Порт по умолчанию — 8100.
Поле maxConnectionCount ограничивает максимальное количество активных подключений, которые сервер принимает одновременно.
Конфигурация плагина: plugin.conf
Этот раздел посвящен взаимодействию с сервером. В настоящее время он в основном контролирует то, как обрабатываются маркеры игроков.
Если вы не хотите, чтобы какие-либо данные использовались в реальном времени, установите для liveUpdates значение false. Это отключает полный модуль живых обновлений.
Если для skinDownload установлено значение true, BlueMap загрузит и обновит текущий скин каждого игрока, чтобы сделать его доступным для веб-приложения.
С hiddenGameModes вы можете контролировать, какие игровые режимы будут отображаться на карте. По умолчанию, видны все, кроме игроков в режиме наблюдателя.
Когда hideInvisible имеет значение true, игроки с эффектом невидимости не будут отображаться на карте.
hideSneaking определяет, должен ли крадущийся игрок быть видимым на карте.
FullUpdateInterval — это интервал в минутах, в течение которого будет запущено полное обновление карты. Это дополнительно к обычному процессу обновления карты (в случае, если он не может обнаружить какие-либо изменения в файлах).
DynMap
DynMap — это плагин для сервера под управлением Bukkit. Он нарисует карту вашего сервера Minecraft прямо в браузере, наподобие привычного Google Maps. Он очень прост в установке, так как веб-сервер встроенный в DynMap работает прямо из коробки, хотя всё также есть возможность интеграции карты с существующим сайтом на своем веб-сервере, например Apache. Гибкость DynMap позволяет рисовать ваш мир используя различные технология построения, тем самым поставив упор на быстродействие, либо наоборот на проработку высокой детализации.
В зависимости от ваших требований к DynMap, встроенные компоненты позволят вам добавлять/удалять ту или иную функциональность. Сейчас DynMap поставляется с такими компонентами, которые добавляют поддержку чата с воздушными шарами, переписку через веб + интеграция с HeroChat, а также отображение на карте регионов созданных в WorldGuard, Residence и Towny.
Содержание
Основные возможности [ ]
Установка [ ]
Распакуйте архив dynmap-*-bin.zip в папку «plugins». Если вы обновляете плагин, то согласитесь перезаписать все файлы.
Если у вас запущен отдельный веб-сервер (например Apache), то скопируйте файлы из «plugins/dynmap/web/» в корень «http-root». При следующем обновлении плагина, не забудьте обновить только что скопированные файлы на веб-сервер.
Первый запуск [ ]
После запуска на сервере CraftBukkit, вы можете проверить работу плагина в браузере по адресу http://ipсервера:8123/. В случае если вы запустили CraftBukkit на своём компьютере, то он откроется и по адресу http://localhost:8123/. На загруженной странице вы должны увидеть игроков, разумеется только тех, которые находятся в игре. Обратите внимание что карты ещё нет, поэтому фон будет чёрным.
Если вы хотите карту с высокой детализацией, то сейчас самый удачный момент сделать это. Просто включите (раскомментируйте) опцию deftemplatesuffix: hires в одной из верхних строк файла configuration.txt. Более подробную информацию об опции deftemplatesuffix вы найдёте в разделе о настройках плагина.
Часто задаваемые вопросы [ ]
Вопрос: Почему чат отображает вместо русских символов кракозябры?
Ответ: Обновите версию плагина, в новых версиях кириллица отображается корректно.
Вопрос: Как мне обеспечить доступ к карте для всех, если у меня нет своего веб-сервера?
Ответ: Просто откройте TCP порт № 8123 со своего сервера CraftBukkit, это позволит всем желающим зайти на DynMap. Для более высокой безопасности, всё же лучше использовать веб-сервер (например Nginx или Apache), который займется проксированием трафика DynMap.
В итоге должно получиться так:
В этом примере используются имена миров «world», «world_nether» и «world_the_end».
Вопрос: Как изменить отображаемые названия миров?
Ответ: Откройте файл plugins/dynmap/worlds.txt и в разделе описания мира, в поле title: напишите желаемое название мира. Пример правильной конфигурации:
Теперь все игроки скрыты. Что бы отобразить определённого игрока достаточно ввести команду /dynmap show ИмяИгрока
Вопрос: Как отключить облачки чата?
Ответ: Откройте файл plugins/dynmap/configuration.txt установите знак комментария # в начале следующих строк:
После изменений должно получится так:
Настройки плагина [ ]
Идём в конфиг configuration.txt находящийся в /plugins/dynmap Список некоторых параметров и их расшифровка:
renderinterval: используется для указания интервала обновления одного блока карты, который может быть изменён, например при воздействии на этот участок блока игроками. При задании слишком маленького значения, приведёт к чрезмерной нагрузке на сервер. По умолчанию, этот интервал равен 1-ой секунде. Большинство серверов могут работать с малыми значениями, вплоть до 0.2 секунд.
tiles-rendered-at-once: Сколько ядер юзать (по умолчанию 1\2 ядра)
hideores: true скрыть любые рудные блоки, вынуждая их отображаться как камень.
defaultzoom: настройка зума карты по умочанию
defaultworld: мир по умолчанию (по умолчанию world)
defaultmap: вид мира по умолчанию (по умолчанию flat)
sendhealth: отображать или нет здоровье игроков
hideifshadow: скрывать информацию об игроке, если значение уровня света установлена ниже 15 (0 = при полной темноте, 4 = под открытым ночным, 15 = при дневном свете)
Может задебажить игру в PerfStudio/прочих? Включить вайрфрейм и всех делов 🙂
А вообще в майнкрафте не такое уж и большое количество видимых кубиков, инстансинг зарулит.
Програмно каждый кубик может быть или открытым(хотябы одна сторона в воздухе) или закрытым. Тоесть обрабатывается некая 3д плоскость, а не все кубики. А тут уже можно заюзать индор техники.
Недавно пробовал рендерить большую территорию, состоящую из кубиков:
40 FPS на GeForce 310M
Здесь порядка 5 миллионов кубиков, которые разделены на чанки (отдельные меши из 64x64x32 32x32x64 кубов). При обновлении чанка генерируется меш, который состоит только из видимых сторон кубов.
Che@ter
> А вообще в майнкрафте не такое уж и большое количество видимых кубиков,
> инстансинг зарулит.
А чего там инстансить то? Куб же очень простая фигура, более того в подавляющем большинстве видны только одна-две-три грани. Разве есть смысл «инстансить» грани?
Хорошо, допустим видюхи умеют сотни миллионы маленьких трисов в секунды, в это верится.
А вот как быть с филлрейтом? Довольно легко напридумывать ситуаций когда филлрейт забьёт растеризатору печенку вконец.
Например поле из множества плоских слоёв с пустыми слоями между ними и вот мы в центре композиции смотрим наверх там или вниз.
Очевидно полезно рендерить от ближних чанков к дальним включив z-buffer, но как то поэффективней можно?
=A=L=X=
> но как то поэффективней можно?
Конечно, просто не нужно рисовать то что не видно,
раньше так во всех играх делали, а теперь разленились.
Hybernaculum
> Конечно, просто не нужно рисовать то что не видно,
> раньше так во всех играх делали, а теперь разленились.