Asynchronous Loops

Lazlo Bonin (Lead Developer) 2 years ago updated 2 years ago 3

Loops will be modified to support asynchronous units inside their body.

This means, for example, that you'll be able to use Wait units to delay the next iteration of a loop.

For this to work, Bolt has to know when an iteration of a loop is finished. This will be implemented by moving the Exit port of the current loop units to a new separate End Loop unit. 

When flow enters the End Loop, the loop condition will be checked. If it should iterate, it'll call the body again. If it is depleted, the exit port of End Loop will be called.

Using Break Loop will still exit the loop instantly, calling the exit port of End Loop.

In order to preserve existing graphs, the current loop units will be marked as obsolete. They will still work, but will not support asynchronous bodies. Only newly created loop units will support it.

Bolt Version:
Unity Version:
Scripting Backend:
.NET Version (API Compatibility Level):