Steamforge Conveyor Belt System – UE4 Implementation Concept - wwestlake/Steamforge GitHub Wiki
Steamforge Conveyor Belt System – UE4 Implementation Concept
Overview
This system provides a lightweight, modular simulation of a conveyor belt using Unreal Engine 4. Rather than physically moving items, it uses a chain of skeletal bone-based actors that attach and carry items along a predefined path. The illusion of continuous motion is achieved through smooth interpolation and strategic attachment/detachment logic.
1. Core Components
Conveyor Slot Actor
- Type: Blueprint Actor
- Structure:
- One skeletal mesh with a single bone
- Named socket at the bone ("ItemSocket")
- Collision box for detecting item overlap
- Function:
- Detects item overlap
- Attaches valid item to bone socket
- Moves along path
- Detaches item at end of conveyor
Conveyor Belt Parent
- Structure:
- Static mesh for belt visual
- Array of slot actors spaced along a spline or straight axis
- Start and end bounds for lifecycle management
- Function:
- Spawns and positions slot actors
- Updates their position each tick
- Recycles slot actors from end to start
2. Motion System
- Mechanism:
- All conveyor slot actors are moved incrementally per tick or timeline
- Movement follows either a spline path or a linear offset vector
- Parameters:
- Speed (units/sec)
- Spacing interval
- Loop toggle (start → end → recycle)
3. Item Handling Logic
-
Attachment:
- On overlap, check if slot is empty
- If true, attach item to socket using
AttachToComponent
- Disable item physics during attachment
-
Detachment:
- When slot reaches end zone:
- Detach item
- Enable physics
- Allow it to land/fall naturally
- Slot actor is reset and repositioned at start
- When slot reaches end zone:
4. Advantages
- Performance-Friendly:
- Avoids complex animations or dynamic physics on the belt
- Only moves lightweight proxy actors
- Highly Modular:
- Conveyor belts can vary in length, direction, and speed
- Slot actors are fully reusable
- Game-System Friendly:
- Easy to plug into crafting, sorting, or factory logic
- Items can be tagged, read, or routed in flight
5. Optional Features
- Visual Debug Aids:
- Toggle for showing bone positions and slot indicators
- Item Filters:
- Slots only attach specific item classes
- Processing Zones:
- Points along the belt that trigger actions on attached items (e.g., label, scan, modify)
Summary
This conveyor belt system simulates item transport by proxy, using bone-socket actors that ride a path and carry attached objects. It's an efficient, highly customizable method of representing automation and industrial motion within Steamforge’s dynamic, physics-enabled world.