Unreal engine 4 - використання інтерфейсів

Unreal engine 4 - використання інтерфейсів

Використання Blueprint Interface надає загальний метод взаємодії з декількома різними типами об'єктів які всі поділяють деякі специфічні функціональні можливості. Це означає, що ви можете мати абсолютно різні типи об'єктів, таких як автомобіль і дерево і мати схожі свойтва, так наприклад вони обидва можуть бути розстріляні з зброї і отримати шкоди.
Створюючи Blueprint Interface. який містить функцію OnTakeWeaponFire. і який використовується в цих об'єктах, ви можете визначити свою функціональність для кожного з об'етов, яка буде викликатися при виконанні функції OnTakeWeaponFire.

Додавання інтерфейсу

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

  1. Відкрийте Level Blueprint.

Unreal engine 4 - використання інтерфейсів

  • Натисніть Class Settings на панелі інструментів.

    Unreal engine 4 - використання інтерфейсів


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

    Коли інтерфейс доданий до блупрінту, блупрінт повинен реалізовувати функції інтерфейсу для того, щоб виконувати будь - які дії при виклику. Це робиться шляхом розміщення нодов подій для функцій інтерфейсу в EventGraph.

    1. Клацніть правою кнопкою миші на EventGraph і виберіть Add Event> Event ....
      Unreal engine 4 - використання інтерфейсів

      Виберіть тип події який ви хочете додати до графу.
    2. Створіть функціональність яка повинна виконуватися при виклику даної події.
      Unreal engine 4 - використання інтерфейсів

    Додавання функцій до інтерфейсу

    Функції інтерфейсу виконуються за рахунок використання інтерфейсу повідомлень, які виглядають і діють як звичайні функції.

    Unreal engine 4 - використання інтерфейсів

    Виклик функцій інтерфейсу з інших блупрінтов

    Інтерфейси корисні для забезпечення можливості обміну даними між різними блупрінтамі. Функції з єдиного інтерфейсу можна викликати з інших блупрінтов. Це може бути зроблено, при двох умовах:

    • Обидва блупрінта реалізують однаковий інтерфейс з необхідною функцією.
    • Зухвалий блупрінт знає ім'я екземпляра в грі іншого блупрінта.

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

    Unreal engine 4 - використання інтерфейсів

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

    Unreal engine 4 - використання інтерфейсів

    Unreal engine 4 - використання інтерфейсів

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

    Зверніть увагу, в цьому зображенні ми посилаємо інший блупрінт в якості входу Target. Якщо блупрінт не використовує інтерфейс, то нічого не станеться.

    Unreal engine 4 - використання інтерфейсів

    Щоб вказати блупрінт, який існує в межах рівня, краще зробити публічну змінну «Actor» типу, і призначити відповідний блупрінт в значення цієї змінної, використовуючи панель Details.

    Виклик функцій інтерфейсу з Level Blueprint

    Інтерфейси також дають можливість для зв'язку між підрівнями за допомогою Get Streaming Level Ноди. Якщо завантажений рівень, то Interface Message викликатиме функцію з блупрінтом цього рівня в якості мети.

    Unreal engine 4 - використання інтерфейсів

    Визначення функцій інтерфейсу

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

    Unreal engine 4 - використання інтерфейсів

    Unreal engine 4 - використання інтерфейсів

    Ми могли б створити просту мережу, щоб зробити порівняння чисел.

    Unreal engine 4 - використання інтерфейсів

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

    Unreal engine 4 - використання інтерфейсів

    Схожі статті