Создание Текстур с помощью Blueprints и Render Targets в Unreal Engine 4

0
337
Создание Текстур с помощью Blueprints и Render Targets в ue4

При создании Textures для вашего проекта Unreal Engine 4 (UE4) вам, как правило, потребуется использовать внешнюю программу 2D-рисования, такую ​​как Adobe Photoshop или GIMP. Хотя авторский контент таким образом и может дать вам потрясающие результаты, бывают случаи, когда возможность создания контента, подобного этому внутри UE4, будет весьма полезна. В следующем руководстве мы рассмотрим, как вы можете использовать Blueprints и render targets для создания текстур для ваших проектов UE4, сначала создав новый пустой уровень в проекте UE4, а затем создав и настроив render targets для применения.

1 – Настройка проекта

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

Создать новый пустой уровень

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

  1. На главной панели инструментов перейдите в меню File > New Level.File > New Level ue4

2. В появившемся окне Нового Уровня нажмите кнопку Empty Level.диалоговое окно New Level UE4

3. После нажатия Empty Level UE4 загрузит новый уровень, в котором нет ничего внутри. Как только это произойдет, сохраните уровень, нажав Save на главной панели инструментов, называя его BlueprintTextureCreation.Blueprint Texture Creation ue4

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

2 – Требуемые создание актива и настройка

Прежде чем мы сможем создать Height Field Painter Blueprint, нам нужно будет создать и настроить следующие типы активов внутри UE4 Content Browser. В следующих разделах мы рассмотрим, как нужно настроить каждый из активов, а также любые специальные свойства, о которых вам нужно знать.

Обратите внимание, что следующее не относится к типу проекта UE4. В любом проекте, использующем UE4 версии 4.13 или новее, может быть выполнено следующее
  • Render Target
  • Material
  • Blueprint (Based off Actor)

Render Target Creation & Setup

Щелкните правой кнопкой мышки внутри контент браузера и из отображаемого меню, перейдите в меню Create Advanced Asset > Materials & Textures, а затем выберите параметр Render Target.параметр Render Target ue4

2. Назовите вновь созданный Render Target, RT_Height_Filed_Painter, а затем нажмите Save All, чтобы сохранить вашу работу.созданный Render Target ue4

Создание и настройка Материалов

  1. Щелкните правой кнопкой мышки внутри контент браузера и в списке Create Basic Asset выберите опцию Material, чтобы создать новый Материал, называя его MAT_HeighfieldPainter.создать новый Материал ue4

2. Выберите материал MAT_HeightfieldPainter в контент браузере, а затем щелкните его правой кнопкой мыши. Из отображаемого меню в разделе Common выберите параметр Duplicate, чтобы создать копию Материала, называя его MAT_ForceSplat.параметр Duplicate ue4

3. Дважды щелкните по материалу MAT_HeighfieldPainter, чтобы открыть его, а затем выберите Main Material Node. На панели Details в разделе Материала настройте следующие параметры.

  • Shading Model: UnlitShading Model: Unlit ue4

4. Материал MAT_HeighfieldPainter будет использовать вход World Position Offset для увеличения Z-высоты вершин Static Mesh, к которым он применяется. Вы можете скопировать его в свой материал, наведя указатель мышки на изображение ниже, а затем щелкнув параметр Copy Expression Graph, скопировав и вставив предоставленный код материала в MAT_HeighfieldPainter.параметр Copy Expression Graph ue4

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

5. Откройте материал MAT_ForceSplat и выберите Main Material NodeНа панели Details раздела Material настройте следующие параметры:

  • Blend Mode: Additive
  • Shading Model: Unlit
  • Allow Negative Emissive Color: CheckedAllow Negative Emissive Color ue4

6. Поскольку MAT_ForceSplat Material будет действовать как наша кисть для повышения поверхности нашего height field, ему нужно будет иметь несколько вариантов, которые позволят вам контролировать его размер и интенсивность. Вы можете скопировать законченный материал в свой материал, наведя указатель мышки на изображение ниже, а затем щелкнув по опции Copy Expression Graph, скопировав и вставив предоставленный код материала в MAT_ForceSplat.опция Copy Expression Graph ue4

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

Теперь, когда требуемые активы будут настроены, в следующем разделе мы рассмотрим создание Blueprint, который свяжет все активы вместе, чтобы создать макет height field.

3 – Настройка Blueprint

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

Создание и настройка Blueprint

Чтобы создать Blueprint, который будет работать как с объектами рендеринга, так и с Материалами, вам нужно будет сделать следующее.

  1. Щелкните правой кнопкой мышки в контент браузере и в меню, которое отображается в разделе Create Basic Asset, выберите параметр Blueprint, чтобы создать новый Blueprint.создать новый Blueprint ue4

2. В окне Pick Parent Class выберите класс Actor, а затем назовите Blueprint – BP_Texture_Creator.окно Pick Parent Class ue4

3. Дважды щелкните по BP_Texture_Creator Blueprint, чтобы открыть его и после нажмите вкладку Event Graph, чтобы открыть график событий.вкладка Event Graph ue4

4. Добавьте к диаграмме событий следующие узлы Blueprint:

  • Custom Event
  • Draw Material to Render Targetузлы Blueprint ue4

5. Выберите узел пользовательского события и нажмите F2, чтобы вы могли переименовать узел пользовательского события Bake. Затем подключите его к входу узла Draw Material to Render Target.узел Draw Material to Render Target ue4

6. Затем на узле Draw Material to Render Target загрузите render target, который была создан ранее в слот Texture Render Target, нажав на маленький белый треугольник рядом с Select Asset, а затем из списка найдите рендеринг RT_00 и выберите его, щелкнув по нему. После этого выполните то же самое для раздела Material, выбрав RT_Material_00.создать Blueprint ue4

7. Теперь перейдите на вкладку Construction Script и перетащите узел Construction Script, чтобы отобразить меню Executable actions.меню Executable actions ue4

Обратите внимание, что DrawMaterialToRenderTarget не будет работать в скриптах Construction вне редактора UE4, что означает, что если вы пытаетесь сделать это во время выполнения, это не сработает.

8. В этом меню найдите событие Bake, которое было создано путем ввода Bake в поле поиска и после его нахождения, щелкните по нему, чтобы добавить его в график, а затем подключите вывод Construction Script ко входу на узле Bake.узел Bake ue4

9. Наконец, нажмите кнопки Compile и Save, чтобы скомпилировать и сохранить свой Blueprint.кнопки Compile и Save ue4

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

4 – Создание Текстуры и конечный результат

В этом разделе мы рассмотрим, как объединить все части этого, чтобы мы могли создавать и сохранять активы Texture на основе созданного Материала.

Создание Текстуры

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

  1. Найдите BP_Texture_Creator Blueprint в контент браузере, перетащив его на уровень.

Создание Текстур с помощью Blueprints и Render Targets в ue42. Найдите Материал RT_Material_00 в контент браузере и дважды щелкните его, чтобы открыть. При открытии, выберите узел выражения материала Noise.узел выражения материала Noise ue4

3. Выбрав выражение материала Noise, перейдите к панели Details и введите следующие значения в соответствующие параметры. По завершении нажмите кнопку Apply, чтобы скомпилировать Материал.1 узел выражения материала Noise ue4

  • Scale: 2.0
  • Levels: 8.0
  • Output Min: -0.01
  • Level Scale: 3.0

4. Выберите BP_Texture_Creator Blueprint, который был помещен на уровне, и слегка перемещайте его в любом направлении, чтобы обновить RT_00 render target, которая находится в контент браузере. Когда вы это сделаете, вы должны увидеть RT_00 обновление render target и отобразить то, что было в RT_Material_00.обновить RT_00 render target ue4

В любое время, когда вы хотите увидеть или обновить изменения, внесенные в Материал, вам нужно [слегка] переместить Blueprint.

5. Внутри контент браузера щелкните правой кнопкой мышки по RT_00 render target и в разделе Render Targets Actions в меню выберите параметр Create Static Texture, чтобы создать новый объект Texture, который отобразит результат RT_Material_00.параметр Create Static Texture ue4

Конечный результат

По завершении вы должны иметь новую 2D-текстуру, которая отобразит контент RT_Material_00, который теперь готов для использования в любом другом материале на ваш вкус.

создать новую текстуру ue4

 

 

 

Помните, что для того, чтобы увидеть ваши изменения, вам нужно будет убедиться, что вы скомпилируете свой материал и [слегка] переместите свой Blueprint, чтобы ваши изменения распространялись на вашу render target.

 

 

 

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите свой комментарий!
Пожалуйста, введите ваше имя: