Custom Textures — модификация которая позволяет заменять игровые текстуры пользовательскими файлами png.

Требования

Моды, которые нужно установить для правильный работы

Моды, требующие этот мод

Описание

Этот мод должен позволить вам заменить следующее:

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

Он также теперь поддерживает слои, поэтому вы можете применить несколько текстур к одной и той же ванильной текстуре (см. Слои ниже).

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

Основное использование

Чтобы извлечь ванильные текстуры для справки, используйте Asset Studio . Текстуры находятся в файлах valheim_Data / sharedassets.

Как сделать свой ретекстур для Скайрима. ОЧЕНЬ ПРОСТО. (Дневник мододела #1)

Чтобы заменить текстуру, вы просто добавляете файл png в папку BepInEx / plugins / CustomTextures с соответствующим форматом имени, описанным ниже, а затем загружаете игру.

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

Кроме того, если вы публикуете пакет текстур, размещение текстур в папке CustomTextures перед созданием zip-файла позволит Vortex установить их автоматически.

Чтобы перезагрузить текстуры мира во время игры, есть горячая клавиша (по умолчанию Page Down ).

Примечание:

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

Чтобы просмотреть список модов, создающих пользовательские текстуры с помощью этого мода, нажмите « Требования» над этим описанием.

Сводка по именам файлов

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

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

В конечном итоге с таким именем файла, и вы помещаете его где-нибудь в папке CustomTextures .

Имена свойств обычно начинаются с символа подчеркивания, так что не забывайте и об этом. Кроме того, если у вас Windows скрывает ваши расширения файлов, не
добавляйте .png в конец, иначе вы получите файл с именем _ .png.png, который не будет работать. Серьезно, просто пусть Windows показывает расширения файлов, глупо, что это не так.

Skyrim мод графика 2018!!! Карта, погода и текстуры для Скайрима!

Вот объяснение каждой из четырех частей:

Префиксы

Следующие префиксы реализованы в зависимости от типа изменяемого объекта:

  • player_model для текстур игроков;
  • atlas_item_icons для значков инвентаря;
  • объект для текстур объекта;
  • броня для текстур брони;
  • зона для текстур воды;
  • terrain для текстур ландшафта;
  • окружение для текстур окружения.

Для текстур объектов, воды, ландшафта и окружающей среды префикс можно изменить следующим образом:

  • средство визуализации — для замены текстур на определенных именованных средствах визуализации на определенных именованных объектах;
  • мат — для замены текстур на определенных именованных материалах на определенных именованных вещах;
  • renderermat — для замены текстур на определенных именованных материалах на определенных именованных средствах визуализации на определенных именованных объектах;
  • texture — для замены определенных именованных текстур на определенные именованные объекты.

например:

environmentrenderermat_branch_ yggdrasil_branch (Экземпляр) _MainTex.png

заменит основную текстуру материала yggdrasil_branch на рендерере ветви на объекте среды YggdrasilBranch .

Вы также можете использовать следующие префиксы в зависимости от имени компонента:

  • текстура для универсальной замены текстуры (где поддерживается);
  • рендерер для замены текстуры на любом названном рендерере;
  • мат для замены текстуры на любом названном материале;
  • Итак, более простой способ сделать это — просто: texture_yggbark_d_MainTex.png, который заменяет текстуру yggbark_d в любом месте, если это основная текстура.

Идентификаторы.

Идентификаторы, используемые с указанными выше префиксами, можно найти в дампе сцены. Подробнее об этом в каждом подробном разделе ниже.

Имена свойств

Вы также можете найти имена свойств в дампе сцены. В основном вы захотите заменить _MainTex и, возможно, _BumpMap или _SkinBumpMap .

Имена слоев:

Типы замены

Подробная информация о каждом типе замены:

Для базовой текстуры персонажа игрока используйте следующий синтаксис:

Замените на 0 для мужчин или 1 для женщин. Например:

player_ model_1 _MainTex .png

Значки инвентаря предметов

Это маленькие изображения, которые появляются в вашем инвентаре, чтобы представить предмет в игре. Все они находятся на одном графическом изображении с именем sactx-2048×2048-Uncompressed-IconAtlas-61238c20 # 845 .

Чтобы заменить лист значков инвентаря, создайте эквивалентный лист с именем:

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

Вы также можете заменить значок отдельного элемента, используя слой (см. Слои ниже).

Текстуры объектов и доспехов

Примечание. Теперь все объекты снаряжения и мира считаются объектами . Мод по-прежнему распознает префикс items_ только для обратной совместимости.

Кроме моделей игроков и значков инвентаря, все остальное, на что влияет этот мод, считается объектом.

Например:

  • Ресурсы, такие как уголь и древесина;
  • Такие инструменты, как молотки и культиваторы;
  • Растения, деревья, кусты;
  • Строительные блоки;
  • Враги.

Броня — это то, как объект выглядит, когда вы его носите (в отличие от того, чтобы бросить его на землю вместе с остальным).

Общий синтаксис имени файла для всех этих вещей:

Префиксы:

Теперь реализованы следующие префиксы для объектов и брони:

  • object — используется для изменения всех текстур типа на конкретном мировом типе объекта. должно быть именем порождения объекта;
  • objectrenderer ( объектная сетка также работает, но устарела ) — используется для изменения всех текстур типа на определенном рендерере на определенном объекте. (см идентификаторов ) должно быть имя объекта и имя рендерера, разделенное подчеркивание: _ ;
  • objecttexture — используется для изменения определенной именованной текстуры типа на каждом рендерере определенного объекта. (см идентификаторов ) должно быть имя объекта и имя текстуры, разделенное подчеркивание: _ ;
    objectmat — используется для изменения текстур на всех специально названных материалах на определенном объекте. (см идентификаторов ) должно быть имя объекта и название материала, разделенное подчеркивание: _ ;
  • objectrenderermat — используется для изменения текстуры материала с конкретным именем в модуле визуализации с конкретным именем на конкретном объекте. (смидентификаторов) должно быть имя объекта и название материала, разделенное подчеркивание:_ < rendererName >_ ;
  • текстура — используется для изменения всех экземпляров определенной текстуры типа на всех объектах и ​​элементах, которые используют эту текстуру. (см идентификаторов ) должно быть имя текстуры (не обязательно экспортируемое имя файла!);
    рендерер — используется для изменения текстур типа на всех экземплярах определенного рендерера на всех объектах и ​​элементах. (см идентификаторов ) должно быть имя визуализатора;
  • mat — используется для изменения текстур типа на всех экземплярах определенного материала на всех объектах и ​​элементах. (см Идентификаторы ) должно быть название материала;
  • броня — используется для изменения сундука или ног предметов брони — обратите внимание, что на остальные части брони влияет объект, а не он.
Читайте также:  Skyrim проблемы с производительностью

Суффиксы:

Примечание:

суффиксы были переработаны. Старые суффиксы _texture и _bump по-прежнему распознаются, но их следует заменить фактическим именем свойства.

Суффиксы сообщают моду, какую текстуру вы хотите заменить, называемые « свойствами ».

Дамп сцены дает список свойств для каждого материала объекта, например:

объект ArmorIronChest имеет 1 SkinnedMeshRenderers:

  • SkinnedMeshRenderer имя: IronArmor
  • smr IronArmor имеет 1 материал
  • IronArmorChest_mat (Instance):
    properties:
  • MainTex
  • IronArmorChest_d _BorumpMap
  • EmissionMap
  • MetallicGlossMap IronArmorChest_m
  • StyleTex
  • броня ArmorIronChest имеет Материал:
    имя Броня: IronArmorPlayer_chest
    свойство:
  • MainTex
  • ChestBumpMap IronArmorChestPlayer_n
  • ChestMetal IronArmorChestPlayer_m
  • ChestTex IronArmorChestPlayer_d
  • LegsBumpMap
  • LegsMetal
  • LegsTex
  • SkinBumpMap.

Этот объект имеет как кожуру сетки визуализатора и броневой материал. Они отдельные. Объект это все причудливые элементы, которые застревают в плеере. Броня является текстурой , которая получает наклеенную на ноги игрока и грудь. Каждое свойство отображается с именем текстуры (если оно есть), например имя _MainTex объекта — IronArmorChest_d . _MainTex относится к основной текстуре.

В основном это тот, который вы хотите заменить. Однако для брони замена _MainTex может ничего не сделать — замена его прозрачной текстурой, кажется, работает лучше всего. Чтобы изменить фактическую броню, вам нужно использовать _ChestTex и / или _LegsTex и убедиться, что они покрывают только область реальной брони (см. Экспортированный IronArmorChestPlayer_m .png

Например:

Итак, вам нужно создать следующее:

object_ ArmorIronChest_MainTex.png
armor _ ArmorIronChest _ChestTex.png

Armoris сложный, лучше всего поэкспериментировать. Идентификаторы Чтобы получить идентификаторы для объектов, используйте имена в списке появления здесь: https://www.reddit.com/r/valheim/comments/lig8ml/spawn_item_command_list/ Они также будут в дампе сцены, упомянутом выше.

Вода и Terrain текстуры для воды и местность текстура использует аналогичный синтаксис для объектов, то есть: _ .png Вода Вода текстура внутри объектов зоны, поэтому на свалке сцены теперь вы увидите: зона _GameMain имеет 2 MeshRenderers:

MeshRenderer имя: водная поверхность
г — н водной поверхности имеет 1 Материалы
воды (Instance):

свойства:

  • FoamTex пена
  • Normal nRHPu
  • FoamHighTex foam_highres
  • NormalFine normalmap2
  • RandomFoamTex random_foam
  • MeshRenderer Название: sub_water_opak_thingyu
  • г — н sub_water_opak_thingyu имеет 1 Материалы.

Свойства:

Префикс здесь зона , так что используйте , например:

zone__GameMain_FoamTex.png (обратите внимание на двойное подчеркивание!)

Ландшафт

Сразу после входа зоны, вы увидите:

рельеф местности _GameMain, сборные _Zone (UnityEngine.GameObject)

свойства:

  • MainTex трава
  • NoiseTex Шум
  • ClearedMaskTex
  • CliffNormal gouacherock_big_n
  • CultivatedNormal cultivated_n
  • DiffuseTex0 diffuse0
  • DirtNormal dirt_normal_generated
  • ForestNormal forest_n
  • GrassNormal grass_normal_generated
  • PavedNormal paved_n
  • RockNormal gouacherock_n
  • SnowNormal snow_normal.

Приставка здесь рельеф местности , поэтому использование, например:

terrain__GameMain_DiffuseTex0.png diffuse0 текстуры , как представляется , имеет шестнадцать плитки с различными типами рельефа на нем. Вы можете увидеть пример его использования на скриншотах. Текстуры окружающей среды Текстуры окружающей среды — это такие вещи, как дождь, облака, туман и это большое дерево в небе. Дамп сцены показывает, например: environment YggdrasilBranch имеет 1 MeshRenderers: MeshRenderer name: branch mr branch имеет 2 материала yggdrasil_branch (Instance):

характеристики:

  • MainTex yggbark_d _BumpMap yggbark_n
  • EmissiveTex yggdrasil_emissive
  • MossTex ygg_moss
  • EmissiveMaskTex yggdrasil_emissivmask
  • RefractionNormal

свойства:

  • MainTex ygg_leaf_d
  • BumpMap ygg_leaf_n
  • EmissiveTex
  • MossTex
  • EmissiveMaskTex
  • RefractionNormal.

Таким образом, как упоминалось выше:

environmentrenderermat_branch_ yggdrasil_branch (Instance) _MainTex.png

заменит основную текстуру наyggdrasil_branch (Instance) материал на ветви визуализатора, на YggdrasilBranch объекта окружающей среды.

Слои

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

Слои текстуры

Чтобы добавить слой к чему-либо, кроме таблицы спрайтов, используйте тот же синтаксис, как если бы вы заменяли этот тип текстуры в соответствующем разделе выше, и добавьте _ в конец. Итак, для текстуры глаза игрока мода под названием RealEyes это будет:

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

Слои

спрайтов Слои спрайтов для листа значков элементов работают по-другому, полностью перезаписывая фрагмент листа спрайтов. В результате слой спрайта png должен быть размером только с патчем, который вы хотите заменить. Формат файла для слоев значков элементов следующий:

Это связано с тем, что вы можете работать с масштабированными текстурами, поэтому вам нужно сообщить моду, насколько велик теоретический лист, с которым вы работаете, есть. Мод сравнит его с существующим листом (или листом, замененным другой текстурой) и определит масштаб текстуры вашего слоя на его основе. Итак, чтобы заменить текстуру деревянного щита, например, я использую png размером 64×64 пикселя:

Это говорит о том, что мой png из листа размером 2048×2048 пикселей (равен размеру ванильного листа) и для замены существующего листа моим png размером 64×64 пикселя, начиная с пикселя 1224×1840 в верхнем левом углу.

Примеры

Давайте возьмем пример из дампа сцены:

объект VikingShip имеет 1 SkinnedMeshRenderers:
SkinnedMeshRenderer имя: sail_full
smr sail_full имеет 1
парус материалов (Instance):

характеристики:

  • MainTex sail_diffuse
  • BumpMap sail_normal
  • EmissiveTex
  • MossTex

Вы можете выбрать, какой префикс и идентификатор использовать, в зависимости от того, что вы хотите сделать:

1. Установить все текстуры для типа объекта

Это заменяет основную текстуру каждого материала в объекте, поэтому, если объект использует несколько текстур, он вероятно, не сработает. В нашем примере это не сработает, так как на корабле есть несколько MeshRenderers. Если мы хотим изменить карту рельефа, мы можем использовать:

Читайте также:  Как улучшить броню в Скайриме

2. Установить все экземпляры текстуры

Это заменяет все текстуры с именем sail_diffuse , поэтому должен быть затронут каждый объект, использующий эту текстуру. В нашем примере он заменит
плывет и на других типах кораблей, если они используют эту текстуру.

3. Установите текстуру для одиночной сетки для типа объекта

objectrenderer_VikingShip_sail_full _MainTex .png

Это заменит текстуру любого средства визуализации с именем sail_full на всех объектах VikingShip .

4. Задайте текстуру по имени для типа объекта

objecttexture _VikingShip_ sail_diffuse _MainTex.png

Это заменит любую текстуру с именем sail_diffuse на всех объектах VikingShip .

5. Установите частичный слой текстуры.

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

Конфиг

Конфигурационный файл BepInEx / config / aedenthorn.CustomTextures.cfg создается после запуска игры с этим модом один раз).

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

Дамп сцены

Чтобы получить всю информацию, необходимую для создания названий выше, установите для параметра конфигурации DumpSceneTextures значение true , затем запустите игру и загрузите ее в свой мир один раз. ФайлBepInEx / plugins / CustomTextures / scene_dump.txt должен быть создан. Вы можете вернуть для него значение false после того, как вы сбросили текстуры, в противном случае он будет воссоздавать файл каждый раз, когда вы запускаете игру.

Источник: valheim-inside.ru

The Elder Scrolls 5: Skyrim «HD текстуры для всего»

Данный мод заменяет стандартные текстуры в игре на новые, более качественные. Новые HD текстуры — это не просто улучшенные старые, а полностью переработанные, разрешение увеличено в 4-8 раз, в зависимости от типа текстур. На данный момент заменены практически все текстуры мира в игре:

  • Земля в подземельях
  • Виндхельм
  • Вайтран
  • Галактика
  • Звезды
  • Капли дождя на воде
  • Вода
  • Дороги, камни, деревья и т.п.
  • Ландшафт
  • Улучшенны текстуры домов
  • Улучшены текстуры одежды различных персонажей (кузнец, барменши)
  • Улучшены текстуры гарнитуры (чашки, тарелки и т.п.)
  • Улучшены текстуры алхимического стола
  • и др.

Отличия версий:

FULL — Все текстуры в макс. разрешении; вплоть до 8K. в среднем 4x от официального HD DLC.
LITE — Все текстуры имеют разрешение 50% от FULL версии; вплоть до 2K. в среднем 2x от официального HD DLC.

Источник: www.playground.ru

Скайрим как изменить текстуры

Ну-с, раз никто не вздрогнул, вздрогну я
Напишу немножко про текстуры.

Лирика:
Все текстуры для игр от Bethesda, и, в частности, Skyrim представлены в формате .dds . Этот формат может содержать внутри себя несколько размеров одной и той же текстуры. Любой размер текстуры использовать нельзя, только: 8 , 16 , 32 , 64 , 128 , 256 , 1024 , 2048 и так далее. Все ресурсы запакованы в .bsa архивы с соответствующими названиями. Текстуры ещё называют картами.

Каждая диффузная карта (цветная текстура) сопровождается, как минимум, картой нормалей — normal map , исключение составляют текстуры для эффектов и им подобные. Про карты нормалей хорошо написано на Вики.

Если говорить коротко, то карты нормалей позволяют низкополигональной модели выглядеть высокополигональной, добавляя всякие мелкие впуклости и выпуклости, и ещё она сиреневая и имеет маркер _n (имя текстуры_n.dds) или, теперь ещё, _msn, так что, при её идентификации ошибиться невозможно. Есть ещё карта свечения — glow map , которая определяет какие области на текстуре будут светиться, а какие — нет, имеет маркер _g. Небольшой апдейт: введена новая карта — маска глянца, имеет маркер _m, определяет, при её использовании (то есть, если её не добавлять, то глянца не будет вообще нигде на модели), какая часть текстуры будет отражать окружение и в какой степени. Движок Обливион сам находит и подгружает правильно маркированные карты, а, вот, для Скайрима, похоже, нужно вносить все карты в модель принудительно, причём каждую в свой, специально для неё предназначенный слот. Вот, в общем то, и всё.

Нам нужно:
1. Adobe Photoshop
2. Плагин для Фотошопа от Nvidia для работы с форматом .dds и созданием карт нормалей.
3. Какой-нибудь распаковщик .bsa архиWow. Например.
4. Важно! Прямые руки.
5. Немножко знать английский язык. Совсем чуть-чуть.

Начало практики:
Предполагается, что Фотошоп уже установлен, и мы умеем с ним более-менее сносно общаться. В противном случае, мне надо будет писать не пост на форуме, а 3х-томник, а я не сдюжу. Поехали дальше. Ставим плагин NVidia, он добавит способность Фотошопу работать с .dds форматом и пункт в меню Filter -> NVIDIA Tools -> NormalMapFilter.
Я пока не буду писать как извлечь текстуру из bsa архива. А то запутаюсь. И всех запутаю. Для начала сойдёт любая текстура из любого скачанного ретекстура, они уже распакованы.
Итак. Открываем свою первую текстуру в Фотошоп. При открытии, плагин поинтересуется настройками чтения в таком окне:

Лучше отметить всё так, как на изображении, кроме последней галки, тут на ваше усмотрение: хотите каждый раз видеть это окно, оставляйте галку, не хотите — убирайте. Пункт Load MIP Maps отвечает за открытие всех или одного размера текстуры, рекомендую выключить его. Все размеры нам открывать не нужно, они автоматически сгенерируются при сохранении текстуры.
Изменяем текстуру. Этот пункт я тоже пока не буду разворачивать, и так слишком много уже получилось. Будем проще.
Теперь сохраняем. Тут немножко посложнее окно выскочит:

Разберём его поподробнее:
Верхний выпадающий список содержит настройки оптимизации и наличиеотсутствие альфа-канала (о нём позжее) и его тип. Все пункты нас не интересуют, только 4

DXT1 RGB — его выбираем для всех текстур без альфа-канала
DXT5 ARGB — для всех текстур с альфа-каналом
8.8.8 RGB — сохранение без сжатия и альфа-канала
8.8.8.8 ARGB — без сжатия с альфа-каналом

Читайте также:  Скайрим где найти броню довакина без модов

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

Далее, нас интересует пункт генерации дополнительных размеров:

Generate MIP Maps — с доп. размерами (самый распространённый вариант)
Use Existing MIP Maps — понятия не имею
No MIP Maps — без доп. размеров

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

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

Фух. Фсё. Рука бойца колоть устала

Краткий экскурс в мир альфа-каналов.

Альфа-канал играет немаловажную роль при создании текстур. В нём используются только градации серого. Запомнить как он работает очень просто: белый — да, чёрный — нет, серый — так себе, в зависимости от светлости. Найти его можно, разумеется, в свитке каналов — Channels. Вот он, как раз, в самом низу, так и называется Alpha 1

Больше одного альфа-канала для игровых текстур оставлять не нужно.

Для диффузной карты альфа-канал используется только в том случае, если мы хотим сделать часть текстуры прозрачной. В этом случае чёрным закрашиваем то, что хотим отрезать, серым — что будет полупрозрачным (редко используется), белым — всё остальное.

Что касается карты свечения — glow map и карты глянца — environment mask, то им альфа-канал не нужен вообще, они сами себе являются альфа-каналом. Тут тот же принцип: белый светится или отражает, чёрный — нет. Для карты свечения возможно использование цветов, но существует масса нюансов, поэтому, пока опустим.

И, наконец, карта нормалей — normal map, в подавляющем большинстве, просто обязана иметь грамотный альфа-канал, в противном случае, модель будет выглядеть как маслом намазанная. Белый альфа-канал есть смысл оставить только для драгоценных камней, чистого нового стекла и жидкостей. Всё остальное приглушаем. Обычная ткань и неполированное дерево — почти чёрный цвет альфа-канала.

Ну, вот мы и подобрались к самому интересному

Карта нормалей

Сделать сиё чудо можно несколькими способами. Некоторые требуют хорошего навыка моделирования 3х-мерных объектов и нам сейчас не подходят. К счастью, есть плагин от славных людей из NVidia для создания карт нормалей из любого изображения. Есть ещё потрясающая программа CrazyBump, она гораздо лучше плагина NVidia, но категорически платная. Поэтому остановимся на плагине.
Откроем текстуру, для которой мы хотим создать карту нормалей, для примера я взяла маленькую текстуру брусчатки:


Применим к текстуре NormalMapFilter (Filter -> NVIDIA Tools -> NormalMapFilter):

В разделе Height Generation настраивается общее отображение будущей карты нормалей.
Пункт Wrap для безшовных текстур лучше выключить, иначе появятся швы на стыках, для одиночных текстур — всё равно. Все 3 пункта Invert делают то, что и написано, но мне ни разу не понадобились, поэтому я ничего не буду писать про них.
Путём выбора значения sample в подразделе Filter Type выбирается, собственно, детализация.

Как видите, самый чёткий результат мы получаем устанавливая значение sample 4.

В поле Scale настраивается высота рельефа. Для сравнения:

Главный недостаток NormalMapFilter в том, что он не умеет различать мелкие и крупные детали текстуры. Поэтому мы можем получить либо детализированную карту с небольшим рельефом, либо высокий рельеф без мелких деталей.
Выходов из этой ситуации несколько.

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

Попробуем применить к ней NormalMapFilter со значениями 4 samples и 30 scale (я хочу получить достаточный контраст):

И уже видны косяки — слишком рельефное дерево при недостаточном рельефе борозд и кнопки. К тому же, кнопка обрела на своей поверхности абсолютно ненужные детали. Единственный путь к вменяемой карте нормалей для этой текстуры я вижу в редактировании изображения. Я перевела все элементы текстуры в градации серого, изменила их контрастность и яркость и добавила тёмные ореолы кнопке и бороздам, в первом случае — кнопка слегка утоплена, во втором — смягчаю контур борозд:


Применила фильтр с теми же самыми настройками:

Уже больше похоже на правду.

2. Второй способ я подсмотрела на сайте render.ru, идея принадлежит Евгению Булатову. Возвращаемся к нашей подопытной текстуре брусчатке, переводим изображение в 16 Bits/Chanel (меню Image –> Mode), обесцвечиваем Ctri+Shift+U и применяем NormalMapFilter с настройками: 4 sample, scale 5, Average RGB.

Затем, дублируем слой, применяем фильтр Blur -> Gaussian Blur с небольшим значением (я выбрала 2) и назначаем слою тип смешивания Overlay. Повторяем процедуру: дублируем дублированный слой (тот, который уже размыт), Gaussian Blur (можно нажать Ctrl+F и последний фильтр применится сам с последними настройками); дублируем, размываем и так много раз. Вот что у меня получилось при 10и дублированных слоях:

И мелкие детали видны и рельеф на месте. Осталось завершить процесс. Объединяем все слои в один, применяем NormalMapFilter изменив Average RGB на Normalize Only и переводим изображение в 8 Bits/Chanel:

3. Дублируем слой Background с текстурой, на слой Background применяем NormalMapFilter со значениями: 9х9 samples, 20 scale, Average RGB ( *1 ). Затем, на сдублированный слой применяем тот же NormalMapFilter, но со значениями: 4 samples, 3 scale, Average RGB, дублируем его ( *2 ), сливаем все слои и применяем NormalMapFilter изменив Average RGB на Normalize Only ( *3 ).

Осталось сделать адекватный альфа-канал и карту нормалей можно считать готовой к употреблению.

Источник: modgames.net