Mastering Coroutines in Unity


Master Coroutines and create UI Animation system to drive your games

What you will learn

Using of coroutines inside Unity with C#

Create state machines with coroutines

Create custom UI animation system

Optimize slow methods with coroutines

Create simple idle clicker game

Programming tips and tricks

Description

The course begins with a basic explanation of coroutines and why they are so useful.

Then you’ll learn the difference between normal c# methods, update method and coroutine.

Following on, we will start to build our UI animation system driven by coroutines.

Our UI Animation will include some advanced techniques like:

  • how to pause and resume the coroutine
  • how to check if coroutine is running
  • how to delay coroutine
  • how to get a callback from the coroutine
  • how to start multiple coroutines all at once
  • how to write custom yield instruction

Later when our system is finished we will export it as Unity package so we will be able to use it in our next projects.

Our first project where we will use our UI Animation system will be simple animated game Menu. Which will show us the flexibility of our system. The second biggest project will be a complete idle clicker game, full of interactive animations. The interesting fact will be that the game is created very effective without any update method.


Subscribe to latest coupons on our Telegram channel.

In the end, we will learn how to create State machines with the help of coroutines and also one very cool way how to optimize slow methods.

Why learn from me?

I created this course to share my passion for making games and help others to simplify their work.

I am trying to find effective and fast methods to solve problems, so I hope you will find some of my systems and tips and tricks useful also for you.

What you’ll learn

  • What are coroutines and what they are good for
  • Create UI Animation System
  • Callbacks from coroutines
  • Trigger Actions When Property is changed
  • Program Simple Game Without the need of Using Update Method
  • Optimize slow methods with coroutines
  • Write custom yield instructions
  • Create simple state machines with coroutines

Are there any course requirements or prerequisites?

  • Mac or PC.
  • You will need to download and install Unity 19.1 or later
  • You should be familiar with C# and the Unity Game Development Engine
English
language

Content

Introduction

Course Overview
Useful Visual Studio Extension

Basics

Coroutines Introduction
Yield Instructions
How To Start And Stop Coroutines

Building UI Animator

Driver Introduction
Driver Playback Direction
Driver Progress
Driver Looping
Driver Callbacks
Driver Custom Wait Time
Driver Autostart, Pre-Start and Post-Reset
Driver Refactoring
Transform Controller Introduction
Controller Auto Connect To Driver
Controller Animate From Value To Value
Controller Animate In Specific Axes
Controller Animation Curve Easing
Controller Refactoring To Abstract Class
Image Controller
Canvas Group Controller
Controller Preview Animation In Editor
Controller Remote Driver Access
List Player Part 01
List Player Part 02
UI Animator Refactoring And Export

Animating Game Menu With UI Animator

Animating Game Menu Part 01
Animating Game Menu Part 02

Building Idle Clicker Game

Game Manager Part 01
Game Manager Part 02
Creating Item Data And Item Manager
On Click Process
Creating Item Animations
Item Available Logic
Item Can Buy Logic
Item Can Buy Manager Logic
Finishing Item Prefabs
Robot Animations
Cook Progress Manager Part 01
Cook Progress Manager Part 02
Start Game Animation

Bonus State Machine Example

Project Overview
Basic State Machine Part 01
Basic State Machine Part 02
Adding Animations With Variations
Optimizing Slow Methods