Ir al contenido
Medios 1 para el artículo Interaction System – Pure C++ | Press & Hold | Zero Tick | UE 5.4–5.7

Descripción

🎬 Demo Video: https://youtu.be/mgm3DgOgP7k
📄
Documentation: https://drive.google.com/file/d/1zQq7I9GMW1FbqhWOxZ_lcH9wKEyET-DF/view?usp=sharing

Interaction System is a lightweight, pure C++ interaction framework for Unreal Engine. Attach a single component to your character, implement one interface on your actors, and your interaction system is ready in minutes.
Built on a Zero Tick architecture — no per-frame polling. Detection runs on Sphere Overlap events combined with a Line-of-Sight trace to ignore objects behind walls. Target selection updates on a timer (default 0.1s), keeping runtime overhead minimal.

━━━━━━━━━━━━━━━━━━━━━━━━
⚡ QUICK SETUP
━━━━━━━━━━━━━━━━━━━━━━━━

  1. Add UInteractionComponent to your character

  2. Bind TryPressInteract / TryBeginHoldInteract / TryEndHoldInteract to your input actions

  3. Implement IInteractable on any actor (or inherit from AInteractableActorBase)

  4. Done — no Tick, no boilerplate, no engine modification required

━━━━━━━━━━━━━━━━━━━━━━━━
🔧 FEATURES
━━━━━━━━━━━━━━━━━━━━━━━━
✅ Press & Hold interactions with hold progress callbacks
✅ Sphere Overlap detection + Line-of-Sight trace (ignores occluded objects)
✅ Priority-based target selection with distance tiebreaker
✅ Per-object cooldown support
✅ Zero Tick architecture (timer-based, event-driven — no per-frame polling)
✅ Blueprint-exposed delegates (Target Changed, Started, Completed, Hold Progress, Cancelled)
✅ Fully playable demo level included (Door, Chest, Lever, NPC)
✅ Enhanced Input ready — bind any key, no hard-coded controls
✅ Works with any existing Character or Pawn class

━━━━━━━━━━━━━━━━━━━━━━━━
📦 WHAT'S INCLUDED
━━━━━━━━━━━━━━━━━━━━━━━━

  • IInteractable interface — implement on any actor

  • UInteractionComponent — attach to your character (Sphere Overlap + LOS)

  • AInteractableActorBase — convenience base class with cooldown, priority, hold settings exposed in Class Defaults

  • 4 demo actors (C++ + Blueprint): Door, Chest, Lever, NPC

  • Demo character (third-person, Enhanced Input)

  • UI widgets: Interaction Prompt, Hold Progress Bar, NPC Dialogue Popup

  • English & Korean setup guide (PDF)

━━━━━━━━━━━━━━━━━━━━━━━━
📡 DELEGATES
━━━━━━━━━━━━━━━━━━━━━━━━

  • OnInteractionTargetChanged — drive your prompt UI

  • OnInteractionStarted — trigger animations or sounds

  • OnInteractionCompleted(bSucceeded) — handle results

  • OnHoldProgressUpdated(ElapsedTime, Duration) — drive progress bar

  • OnHoldCancelled — reset UI on interrupt

  • OnOpened (Chest), OnLeverToggled, OnNPCTalked — connect your own logic

━━━━━━━━━━━━━━━━━━━━━━━━
🛠 TECHNICAL
━━━━━━━━━━━━━━━━━━━━━━━━

  • Pure C++ (no Blueprint-only logic)

  • Unreal Engine 5.4 – 5.7

  • Platform: Win64

  • No third-party dependencies (Enhanced Input plugin required, built into UE 5.4–5.7 and enabled automatically)

  • No engine modification required

  • Tested on UE 5.4, 5.5, 5.6, 5.7

Formatos incluidos