02 — Швидкий старт¶
🇬🇧 English | 🇺🇦 Українська
Один повний приклад: desktop-персонаж бере предмет, кидає його й відчиняє двері. Після кожного кроку ви бачите результат. Покрокові вправи з поясненнями — у 14 — Покрокові уроки.
Кроки¶
- Увімкніть Edit → Plugins → InteractionSystem у проєкті UE 5.8 і перезапустіть редактор.
Результат: у Components → Add з'явився InteractorComponent.
- У Blueprint персонажа увімкніть Replicates і додайте
InteractorComponent, прикріпивши його до камери. ЗалиштеUse Pawn Viewpointувімкненим: джерело братиме поточну точку огляду контролера.
Результат: у вікні компонентів джерело стоїть під камерою.
- Створіть Blueprint від
InteractionMasterItem. ПризначтеMesh Componentстатичний mesh із простою колізією, яка на каналіVisibilityвідповідає Block. Розмістіть предмет перед камерою на відстані до 300 см.
Результат: у грі поруч із предметом з'являється маленька точка, а при наведенні — E.
- У своєму input mapping прив'яжіть одну дію до
Request Grab, другу — доRequest Release. Для відпускання без кидка передайте нульові вектори; для кидка — швидкість у см/с і кутову швидкість у градусах/с.
Результат: після натискання першої дії предмет опиняється перед камерою; друга дія відпускає або кидає його.
- Для дверей або кнопки реалізуйте
Interactionі викликайтеRequest InteractionзамістьRequest Grab. Готовий фізичний актор також має серверну подіюOn Interacted. Покроковий приклад дверей, які бачать усі гравці, — урок 2.
Результат: двері реагують на натискання.
E — лише початковий текст підказки. Змініть Interaction Prompt або призначте текстуру Focus Icon → Sprite відповідно до ваших клавіш. Плагін сам не додає клавіш.
Простими словами. Наведення — це лише «показати пальцем». Сам предмет потрапляє в руку, коли сервер погодився: в одиночній грі це миттєво, у мережевій — через час обміну з сервером.
Якщо щось не працює¶
Введіть у консолі гри InteractionOverlay. Праворуч з'явиться панель: чи бачить джерело предмет (Focus), у якому стані рука (State) і що відповів сервер (Last answer). Розшифровка — у 15 — Інструменти налагодження.
Готовий приклад¶
У Content Browser увімкніть Show Plugin Content і відкрийте /InteractionSystem/Demo/InteractionLab/Maps/InteractionLab. Рух — WASD, огляд — миша, E — захоплення або двері, F — кидок. Персонаж демо створює своє введення Enhanced Input у коді й не змінює налаштувань вашого проєкту.
У C++-модулі додайте InteractionSystem у залежності; для готових предметів — також InteractionSystemWorld (12).
Що далі¶
- Сім покрокових уроків від першого предмета до мережевого налагодження — 14.
- Персонаж з Enhanced Input, підказки в HUD, двері й VR-руки в Blueprint — 11.
- Те саме в C++, власна ціль захоплення й серверні функції маніпуляції — 12.
- Як сервер перевіряє запити і чому дію може бути відхилено — 13.
- Що варто знати до інтеграції — Обмеження та відомі проблеми.