░ ░▒▒▒▓▓█████▌░░ University of OXford & University of camBRiDGE ░░▐████▓▓▒▒▒░ ░
▄▄██▓▄ ▐███▌ ████▐███████▓▄ █████████▄ ▐███▌██████▓▄▄ ▄▄▓████▓ ▐████████
▄████████████ ▐███▌▐███▌▀████▌████▌ ▀███▓ ▀▀▀ ███▓▀▀████ ▄▓███▀ ▐███▓▀▀▀
▐███▀ ▀███▀███▓▄███▀ ▐███ ▄███▀▐███▓ ▄████▀▐███▌███▓ ███▓████ ▓███▌
███▌ ▐██▌ ▀████▀ ▓███████▄▄▐████████▓▄ ▐███▓███▓ ▐██████▌ ▀█████▓██████▓
████▄ ▄███▄▄███▀███▓ ████ ▀███▓███▓ ▀████▌████▐███▌ ███████▓ ▓██████▌
▐████████▀████▌ ███████▌ ▄███████▌ ████████▓███▌▄▄███▓▀█████▄▄████▓███▄▄▄▄▄
▀▀▓██▀▀ ▐████ ▐███▓████████▓▀████▌ ▐███████████████▓▀▀ ▀▀▓████▀▀░▓███████▌
...is a collective term for characteristics that the two institutions share.
░
█ Unity Expert Gameplay Programmer Certification Courseware
█
█
█ by Unity Technologies
█ Publisher: Addison-Wesley Professional
▓ Release Date: May 2019
▓ ISBN: 9780135898949
▓
▓ Lecture Size: 86x350
▒ Lecture Date: 05.2019
░
░ Lecture Link: www.oreilly.com
░
░
:
| Estimated 10 hours of video instruction
|
| Overview
|
| This series of courses help prepare you to take the Expert
| Gameplay Programmer Certification exam, and covers six topics
| areas distributed over five lessons. These topics include Rapid
| Gameplay Prototyping and Unity Services Implementation; NPC Design
| programming and User Interface Implementation; Level Design
| Programming and Performance Optimization. The format of these
| courses are project and activity based and participants will need
| to feel comfortable individually programming a game in Unity.
| Participants will be challenged with a series of realistic
| programming problems in Unity video-game projects, the kind true
| gameplay programming experts face every day. Each challenge is
| inspired by one or more of the topics covered in the exam.
|
| Description
|
| This course is exam preparation for UnityÆs Expert Gameplay
| Programmer Certification Exam. This course will challenge you with
| a series of realistic programming problems in Unity video-game
| projects, inspired by one or more of the topics covered in the
| Expert Gameplay Programmer Exam. Throughout this course, you will
| work on a 2D ôinfinite platformerö game project and 3D ôDual-Stick
| Survivorö game project. This will help you practice prototyping
| core gameplay mechanics, including scripting GameObjects and their
| components, coordinating UI systems, and implementing UI
| scripting. This will also include configuring GameObject physics,
| spawning Prefabs, designing level logic and behavior, scripting
| animation systems and events, and working with in-game cinematics.
|
| Throughout this course, you will learn Unity Services
| Implementation techniques, including: streamlining your project
| management with Unity Cloud Build, monetization with Unity Ads and
| in-app purchases, and Unity Analytics. By the end of this course,
| you will implement in-app purchases for a 3D "Dual-Stick Survivor"
| game project.
|
| About the Instructor
|
| Unity Technologies is the creator of the worlds most widely used
| real-time 3D (RT3D) development platform, giving developers around
| the world the tools to create rich, interactive 2D, 3D, VR and AR
| experiences. Our 1000 person engineering team keeps Unity at the
| bleeding-edge of technology by working alongside partners such as
| Facebook, Google, Microsoft, and Oculus to ensure optimized
| support for the latest releases and platforms. Experiences made
| with Unity reach nearly 3 billion devices worldwide, and were
| installed 24 billion times in the last 12 months. Unity is
| powering RT3D in architecture, automotive, construction,
| engineering, film, games, and more.
|
| By successfully completing the projects in all four courses,
| participants will have had extensive, guided practice in the
| programming skills needed to pass the Unity Expert Gameplay
| Programmer exam.
|
| Skill Level
|
| Advanced
|
| What You Will Learn
|
| Interpret Game Design Document to determine basic game
| functionality
| Build a prototype to illustrate basic game functionality
| Identify conflicts and solutions during prototype stage to
| improve game play
| Enable ads in the game to demonstrate knowledge of Unity
| Services
| Demonstrate knowledge of NPC logic and behavior
| Demonstrate knowledge of animation behavior systems
| Develop a HUD to demonstrate knowledge of UI coordinate
| systems
| Create an options menu to demonstrate knowledge of user
| interface scripting
| Create a basic game world level to demonstrate knowledge of
| level design
| Add characters to your level
| Demonstrate knowledge of gameplay debugging
| Demonstrate knowledge of platform optimization
|
| Who Should Take This Course
|
| Primary: Game Developers seeking extensive, guided practice in the
| programming skills needed to pass Gameplay Programmer Expert
| Certification
|
| Course Requirements
|
| Prerequisites: 2-3 years of experience developing games with Unity
| with advanced programming skills, particularly in the C# language
|
| Table of Contents
|
| Introduction
|
| The Gameplay Programmer Specialization
|
| The Expert Gameplay Programmer Exam
|
| Course 1: Rapid Gameplay Programming
|
| Core Gameplay Prototyping
| Understanding What the GDD Wants
| Converting the GDD to Unity
| Let the User Move
| Refining User Control
| Getting the Basics Set Up for the Most Basic NPC
| Inheritance and Polymorphism
| A Zoo for NPCs
| User Interface Coordinate Systems
| Overlay, Camera, and the World
| UI Coordinate Systems
| What does the GDD Require?
| Static Aspect Ratios
| Dynamic Aspects Ratios
| Configuring What Can be Hit
| Masking the Graphic Raycaster
| UI Scripting
| WhatÆs important to the User
| Any Feedback is Better Than None
| Testing Through the UI
| Adding a Mini-Map
| Adding a Radar: Part 1
| Adding a Radar: Part 2
| The UI Profiler and Frame Debugger
| UI Optimizations
| Identifying Localization Needs: Part 1
| Identifying Localization Needs: Part 2
| Localization Implementation
| Conflict and Solutions During Prototype
| Defining Failure and Success
| Making the Computer Provide Useful Feedback
| On Paper
|
| Course 2: Programming for Level Design
|
| Introduction
| Configuring Physics
| Collider Types and Configuration
| Choosing the Best Collider for the Job
| RigidBodies and Colliders
| Rigidbody Performance
| Kinematic Rigidbodies
| OnTrigger Configurations
| OnCollision Configurations
| Physics Mask Groupings
| Physic Material Properties
| Spawning Runtime Prefabs and Effects
| When and Why to Spawn Objects
| When and Why Not to Spawn Objects
| Spawn Rates and Performance Impact
| Reliable Particle Effect Placement
| Dynamic Particle Effect Spawning
| Evaluating Effects for Spawning and Placement
| Dynamically Altering Wind Zones
| Line Renderers
| Trail Renderer
| Level Logic and Behaviour
| Triggered Interactions
| Bringing Gameplay Together
| Our Mighty Gameplay Overlord of Scene Management
| Orchestrating Chaos
| Loading and Unloading Scenes
| Loading Scenes
| Unloading Scenes
| Steaming Limits
| Cinematics
| In-Engine Cinematic Parameters- Part 1
| In-Engine Cinematic Parameters- Part 2
| Cinematic Post Effects
| When, Why, and at What Cost?
|
| Course 3: NPC Design Programming
|
| Course Introduction
| NPC Logic and Behavior
| Animation State Machines
| Driving States Via Scripts
| Animation Events
| Adding State Machine Behaviors
| Mapping NPC Logic
| Scripting Logic into an NPC
| Mapping Mob Mentality
| Navigation and Pathfinding
| NavMesh Methodology
| Baking a Quality NavMesh
| NavMesh Area Costs
| Area Triggers
| Off Mesh Links
| Obstacle Avoidance Quality and Priority
| Raycasting
| Raycast Behavior
| Debugging Raycast Masks
| Optimizing Raycasts via Layers
| NPC Spawning and Placement
| Determining NPCs for Placement at Scene Load
| Where to Dynamically place NPCs
| Determining NPC Spawn Rates
| Optimizing Spawn Rates per Platform
|
| Course 4 Performance Optimization
|
| Introduction
| Rendering Optimization
| Occlusion Culling
| Optimizing Performance via Occlusion Culling
| LOD Methodology
| Evaluating LOD Distances
| Analyzing Fill Rates
| Rendering-Best Practices
| Minimizing Frame Drops
| Asset Bundles
| Asset Bundle Strategies
| Determining Optimal Configurations
| Identifying Issues
| Providing Asset Bundle Solutions
| Using Asset Bundles
| Gameplay Debugging
| General Debugging Strategies
| General Debugging Techniques
| Isolating Level Issues
| NPC Debugging
| Isolating Scene Loading and Transition Issues
| Finding the Best Solution
| Low-Hanging Fruit
| Game Killers
| Platform Constraints
| Platform Input/Controller Schemas
| Platform System Resources
| Optimizing Runtime Performance per Platform
| Optimizing Storage per Platform
| Platform Constraints
| Platform Optimization
| Using the Profiler
| Managing your Short-term Memory
| Long-term Memory Use
| Hidden CPU Taxes
| Assessing Capabilities per Platform
| Targeting Build Targets
|
| Course 5: Unity Services Implementation
|
| Introduction
| UnityÆs Ads
| Simple Ad Placement
| Simple Ads and the Player Experience
| Supplementing Scene Loading with Ads
| Rewarded Ad Placement
| Rewarded Ads and Player Experience
| Enhancing the Player Experience with Rewarded Ads
| In App Purchases
| Enabling an In App Purchases Store
| Processing In App Purchases
| Post Purchase
| UI Elements for In App Purchases
| Implementing an In App Purchase
| Unity Analytics
| Unity Analytics
| Translating GDD Level Design to Data Collection Points
| Custom Data Events for Player Behavior
| Heatmap Data
| Identifying User Pain Points from Heatmap Data
| Using the Dashboard for Evaluating Analytics
| Evaluating Analytics Raw Data
| Performance Reporting
| Analyzing Performance Reports
| Unity Cloud Build
| Setting up Cloud Build
| Test Build Logs
| Assessing your Target Build Platforms
,