Ad Clicks : Ad Views : Ad Clicks : Ad Views : Ad Clicks : Ad Views : Ad Clicks : Ad Views :
Oh Snap!

It looks like you're using an adblocker. Adblockers make us sad. We use ads to keep our content happy and free. If you like what we are doing please consider supporting us by whitelisting our website. You can report badly-behaved ads by clicking/tapping the nearby 'Advertisement' X text.

Learn Unity’s Entity Component System to Optimise Your Games

/

Release date:2020, April 14

Author:Penny de Byl

Skill level:Beginner

Language:English

Exercise files:Yes

Unity’s new Data-Oriented Technology Stack (DOTS) and Entity Component System (ECS) programming paradigm have been developed to optimize game development and open up new ways of accessing memory and parallel processing for developing high-performance C# code that takes advantage of contemporary multicore computers. Through the use of the Burst Compiler, your game programs become native code, able to run faster on multiple threads thus pushing the boundaries of the size of your virtual environments and the simultaneous processing of tens of thousands of game objects.

In this course, Penny demystifies Unity’s new DOTS architecture and introduces intermediate Unity users to ECS by upgrading classic Unity projects and developing a multitude of examples of the use of DOTS concentrating on the most popular game mechanics. Using her internationally acclaimed teaching style and knowledge from over 25 years working with games, graphics and having written two award-winning books on games AI, Penny will take you from familiar object-oriented programming and upgrade your skill to the more memory efficient and optimized entity component architecture. Throughout, you will follow along with hands-on workshops designed to take you through every step of becoming familiar with ECS. You will build on numerous scenarios that examine the basics of ECS programming through the new DOTS-specific math and physics libraries.

While DOTS is still in preview, this course aims to assist you in understanding how it works and how games are constructed with it. The knowledge you obtain will further your ability to decipher future released Unity ECS tech demos and handle API updates.

This course requires Unity 2019.3.0f6. and the Hybrid Renderer Package 0.3.3.

Learn how to program and work with:

Entities and Components

The C# Job Systems

Collision Systems

Trigger Systems

User Input to Control Entities

Interfacing with classic Unity and game objects to entity-based systems.

Contents and Overview

The course begins with a section that compares the old way of working with game objects in Unity, through to the creation of a complete ECS system using the exact same scenario in each instance to give you time to compare the programming methods and optimizations gained through implementing DOTS.

Following this, you will dive deeper into the creation and debugging of entities while learning how to tag, identify and add data to them with custom components. You will also learn how to find entities once they are injected into the game environment and to access and manipulate them at runtime.

After you’ve become comfortable with the nature of entities, you will discover how the new math library can be used to replicate many of the functions you’ve become familiar with in the Unity Mathf API. The content will cover transformation, rotations, slerps, pivoting, following waypoints and pursuing and fleeing from targets. A space-based scenario will be created with several planets and thousands of spacecraft programmed to attack, by generating even more thousands of bullets and finally explosions.

Next, you’ll build a blocky Minecraft inspired landscape from cubes that can be infinitely generated in any direction by implementing Perlin Noise and examining how parallel processing (achieved through the C# Jobs system) dramatically speeds up processing that has in the past been limited to the main thread.

On completion of this exercise, a thorough examination of the new DOTS physics capabilities will take place. All the classic Unity elements you’ve become used to will be replicated via the new physics API and ECS job systems. You will learn about collisions, triggers, camera tracking, bullet physics and the basics of recreating Newtonian physics for moving dynamic and kinematic entities.

The course ends with a challenge and project to recreate a third person shooter in which a single player takes on a swarm of zombies.

Watch online or Download for Free

01. Introduction
01. Welcome
02. What Version of Unity Should I Use
05. Join the H3D Student Community

02. DOTS in a Nutshell
01. Understanding DOTS
02. Comparing the Old & the New Part 1
03. Comparing the Old & the New Part 2
04. Comparing the Old & the New Part 3
05. Comparing the Old & the New Part 4
06. Comparing the Old & the New Part 5
07. Your First ECS Challenge
08. Parallel Computing
09. Structures, Classes and Blittable Types

03. Working with Entities
01. Creating and Debugging Entities
02. Accessing and Modifying Entity Data
03. Adding IComponentData Challenge
04. Performing Entity Queries
05. Entity Query Interface Challenge
06. Adding an Entity from Monobehaviour at Runtime
07. Constructing an Entity from Scratch
08. Constructing Sheep Entities from a Mesh Challenge

04. Transformation Mathematics in DOTS
01. Performing Translations
02. Performing Rotations
03. Performing a Slerp to Face a Target
04. Rotating Around a Pivot Point
05. Pivoting Challenge

05. Working with Custom Components
01. Getting Player Transformations into Entities
02. Adding and Setting Data Values in a Custom Components
03. Updating Custom Component Values
04. Waypoint Follow Challenge

06. Project Space Wars Simulation
01. Finding Closest Planet
02. Attacking and Retreat Movement
03. Spawning an Entity from an Entity Part 1
04. Spawning an Entity from an Entity Part 2
05. Spawning Entities from Another Location Part 1
06. Spawning Entities from Another Location Part 2
07. Restricting the Lifetime of an Entity
09. Implementing Line of Sight in an Entity
10. Faking Collisions
11. Instantiating Explosions
12. A System for Scaling Particles

07. Project Infinite Cube World
01. Creating a Landscape with Cubes
02. Using Perlin Noise for Height
03. Enhanced Perlin Heights
04. Changing Materials on an Entity
05. Identifying Bottlenecks and Solutions to FPS Drop
06. Scrolling the Landscape with the Player

08. DOTS Physics
01. The Physics Components
02. An ECS Physics-Based Character Controller
03. Spawning Multiple Physics Entities
04. Shooting Physics Bullets Challenge
05. Moving a Bullet with Physics
06. Upgrading a Package
07. Detecting Collisions
08. Using Custom Values in a Collision Event
09. Destroying an Entity on Collision
10. Entity Tracking with the Camera
11. Detecting Physics Triggers
12. Converting to a Dynamic Character
13. Using Custom Values in a Trigger Event

09. Raycasting
01. Starting with a Tower Defence Setup
02. Performing a Raycast Hit Part 1
03. Performing a Raycast Hit Part 2
04. Destroying an Entity Hit by a Raycast
05. Performing Raycast Distance Hits P1
06. Performing Raycast Distance Hits P2
07. Locating and Following The Closest Physics Entity
08. Destroying Tracked Physics Entity
09. Destroying Zombie Challenge P1
10. Destroying Zombie Challenge P2

10. Final Words
01. Some Final Words from Penny
02. Where to now

[Unity] Learn Unitys Entity Component System to Optimise Your Games_Subtitles.7z
[Unity] Learn Unitys Entity Component System to Optimise Your Games.7z


Join us on
  Channel    and      Group

  • Facebook
  • Twitter
  • Google+
  • Linkedin
  • Pinterest

3 Comments

  1. Can you please kindly upload a course for learning tv paint animation from here https://www.bloopanimation.com/tvpaint-animation/ … thanks alot you guys aredoing great work!!

Leave a Comment

Your email address will not be published. Required fields are marked *