As you develop more advanced projects, it’s often useful to split up the work your code does, either sequentially across frames or in parallel threads of execution. This could be for functional reasons, to produce an effect that should develop gradually over several frames. Or it could be for efficiency, to split work into multiple threads and avoid blocking the main thread waiting for a task that’s better done in the background.
Topic | Description |
---|---|
Async and Await support | Asynchronous programming in Unity with the .NET async and await keywords and Unity’s own custom Awaitable class. |
Coroutines | Coroutines are a synchronous way to split the execution of a task across multiple scenesA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info See in Glossary. This can be useful for tasks that should progress gradually over several frame, such as a fade out effect. |
Job system | Use Unity’s own Job system to get the most out of multi-core CPUs and parallelize your algorithms. |