11-29-2024, 12:30 PM
Modern Unity Ui With Ui Toolkit
Published 9/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 6.08 GB | Duration: 22h 2m
A Complete Overview Of Unity's New UI System
What you'll learn
Create modern and reusable User Interfaces in Unity
Understand all UI Toolkit components
Manipulate your UI from scripts
Combine your UI and gamelogic
Requirements
Some basic programming and Unity knowledge. If you worked with Unity for about 5 hours you should be fine.
Description
This course is a deep dive into Unity's UI Toolkit. You will learn most of the components that make up UI Toolkit and be able to create complex UI Systems for your games or apps. This course uses a mix of theory and practice. We will create dozens of little UI-Components and examples. Furthermore, we will have a course project on which we will practice what we learned in the particular chapters. Finally, we will bring it all together and create a fully functional UI-based game. While this course is not explicitly covering Editor Scripting most of the content in the course will also apply to it.Here are some of the topics that we will cover:Understanding UXML and USS FilesUnderstand the basic building blocks of UI Toolkit. We will talk about the concept of a visual tree and why it's a good idea to separate structure, styling and behavior.Layouts with FLEXBOXUI Toolkit uses the Flexbox system which is also used in web technologies. TemplatesWe will learn how we can reuse pieces of our layout with templates.Events and Event PropagationNo UI System can function without events. UI Toolkit has its own Event-System with modern features like event-propagation which we can use to our advantage.UQueryUnity is still a game engine, so more often than not most of your work will be done through scripts. U need an efficient way to connect your scripts and your UI and manipulate certain elements of your UI. In order to do that you first need to find those elements. UQuery provides a comfortable way how you can do that.Data BindingWhile for editor scripting there is already a system in place which helps you bind your data to your components, this is not the case for runtime. Therefore we will look at some tools and techniques how you can do this manually.Custom ComponentsUI Toolkit has a library of several build-in controls, but obviously, those can not cover every use case that you might come across. In this section, we will see how to create our own controls and thereby create our own little library of reusable UI Elements.ManipulatorsOne rule of good software development is the separation of concerns. In this section, we will learn how we can group the behavior of particular elements into manipulators.and much more.
Overview
Section 1: Introduction
Lecture 1 What Is UI Toolkit?
Lecture 2 What Is This Course About?
Lecture 3 What Is This Course NOT About?
Lecture 4 Who Is This Course For?
Lecture 5 Prerequisites
Lecture 6 Comparison Of Unity's UI Systems
Lecture 7 Let's Get Started
Lecture 8 Unity Versions
Lecture 9 Course Resources
Section 2: Introduction Part 2 - From Theory To Practise
Lecture 10 Detailed Course Overview (Sections 2-7)
Lecture 11 Section Overview
Lecture 12 UI Toolkit Workflow
Lecture 13 Visual Trees
Lecture 14 Advantages Of Visual Trees
Lecture 15 From Visual Trees To UXML
Lecture 16 More UXML
Lecture 17 Understanding Stylesheets
Lecture 18 USS Files In UI Builder
Lecture 19 More USS
Lecture 20 Simple Selectors
Lecture 21 Selector Precedence
Lecture 22 Complex Selectors - Part 1
Lecture 23 Complex Selectors - Part 2
Lecture 24 Pseudo Selectors
Lecture 25 Bringing It All Together
Section 3: Layout and Flexbox
Lecture 26 Section Overview
Lecture 27 Terminology
Lecture 28 Containers And Items
Lecture 29 Understanding The Main-Axis Concept
Lecture 30 Understanding Flex Direction
Lecture 31 Flex Direction In UI Builder
Lecture 32 The Flexbox Rabbit Hole
Lecture 33 Flex Direction Example 1
Lecture 34 Flex Direction Example 2
Lecture 35 Justify Content
Lecture 36 Align Items
Lecture 37 Align-Properties Example
Lecture 38 Flex Basis
Lecture 39 Definition For Flex Basis
Lecture 40 Pixel. Percentage or Auto
Lecture 41 Competition For Space
Lecture 42 Shrink & Grow
Lecture 43 Shrink & Grow Units
Lecture 44 Understanding Flex Basis
Lecture 45 Flexbox Wrapup
Lecture 46 Simple Flexbox Pattern Example
Lecture 47 Simple Flexbox Pattern Example 2
Lecture 48 Simple Flexbox Pattern Example 3
Lecture 49 Positioning
Section 4: Introducing The "Course Project"
Lecture 50 Introducing The "Course Project"
Lecture 51 (Optional) Course Project Setup Part 1
Lecture 52 (Optional) Course Project Setup Part 2
Section 5: Build-In Controls
Lecture 53 Section Overview
Lecture 54 Buttons
Lecture 55 Add Basic Functionality To Controls
Lecture 56 Working With Text
Lecture 57 Themes
Lecture 58 Complex Controls - Slider
Lecture 59 UI Toolkit Debugger
Lecture 60 Styling Controls
Lecture 61 Using The Slider
Lecture 62 Project : Practice Simple Controls Part 1
Lecture 63 Project : Practice Simple Controls Part 2
Lecture 64 (Optional) Using The Documentation
Section 6: Templates
Lecture 65 Section Overview
Lecture 66 Working With Visual Elements In Scripts
Lecture 67 Templates in UI Builder
Lecture 68 Templates In Scripts
Lecture 69 Loading Assets In Scripts
Lecture 70 Project: Practice Templates
Section 7: Finding Elements With UQuery
Lecture 71 Section Overview
Lecture 72 Why are there 3 different ways?
Lecture 73 Setup Explained
Lecture 74 UQueryBuilder
Lecture 75 How To Find Single Elements With Q
Lecture 76 How To Find Any Element With Query
Lecture 77 Swiss Army Knife For Queries
Lecture 78 Project: Practice Queries
Section 8: Events in UI Toolkit
Lecture 79 Detailed Course Overview (Sections 8-14)
Lecture 80 Section Overview
Lecture 81 Events Overview
Lecture 82 Event Data
Lecture 83 Understanding Event Propagation
Lecture 84 Event Propagation In Code Part 1
Lecture 85 Event Propagation In Code Part 2
Lecture 86 Event Example 1
Lecture 87 Event Example 2
Section 9: Data Binding
Lecture 88 Section Overview
Lecture 89 Data Binding Intro
Lecture 90 Simple UI Binding
Lecture 91 Adding A Data Class
Lecture 92 System Events and C# Properties
Lecture 93 Creating A "Card Component"
Lecture 94 Simulating Data
Lecture 95 Using VisualElement.userdata
Lecture 96 Dynamically Adding Elements
Section 10: Data Binding With Special Controls
Lecture 97 Section Overview
Lecture 98 Simple Dropdown
Lecture 99 Project: Beyond Build-In Controls
Lecture 100 Project: DropdownController
Lecture 101 Project: Displaying The Fractions
Lecture 102 ListView
Lecture 103 Project : List Preparation
Lecture 104 Project : ListController
Lecture 105 Project: Displaying Selected Items
Lecture 106 Small Correction On The Last Video
Section 11: Custom Controls
Lecture 107 Section Overview
Lecture 108 Our First Custom Control
Lecture 109 Add Styling To A Custom Control
Lecture 110 Custom PopupWindow Part 1
Lecture 111 Custom PopupWindow Part 2
Lecture 112 Adding Custom Attributes
Lecture 113 Adding Functionality To A Custom Control
Lecture 114 Project : Adding A Custom Star Control Part 1
Lecture 115 Project : Adding A Custom Star Control Part 2
Section 12: Manipulators
Lecture 116 Section Overview
Lecture 117 Motivation
Lecture 118 Creating Our First Manipulator
Lecture 119 Understanding Motion-Behavior Like Dragging
Lecture 120 Manipulator For Dragging
Lecture 121 Manipulator For Resizing
Lecture 122 Project : Adding A Tooltip Manipulator Part 1
Lecture 123 Project : Adding A Tooltip Manipulator Part 2
Lecture 124 Project : Adding A Tooltip Manipulator Part 3
Section 13: Extra: "Epoch Carousel"
Lecture 125 What are we going to build?
Lecture 126 Assembling The Carousel
Lecture 127 Adding Content To The ScrollView
Lecture 128 Let's Implement The Scolling Behavior
Lecture 129 Display The Prior And The Next Epoch
Lecture 130 Adding The Epoch Bullets
Section 14: Game Project
Lecture 131 What are we going to build?
Lecture 132 Basic Layout
Lecture 133 Content For Top Containers
Lecture 134 Content For Bottom Containers
Lecture 135 Adjusting The Fonts
Lecture 136 Adding Placeholders For The Answer-Icons
Lecture 137 Let's Talk About Dragging
Lecture 138 Simple Dragging Pattern
Lecture 139 Dropping The Icons
Lecture 140 Game Architecture
Lecture 141 Game Data and State
Lecture 142 Implementing The Game Logic
Lecture 143 Connecting The Game Controller
Lecture 144 Connecting The First UI Pieces
Lecture 145 Add Some Data (aka some questions)
Lecture 146 The "Next Hint Button"
Lecture 147 Adding The Manipulator To The Icons
Lecture 148 Load Real Icons Dynamically
Lecture 149 Checking Answers
Lecture 150 Let's Provide Some Feedback To The Player
Lecture 151 Add Pressure With A Timer
Lecture 152 Thank You!
Unity developers interested in User Interfaces