Changelog - Theuntextured/AsyncConveyorPlugin GitHub Wiki


  • Added a Use New Splitters bool to the manager. This will avoid items from slowing down when approaching splitters, but it will also make items overlap inside splitters. It is recommended to turn this on if your splitters are covered up (Like they are in Satisfactory) and off if they are visible (Like in Factorio or Minecraft's Immersive Engineering mod).


  • Fixed bug where items would not render after being loaded until a new item of its type would be inserted.


  • Fixed visual bug introduced in v2.1.4.
  • Changed color of the debug text from blue to magenta.


  • Fixed a visual glitch in 5.4.
  • Added the debug.Conveyor CVar. More info here.

v2.1.2 & v2.1.3

  • Bug fixes, including disabling Nanite on conveyor items.


  • Fixed for UE 5.4.
  • Minor changes to the code.
  • Added a SetItemCullDistance function to the manager.


  • Update rate of items is hugely improved. (tested on a Ryzen 7 5800X with 60 000 items, update rate went from approximately 50ms in v2.0 to 10ms in v2.1)
  • Async Tasks (Item extraction, insertion and queries) are now multithreaded, meaning that they will use ParallelFor rather than AsyncTask, allowing for multiple threads to work on them.
  • Item processing is now also multithreaded.
  • Loading items can now be done in game thread using a Boolean parameter.
  • Fixed bug with items occasionally snapping back when merging.
  • Item spacing is now capped to the connection length - 0.1 to avoid the above bug and other performance issues.
  • Setting speed and spacing of conveyors no longer have the chance to cause data races and therefore a crash.
  • Fixed missing includes in shipping build.
  • Extracting items and GetItemAtLocation now requires a desired conveyor component. (Inserting is unaffected, but using this parameter is still strongly advised)
  • Added more Stat Groups to better represent what is going on.


  • Rewritten most of the plugin.
  • Improved compatibility with Unreal Insights.
  • Added STATGROUP_Conveyors to profile in-editor.
  • Completely reworked the way items' movement is rendered. Now using material world position offset.
  • Changed LOD calculations.
  • Added distance and frustum culling optimizations.
  • Changed where custom item data is stored.
  • Changed colors in debug mode.
  • Added debug strings to debug mode.
  • Drastically decreased the impact on fps of the plugin.
  • GetItemMesh function has been renamed to GetItemVisualInfo.
  • Updated demo project.
  • Improved stability.
  • Unreal Engine 5.1 and 5.2 are now unsupported.


  • Crash fix when calling async tasks.
  • Added option to use Instanced Static Meshes rather than Hierarchical Instanced Static Meshes.


  • Performance improvement by disabling conveyor item meshes affecting distance field lighting.
  • Added basic support for profiling with Unreal Insights. (Disabled by default)
  • Renamed FItem to FConveyorItem.
  • Minor tweaks to code.


  • Fixed a crash when connecting non-thread safe functions to "On Finished" on async nodes.
  • Added the ability to make material overrides for items. This affects the GetItemMesh function.


  • Made Conveyor component's properties expose on spawn, making it possible to add it via blueprint. This will make it possible to have conveyors with custom shapes which are defined during runtime. Similar to how Satisfactory's conveyors work.


  • Added control over whether the rotation of the items follow the direction of motion or if it is constant.
  • Added new Showcase


  • Added the ability to make connections between nodes follow a spline causing items move along a spline. (Documentation)
  • Added a VectorTolerance float property to the Conveyor Manager.


  • Fixed AsyncGetItemAtLocation transform output always being a zero Transform
  • Improved mergers, making them round-robin where possible
  • Improved stability
  • Minor bug fixes


  • Fixed bug where splitters would jam the system if one output was full.
  • Fixed bug where multiple items would try to merge at once, causing strange teleporting effects.
  • Removed GetNodeAtLocation blueprint function (and its async variant).
  • Optimized finding nodes by providing a conveyor component as a parameter.
  • Fixed AsyncGetItemAtLocation


  • Released publicly.