Полезное

Мы Вконтакте

Discord канал

Май 11 2016

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

  • Редактирование переменных, включая изменение имени, типа, и то является ли переменная массивом.
  • Подключение Blueprint interfaces после нажатия кнопки Blueprint Props.
  • Добавление входов и выходов для функций.
  • Добавление Events для выбраных компонентов.

Интерфейс

Интерфейс Details панели

  1. Фильтры поиска — Введите имя свойства которое нужно найти.
  2. Property Matrix — Открывает Property Matrix панель.
  3. Visibility Filter — Позволяет показать или скрыть измененные или дополнительные свойства, а также свернуть или развернуть все категории.
  4. Категории — Используются для группировки свойств, и могут быть свернуты или развернуты, используя маленький белый треугольник слева от имени.
Каждая из этих областей зависят от контекста. В любом случае, когда одна из этих областей не относится к выбранному элементу, область просто не будет отображаться.
Добавил: Flakky Категория: Blueprint'ы Читать дальше »

Май 11 2016
Viewport Блупринтов

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

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

Вы так же можете управлять выбранным компонентом вручную через панель Details.

 

 

 

View меню

View меню

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

Свойство Оисание
Reset Camera Перефокусирует камеру на компонентах.
Realtime Включает рндеринг в реальном времени в окне Viewport.
Show Floor Отображает пол, что бы помочь вам с рамещением компонентов.
Show Grid Отображение сетки.
Добавил: Flakky Категория: Blueprint'ы Читать дальше »

Апр 29 2016

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

Добавление интерфейса

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

  1. Откройте Level Blueprint.

    Adding Interfaces

  2. Нажмите Class Settings на тулбаре.

    Adding Interfaces

  3. На панели Details, что справа, перейдите в категорию Interfaces.
  4. Нажмите кнопку Add Interfacetton что бы увидеть список доступных интефейсов.

    Adding Interfaces
    Adding Interfaces

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

Реализация компонентов интерфейса

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

  1. Щелкните правой кнопкой мыши на EventGraph и выберите Add Event > Event….
    Interfaces
    Выберите тип события который вы хотите добавить к графу.
  2. Создайте функциональность которая должна выполняться при вызове данного события.
    Interfaces

Добавление функций к интерфейсу

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

Interfaces

Вызов функций интерфейса из других блупринтов

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

  • Оба блупринта реализуют одинаковый интерфейс с требуемой функцией.
  • Вызывающий блупринт знает имя экземпляра в игре другого блупринта.

При создании узла интерфейсной функции в пределах Graph Event, вы часто будете видеть две версии функции, перечисленные в контекстном меню.

Interfaces

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

Interfaces

Interfaces

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

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

Interfaces

Чтобы указать блупринт, который существует в пределах уровня, лучше сделать публичную переменную «Actor» типа, и назначить соответствующий блупринт в значение этой переменной, используя панель Details.

Вызов функций интерфейса из Level Blueprint

Интерфейсы также дают возможность для связи между подуровнями с помощью Get Streaming Level ноды. Если загружен уровень, то Interface Message будет вызывать функцию с блупринтом этого уровня в качестве цели.

Interfaces

Определение функций интерфейса

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

Interfaces

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

Interfaces

Мы могли бы создать простую сеть, чтобы сделать сравнение чисел.

Interfaces

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

Interfaces

Добавил: Flakky Категория: Blueprint'ы Читать дальше »

Апр 29 2016
Прямые коммуникации

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

 

Основы работы

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

Взаимодейстующие объекты

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

Открытая переменная

Мы создали переменную типа блупринта потолочного светильника.

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

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

Поле ввода

По умолчанию переменная установлена как None. Чтобы определить, какой экземпляр светильника вы хотите изменять, вы должны нажать на кнопку пипетки и выбрать этот объект на уровне.

Выбор объекта

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

Использование прямых коммуникаций в функциях

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

Функция

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

Передача данных функции

Исправление проблем

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

Целевой объект

Если вместо этого вы установите переменную из результата вызова функции, вы должны увидеть предупреждение в журнале, что переменная имеет «Access None» исключение. Если у вас открыто окно «Message Log», оно отобразит ссылку на узел вызывающий проблему.

Access None

Выше вы видите «Access None» исключение. Исключение указывает на ноду, которая вызывает проблемы. При нажатии откроется блупринт, в котором используется данная нода.

Добавил: Flakky Категория: Blueprint'ы Читать дальше »

Фев 26 2016
Комментарий

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

Комментарии блоков функций

Создание комментария на блоке

Чтобы добавить комментарий блоке в Blueprint необходимо:

  1. Щелкните правой кнопкой мыши по узлу.
  2. Введите комментарий в поле Node Comment в появившемся меню, а затем нажмите Enter.
    Создание комментария на узле

Ваш комментарий появится в небольшой пузырьке над узлом. Комментарий над узлом не будет масштабироваться при масштабировании всей области Graph.
Комментарий на узле

Редактирование и удаление комментария у блока

Чтобы изменить комментарий щелкните правой кнопкой мыши по блоку блупринта, чтобы вызвать контекстное меню и изменить текст в поле Node Comment. Для удаления комментария — удалите текст из поля комментария и нажмете Enter.

Comment Box

Создание общего комментария — Comment Box

Создать comment box (общий комментарий) довольно легко:

  1. Выберите группу узлов, которую нужно закомментировать. Можно создать пустой comment box, а затем растянуть рамку комментария вокруг нужных узлов или использовать его в качестве плавающего комментарий в данной области.
  2. Щелкните правой кнопкой мыши и выберите Create Comment from Selection (или Add Comment… если не выбрано ни одного узла). Появится поле комментария.
    Создание общего комментария
  3. Или Вы можете нажать кнопку «C» для создания комментария.

  4. Введите текст в заголовок comment box.
    Заголовок комментария
  5. Размер поля комментария можно изменить путем перетаскивания его границ. Если двигать поле комментария, то узлы, которые находятся в поле комментария, будет двигаться вместе с ним. Это полезно при изменении положения группы узлов. Но можно отключить перемещение узлов за комментарием, изменив во вкладке Details Move Mod на Comment.

Готовый комментарий
Обратите внимание, что текст Comment Box масштабируется с изменением масштаба области Graph, поэтому можно увидеть весь функционал при уменьшении всей области.
Комментарий при отдалении

Редактирование комментария в Comment Box

Щелкните правой кнопкой мыши по полю заголовка комментария и измените текст в появившемся меню в текстовом поле Node Comment. Нажмите Enter, чтобы сохранить новый комментарий.
Меню комментария по ПКМ
Или:

  • Выберите comment box и нажмите F2 для редактирования комментария.
  • Дважды щелкните ЛКМ по заголовку поля комментария для его редактирования.

Удаление Comment Box

Выберите comment box и нажмите кнопку Delete или щелкните по comment box правой кнопкой мыши и в появившемся меню выберите Delete. Оба этих варианта удалят только поле комментария, и ничего не сделают с узлами.

Свойства Comment Box

Следующие свойства comment box можно найти и изменить на панели Details.

Пункт Описание
Comment Color Изменение цвета фона поля комментария. Не забывайте использовать альфа-канал для прозрачности фона.
Color Comment Bubble Если отмечено, то Comment Color применяется к «пузырьку» комментария.
Move Mode При перемещении комментария перемещает и узлы внутри комментария (Group Movement) или комментарий будет перемещаться независимо, без узлов внутри него (Comment).
Добавил: Flakky Категория: Blueprint'ы Читать дальше »

Фев 26 2016
Блок мат. выражений

Блок Math. Expression позволяет записать в себя математическую формулу, после чего будет автоматически сгенерирован Blueprint график. Преимущество данного функционала не только в том, что можно быстро создать математическое выражение, но и в производительности. Блоки Mat Expression будут обрабатываться в процессе игры быстрее, чем вручную собранное выражение из обычных математических блоков в Blueprint.

Создание

Чтобы создать узел Math Expression, щелкните правой кнопкой мыши на поле graph и выберите Add Math Expression…из контекстного меню.

Add Math Expression

Узел Math Expression представляет собой автоматически собираемую graph-подсистему. Чтобы раскрыть его щелкните по нему дважды ЛКМ, чтобы увидеть внутренние функции. По умолчанию название/выражение пустое. Каждый раз, когда Вы переименовываете узел, создается новое выражение с узлами в подсистеме.

Чтобы переименовать узел и обновить подсистему, щелкните правой кнопкой мыши по узлу и выберите Rename.

Например, задайте имя узлу Math Expression выражением:

(1+x)*sin(myVar)-2.4/rand()

После обновления узел Math Expression будет иметь два float входа, X и MyVar, и один float выход.

Узел Math Expression

Если дважды щелкнуть по узлу с этим выражением, Вы увидите следующую graph-подсистему:

Внутренности Math Expression

Graph-подсистема создается при следующих условиях:

  1. По набранному имени (имена, начинаются с буквы) либо создается входная переменная на узле Math Expression, либо функция в подсистеме. В приведенном выше примере: х , sin, MyVar и rand.
    1. Если набранное имя совпадает с существующей переменной в Blueprint, то создается узел Get этой переменной (т.е. если в Blueprint уже есть переменная MyVar).
    2. Если после набранного имени имеется открытая скобка, как sin( или rand(, то создается узел этой функции.
    3. Если предыдущие два условия не выполнены, то набранное имя станет входной float переменной узла Math Expression.
    4. Входные переменные могут использоваться несколько раз, если их имена совпадают.
  2. Численные константы всегда записываются в поле узла математической операции, а не создают какой-то новый узел или входную переменную.
  3. Математические операторы (такие как +, *, -) превращаются в соответствующие узлы.
  4. Как в математике, выражения внутри скобок имеют приоритет, и создаются в первую очередь.

Поддержка выражений

Переменные

Имя переменной может быть любым, но важно помнить следующие моменты:

  • Имена переменных могут содержать числа, но имя не должно начинаться с цифры.
  • Имя переменной не должно совпадать с именем скрытой переменной Blueprint.
  • Следите за типами переменных. Например, boolVar+1.5 (сложение булевой переменной с дробной) является недопустимым выражением.

Порядок операций

Приоритеты выполнения операций (сначала наивысший):

  1. Действия в круглых скобках
  2. Факториалы
  3. Экспоненты
  4. Умножение и деление
  5. Сложение и вычитание

Доступные функции Blueprint

Простые функции Blueprint, которые находятся в библиотеке функций, должны быть доступны. К ним относятся:
Тригонометрические функции (sin/cos/tan, asin, acos и т.п.):
sin(x)
Ограничивающие функции (min, max, clamp и т.п.):
clamp(y,0,20)
Функции округления (floor, fceil, round и т.п.):
round(z)
Показательные функции (square, power, sqrt, loge, e/exp и т.п.)
Некоторые, обычно использующиеся функции или узлы имеют несколько названий. Вот некоторые примеры:
Функция Power: power, pow
Тригонометрические функции (asin/arcsin, acos/arccos и т.п.)

Так как обычно Вы ищите функцию по названию в меню, когда тянете соединительную линию, убедитесь, что введен правильный номер и тип параметра. Узел Math Expression выдаст ошибку, если имеется несоответствие.

Основные виды структур

Есть некоторые основные структуры, которые мы довольно часто используем в математике, такие как векторы, преобразования и т.п.. Вы можете создать и работать с этими типами в своих выражениях.
Ключевое слово vector создаст узел MakeVector:
vector(x,y,z)
Ключевое слово rotator создаст узел MakeRotator:
rotator(x,y,z)
Ключевое слово transform создаст узел MakeTransform:
transform(vec(x,y,z), rot(p,y,r), vec(6,5,4))
Так же, имеется несколько имен у некоторых функций, например у вектора и ротатора.
Ключевые слова для вектора
vector, vec, vect
Ключевые слова для ротатора
rotator, rot

Поддерживаемые операторы

Ниже описаны поддерживаемые операторы. Логические и операторы сравнения можно комбинировать, чтобы создать сложные логические выражения.
Мультипликация:
*, /, %
Сложение:
+, -
Сравнение:
<,>, <=,>=
Равенство:
==, ! =
Логические:
||, &&, ^

Неподдерживаемые операторы

Следующие операторы пока еще не поддерживаются.
Условние:
?:
Побитовые:
|, &, <<, >>
Унарные префиксы:
+, -, ++, --, ~, !, и т.п.
Постфиксы:
++, --, [], и т.п.

Добавил: Flakky Категория: Blueprint'ы Читать дальше »

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница