Unity Certified Programmer Exam Guide - Philip Walker - E-Book

Unity Certified Programmer Exam Guide E-Book

Philip Walker

0,0
75,59 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.

Mehr erfahren.
Beschreibung

Unity Certified Programmer is a global certification program by Unity for anyone looking to become a professional Unity developer. The official Unity programmer exam will not only validate your Unity knowledge and skills, but will also enable you to be a part of the Unity community.
This study guide will start by building on your understanding of C# programming and taking you through the process of downloading and installing Unity. You’ll understand how Unity works and get to grips with the Unity exam’s core objectives. As you advance, you’ll enhance your skills by creating an enjoyable side-scrolling shooter game that can be played within the Unity Editor or any modern Android mobile device. This Unity book will test your knowledge with self-assessment questions and help you take your skills to an advanced level by working with Unity tools such as the animator, particle effects, lighting, UI/UX, scriptable objects, and debugging.
By the end of this book, you’ll have developed a solid understanding of the different tools in Unity and be able to create impressive Unity applications by making the most of its toolset.

Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:

EPUB
MOBI

Seitenzahl: 772

Veröffentlichungsjahr: 2022

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Unity Certified Programmer

Exam Guide

Second Edition

Pass the Unity certification exam with the help of expert tips and techniques

Philip Walker

BIRMINGHAM—MUMBAI

Unity Certified Programmer Exam Guide Second Edition

Copyright © 2022 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

Group Product Manager: Rohit Rajkumar

Publishing Product Manager: Ashitosh Gupta

Senior Editor: Aamir Ahmed

Content Development Editor: Feza Shaikh

Technical Editor: Simran Udasi

Copy Editor: Safis Editing

Project Coordinator: Rashika BA

Proofreader: Safis Editing

Indexer: Manju Arasan

Production Designer: Sinhayna Bais

Marketing Coordinator: Teny Thomas

First published: June 2020

Second edition: April 2022

Production reference: 1290422

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham

B3 2PB, UK.

ISBN 978-1-80324-621-5

www.packt.com

Contributors

About the author

Philip Walker originally started as a 3D games artist, but then decided he wanted to combine his current skills with coding so that he could see through the majority of his games' and apps' development himself. Philip has worked in several industries as an artist and/or a Unity developer, using various types of technology and techniques.

I would like to especially thank the Packt team for supporting me from start to finish with this second edition. And a big shout out to Aamir!

About the reviewers

Akhil Raja is an XR engineer and a tech generalist at Digital Reality Studios – Deloitte. He is a Unity Certified Expert and a certified Google Cloud Associate Cloud Engineer and has expertise in building and architecting a number of enterprise solutions for clients. He is experienced in building XR – Augmented Reality, Virtual Reality, and Mixed Reality apps, mobile applications on Android, iOS, and Flutter, cloud computing technologies (AWS, GCP), and Computer Vision – deep learning and machine learning solutions. He is a problem solver and specializes in arriving at solutions that break through technological barriers.

Attilio Carotenuto is a game tech lead with more than 13 years of experience in making games that are played by millions of people every day.

He is currently the lead online game engineer at Yager Entertainment, working on The Cycle Frontier. He previously worked for companies including Foxglove Studios, King, and Playfish (Electronic Arts), and ran an indie development company.

Attilio has been using Unity since version 3.0, working on games such as The Muscle Hustle, An Oath to the Stars, Monster Snap, and various entries of the Snipers vs Thieves series.

He has previously worked with Packt on Unity-related books including Unity 3D UI Essentials, Unity 3D Game Development by Example, and Building Levels in Unity as a technical reviewer.

Table of Contents

Preface

Chapter 1: Setting Up and Structuring Our Project

The core exam skills covered in this chapter

Technical requirements

The six core objectives

Programming core interactions

Working in the art pipeline

Developing application systems

Programming for the scene and environment design

Optimizing performance and platforms

Working in professional software development teams

Overview of design patterns

Builder

Singleton

Abstract Factory

Prototype 

Object Pool

Dependency Injection

The SOLID principles

Single responsibility principle

Open/closed principle

Liskov substitution principle

Interface segregation principle

Dependency inversion principle

Designing the Killer Wave game

Game design brief

The Killer Wave game framework

Framework

Setting up Unity

Starting our project through Unity Hub

The dashboard

Summary

Chapter 2: Adding and Manipulating Objects

Core exam skills covered in this chapter

Technical requirements

Setting up our Unity project

Creating prefabs

Adding Rigidbody components and fixing game objects

Saving and publishing our work

Unity Editor Layout

Setting up our light

Introducing our interface – IActorTemplate

Introducing our ScriptableObject – SOActorModel

Creating a PlayerSpawner ScriptableObject asset

Creating an EnemySpawner ScriptableObject asset

Creating a PlayerBullet ScriptableObject Asset

Setting up our Player, PlayerSpawner, and PlayerBullet scripts

Setting up our PlayerSpawner script

Setting up our Input Manager

Setting up our Player script

Setting up our PlayerBullet script

Planning and creating our enemy

Setting up our EnemySpawner and Enemy scripts

Adding our script to the EnemySpawner game object

Setting up our enemy script

Summary

Chapter 3: Managing Scripts and Taking a Mock Test

The core exam skills covered in this chapter

Technical requirements

Adding a Singleton design pattern

Adding the ResetScene() method

Adding the GameOver() method

Adding the BeginGame() method

Creating lives for the player

Scoring enemy hits

Preparing the code for the ScoreManager script

Setting up our ScoreManager script

Creating sounds for the player's bullets

Summary

Mock test

Chapter 4: Applying Art, Animation, and Particles

The core exam skills covered in this chapter

Technical requirements

Adding visuals to the player's ship prefab

Creating a material for our player's ship prefab

Applying maps to our PlayerShip material

Adding neon lights to our PlayerShip prefab

Adding particles to our PlayerShip prefab

Creating a Particle Effect

Setting up the Emission section of our particle system

Setting up the Shape section of our particle system

Setting up the Force over Lifetime section of our particle system

Setting up the Renderer section of our particle system

Setting up the Texture Sheet Animation section of our particle system

Importing and animating the background

Adding an Animator Controller

Creating states in the Animator Controller

Animation

Animating our three-dimensional enemies

Summary

Chapter 5: Creating a Shop Scene for Our Game

The core exam skills covered in this chapter

Technical requirements

Introducing our shop scripts

Importing and calibrating our sprite game object

Displaying credit on our itemText game object

Project file diagnosis when making SelectionQuad

Customizing our shop selection

Creating selection templates

Customizing our player ship's upgrade selection

Selecting game objects with raycasts

Adding information to our description panel

Summary

Chapter 6: Purchasing In-Game Items and Advertisements

The core exam skills covered in this chapter

Technical requirements

Buying upgrades for our player's ship

Updating visual representations of our player's ship

Preparing our player's ship to be used in the game

Buying items, watching adverts, and preparing to start a game

Setting up the BUY? button

Setting up the START button

Setting up the WATCH AD button

Extending the PlayerSpawner script

Summary

Chapter 7: Creating a Game Loop and Mock Test

Core exam skills covered in this chapter

Technical requirements

Transitioning our player ship

Adding variables to our PlayerTransition script

Adding methods/functions to our PlayerTransition script

Adding if statement checks

Adding content to the PlayerMovement method

Moving the player ship out of the screen

Expanding our ScenesManager script 

Adding a game level timer

Beginning, resetting, and skipping levels

Preparing to loop our game

Setting up the bootUp scene

Setting up the title and gameOver scenes

Demonstrating that the game loop is complete

Summary

Mock test

Chapter 8: Adding Custom Fonts and UI

Core exam skills being covered in this chapter

Technical requirements

Introducing the Canvas and UI

Applying text and images to our scenes

Improving our title scene

Duplicating our game objects

Preparing to animate UI game objects

Animating our UI level title

Summary

Chapter 9: Creating a 2D Shop Interface and In-Game HUD

Core exam skills covered in this chapter

Technical requirements

Setting up our HUD

Displaying the player's lives

Displaying the player's score

Creating a mini-map

Making our shop scene support alternative screen ratios

Upgrading our shop selection

Applying and modifying our shop script

Reviewing the button's results

Summary

Chapter 10: Pausing the Game, Altering Sound, and a Mock Test

Core exam skills covered in this chapter

Technical requirements

Applying and adjusting level music

Updating our GameManager prefab

Preparing states for our game music

Implementing our game's music states

Using StartCoroutine with our music states

Creating a pause screen

Adding a volume UI slider to the Pause screen

Adding a game pause button

Creating our PauseComponent script 

PauseScreen basic setup and PauseButton functionality 

Resuming or quitting the game from the pause screen

Pausing the player and enemies

Summary

Mock test

Chapter 11: Storing Data and Audio Mixer

Core exam skills covered in this chapter

Technical requirements

Using the Audio Mixer

Attaching the Audio Mixer to UI sliders

Storing data

PlayerPrefs and volume settings

JSON and storing game stats

Adding JSON variables

Summary

Chapter 12: NavMesh, Timeline, and a Mock Test

The core exam skills covered in this chapter

Technical requirements

Preparing the final scene

Developing AI with NavMesh

Customizing our agents – NavMeshAgent

Adding a capsule collider to our fleeing enemy

Creating our fleeing enemy script

Exploring the timeline

Creating a timeline

Setting up the boss game object in our scene

Preparing the boss for the timeline

Animating the boss in the timeline – phase one

Animating the boss in the timeline – phase two

Extending the timeline

Adding Default Playables to the project

Manipulating light components in the timeline

Summary

Mock test

Chapter 13: Effects, Testing, Performance, and Alt Controls

Core exam skills being covered in this chapter

Technical requirements

Applying physics with RigidBody

Customizing for different platforms

Navigating and firing the player's ship with the touchscreen

Extending screen ratio support

Preparing to build Killer Wave for mobile

Setting up the lighting for Killer Waves for Android

Stopping involuntary player controls

Final optimizations for Killer Wave

Setting up the build settings for Android

Applying PC visual improvements

Post-processing

Adding global illumination and other settings

Adding art assets to our shop scene

Reflection probe

Building and testing our game

Tackling bugs

Understanding the Profiler tools

Frame Debugger

Tackling bugs – answers

Summary

Chapter 14: Full Unity Programmer Mock Exam

Full mock exam

Appendix

Developing for Virtual Reality

Closing suggestions for the game/exam

Rendering paths

Adding to/optimizing Killer Wave

Mock answers

Chapter 3, Managing Scripts and Taking a Mock Test

Chapter 7, Creating a Game Loop and Mock Test

Chapter 10, Pausing the Game, Altering Sound, and a Mock Test

, NavMesh, Timeline, and a Mock Test

Chapter 14, Full Unity Programmer Mock Exam

Why subscribe?

Other Books You May Enjoy