Перейти к содержимому

ScreenshotFeatures

Удобные улучшения для создания скриншотов (особенно с шейдерами)

Fabric
Загрузчики
Fabric
Скачиваний на Modrinth
918
Подписчиков на Modrinth
8
версии
4
Обновлён
12 августа 202612 авг.
Опубликован
в 2025

Коротко о моде

Работает на Fabric
Для Minecraft 1.21.10, 26.2 …
Ставится только в игру; на сервер ставить не нужно
Последняя версия — 2.0 от 12 августа 2026
Нужен Fabric API, Mod Menu и MaLiLib
Лицензия GPL-3.0-or-later — бесплатно
Где нужен
В игреобязателенНа серверене нужен

Ставится только в игру; на сервер ставить не нужно

Версии игры1.21.6–1.21.8, 1.21.10, 26.2
Описание переведено автоматическиПоказать оригинал (EN)

Функции скриншотов

ФУНКЦИИ ЗАВИСЯТ ОТ IRIS / ПОСТРОЕНЫ ВОКРУГ НЕГО

сделано для довольно технически подкованной/увлечённой аудитории, снимающей скриншоты с шейдерами

если у вас есть узкая потребность в чём-то, что, по вашему мнению, может помочь в ваших начинаниях со скриншотами, создайте issue на github!

обзор функций мода

  • вручную настраиваемая глубина резкости
  • клиентское время и погода
  • сохраняет метаданные в скриншоты
    • настройки шейдерпака
    • хеш шейдерпака и статус git
    • местоположение, время, fov и т. д.
  • перетаскивание скриншотов с соответствующим тегом в меню списка шейдерпаков iris для загрузки (меню, где видно все ваши шейдерпаки, а не в настройках шейдерпака!)
  • сохранение метаданных, совместимое с fabrishot ждём fabrishot 26.2
  • редактор матрицы проекции (например, использование ортографической проекции)
  • пользовательские шейдерные униформы (требуется редактирование файлов шейдера для использования, подробнее ниже)
  • экспериментальное изменение опций шейдера во время выполнения (экспериментально, подробнее ниже)

старые функции для управления папкой скриншотов и файлами будут когда-нибудь переделаны, но пока что убраны

демо-видео (на китайском): https://www.bilibili.com/video/BV1JZg36bETy/

инструменты в игре

блокировка ГРИ позволяет зафиксировать текущую дистанцию фокуса (сделано для использования с автофокусом, для лёгкой настройки ГРИ)

настройки погоды/времени могут влиять на ваш локальный мир в одиночной игре (по крайней мере, у меня осталось такое впечатление откуда-то), так что они заблокированы за ещё одной настройкой внизу страницы на всякий случай

редактирование значений в игре

у большинства числовых значений в этом моде рядом есть опция привязки клавиши, которая является его клавишей-«модификатором»

когда эта клавиша-модификатор зажата, вы можете нажимать привязки увеличения/уменьшения значения, чтобы менять значение с шагом и опционально с ещё одним модификатором, чтобы масштабировать ваше изменение значения

(в моих привязках я зажимаю shift для изменений с шагом 0.1x и ctrl для изменений с шагом 10x)

использование колеса прокрутки мыши для изменений вместо двух отдельных привязок увеличения/уменьшения тоже поддерживается

(настройки редактирования значений находятся в разделе «Инструменты в игре»)

встраивание метаданных

метаданные встраиваются как exif-данные в png под ключом screenshotfeatures в формате json их можно просмотреть по параметру во вкладке просмотра скриншотов, перетащив на неё скриншот

screenshotviewingimage

метод хеширования

сохраняет хеши md5, sha256 и xxh32 для включённого шейдера, git-коммита и диффов, если это git-репозиторий

эквивалентное хеширование папок в bash

cat $(find shaders -type f | sort) | xxh32sum

хеши zip — это просто хеши zip-файла для удобства

редактор матрицы проекции

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

projectionmatriximage

включение pull matrix переносит значения текущей матрицы проекции в редактор (переносимое значение берётся до переопределения), но не меняет фактические значения конфигурации слева

включение keeping aspect ratio пытается масштабировать ширину/высоту соответственно, когда вы меняете значение другой (т. е. если у вас изначально ширина и высота были 16 и 9, и вы ставите ширину 32, высота станет 18)

включение always apply matrix постоянно применяет значения, заданные в конфигурации, к матрице (хотя обновляется только при нажатии enter в текстовом поле/потере фокуса, а не вживую на каждый символ)

нажатие кнопок в области просмотра матрицы — это то, что на самом деле применяет значения, заданные в конфиге, к матрице! (если только не включено always apply matrix)

override matrix действительно применяет матрицу к камере игрока

orthogonal offset — это смещение камеры вперёд и назад, когда вы используете ортогональную матрицу,

советы по матрице

эксперименты с числами near/far plane и orthogonal offset приветствуются для работы с шейдерами, (и помните, что некоторые шейдеры могут быть просто непоправимо (без больших усилий) сломаны при использовании с ортогональной проекцией) я обычно использую photon, который работает нормально с ортогональной проекцией (у меня есть несколько исправлений для ортогональных проекций для использования с этим модом в моём личном форке photon на моём github)

обычно для ортогональных скриншотов с шейдерами я использую смещение 0, near plane -2048 и far plane 1024, или что-то около этих пропорций/знаков

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

интеграция с шейдерами и пользовательские uniform-переменные

этот мод определяет SCREENSHOT_FEATURES когда активен, и предоставляет bool uniform с именем isOrthogonalProjection, который устанавливается в true, когда override matrix включён и матрица ортогональна

shaderintegrationimage

когда uniform определён в gui Custom Uniforms, он добавляется как float uniform в шейдер и добавляется define SCREENSHOT_FEATURES_CUSTOM_UNIFORM_{name}, позволяя использовать например так:

#ifdef SCREENSHOT_FEATURES

#ifdef DOF_INTENSITY
#ifdef SCREENSHOT_FEATURES_CUSTOM_UNIFORM_DOF_INTENSITY
#undef DOF_INTENSITY
uniform float DOF_INTENSITY;
#endif
#endif

#endif

где вы можете как бы "затенять" настройку шейдера с помощью uniform вместо этого

для этого также есть экспериментальная функция "override", которая пытается делать это автоматически

внутри override внедряется до и после этапа предобработки шейдера, и удаляет #define с тем же именем, что и uniform, и пытается встроить любые const-переменные, зависящие от него (это самая рискованная часть)

включение override для uniform замедлит время компиляции шейдеров

bool-типы uniform запланированы

запланированные функции

(по крайней мере те, которые интересны лично мне)

  • больше контроля над выгрузкой/отсечением чанков (для ортогональных скриншотов/камер на большом расстоянии)
  • какая-нибудь система для автоматизации серии скриншотов в разных местах/под разными углами для точных сравнений
  • поддержка aperture (хотя я ещё не просил ims о сборке)
  • опциональное сохранение карты глубины скриншотов для лучших возможностей постобработки

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

благодарности

старые версии этого мода были основаны на ScreenshotSettings от fmbellomy

Частые вопросы

Как установить ScreenshotFeatures?

Установите Fabric под свою версию Minecraft, скачайте ScreenshotFeatures под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть ScreenshotFeatures?

У ScreenshotFeatures есть сборки для Minecraft 1.21.6–1.21.8, 1.21.10, 26.2.

Нужен ли ScreenshotFeatures на сервере?

Ставится только в игру; на сервер ставить не нужно

Лицензия и источник
GNU General Public License v3.0 or laterможно использовать и распространять; изменённые версии — под той же лицензией и с исходным кодом
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее