Section 28: 2D Gaming: Continuing with Unity 2D

Size: px
Start display at page:

Download "Section 28: 2D Gaming: Continuing with Unity 2D"

Transcription

1 Section 28: 2D Gaming: Continuing with Unity 2D 1. Open > Assets > Scenes > Game 2. Configuring the Layer Collision Matrix 1. Edit > Project Settings > Tags and Layers 2. Create two new layers: 1. User Layer 8 = Player 2. User Layer 9 = Hazards 3. Edit > Project Settings > Physics 2D > Layer Collision Matrix 1. Uncheck Hazards/Hazards 2. Check Player/Hazards 3. Uncheck Default(platforms)/Hazards 3. Adding the ability to Jump 4. Edit Assets > Scripts > SoyBoyController.cs 1. Add the following variables/fields: 1. public bool isjumping; 2. public float jumpspeed = 8f; 3. private float raycastlengthcheck = 0.005f; 4. private float width; 5. private float height; 2. At the bottom of Awake(), add: 1. width = GetComponent<Collider2D>().bounds.extents.x + 0.1f; 2. height = GetComponent<Collider2D>().bounds.extents.y + 0.2f; 3. Gets the dimension's of Soy Boy's sprite and adds a slight margin, so the raycast will start outside of his bounding box. 3. Add this new method: 1. public bool PlayerIsOnGround() bool groundcheck1 = Physics2D.Raycast(new Vector2(transform.position.x, transform.position.y height), -Vector2.up, raycastlengthcheck); //check centre

2 bool groundcheck2 = Physics2D.Raycast(new Vector2(transform.position.x + (width 0.2f), transform.position.y height), -Vector2.up, raycastlengthcheck); //check bottom-right bool groundcheck3 = Physics2D.Raycast(new Vector2(transform.position.x (width 0.2f), transform.position.y height), -Vector2.up, raycastlengthcheck); //check bottom-left if(groundcheck1 groundcheck2 groundcheck3) return true; else return false; 4. At the bottom of Update(), add: 1. if(playerisonground() && isjumping == false) if(input.y > 0f) isjumping = true; 5. Add these new fields: 1. public float jumpdurationthreshold = 0.25f; 2. private float jumpduration; 6. At the bottom of Update(), add: 1. if(jumpduration > jumpdurationthreshold) input.y = 0f; 2. If the jump button is held for longer than ¼ of a second then the jump stops.

3 7. At the bottom of FixedUpdate(), add: 1. if(isjumping && jumpduration < jumpdurationthreshold) rb.velocity = new Vector2(rb.velocity.x, jumpspeed); 2. Gives Soy Boy's rigidbody new velocity 8. In Update(), just above the PlayerIsOnGround() check, add: 1. if(input.y >= 1f) jumpduration += Time.deltaTime; else isjumping = false; jumpduration = 0f; 9. Save, return to Unity and test it out. 5. Improving the Jump While in the Air 1. In FixedUpdate(), change if(input.x == 0) to: 1. if(playerisonground() && input.x == 0) 2. Add a new variable: 1. public float airaccel = 3f; 3. In FixedUpdate(), at the top, replace the line var acceleration = accel, with: 1. var acceleration = 0f; if(playerisonground()) acceleration = accel; else acceleration = airaccel; 2. Acceleration is 0, then set to various intensities depending on in air or not. 6. Adding Wall Jumps 1. Edit SoyBoyController.cs 2. Add the following method: 1. public bool IsWallToLeftOrRight()

4 bool wallonleft = Physics2D.Raycast(new Vector2(transform.position.x width, transform.position.y), -Vector2.right, raycastlengthcheck); bool wallonright = Physics2D.Raycast(new Vector2(transform.position.x + width, transform.position.y), Vector2.right, raycastlengthcheck); if(wallonleft wallonright) return true; else return false; 3. Add the following variable: 1. public float jump = 14f; 4. Add the following method: 1. public bool PlayerIsTouchingGroundOrWall() if(playerisonground() IsWallToLeftOrRight()) return true; else return false; 5. In FixedUpdate(), just above rb.addforce(...), add: 1. var yvelocity = 0f; if(playeristouchinggroundorwall() && input.y == 1)

5 yvelocity = jump; else yvelocity = rb.velocity.y; 6. In FixedUpdate(), change rb.velocity = new Vector2(... to: 1. rb.velocity = new Vector2(xVelocity, yvelocity); 2. Our character can now jump when he is on the ground OR by a wall, but he jumps straight up. TEST IT OUT! 7. Add one more method: 1. public int GetWallDirection() bool iswallleft = Physics2D.Raycast(new Vector2(transform.position.x width, transform.position.y), -Vector2.right, raycastlengthcheck); bool iswallright = Physics2D.Raycast(new Vector2(transform.position.x + width, transform.position.y), Vector2.right, raycastlengthcheck); if(iswallleft) return -1; else if(iswallright) return 1; else return 0; 8. In FixdedUpdate(), after rb.velocity = new Vector2(xVelocity, yvelocity);, add: 1. if(iswalltoleftorright() &&!PlayerIsOnGround() && input.y

6 == 1) rb.velocity = new Vector2(-GetWallDirection() * speed * 0.75f, rb.velocity.y); 9. Save 10.Return to Unity place some walls 1. Ctrl-D to duplicate items in Game View 2. Hold Ctrl while moving to snap (make sure you are using Translate tool) 7. Character Animations 1. Hierarchy > SoyBoy > open Animator Window > Parameters tab 2. Click the + sign 3 times to add 3 parameters 1. Speed Float IsJumping Bool unchecked 3. IsOnWall Bool unchecked 3. Right-click Entry state > Make Transition > select IdleAnimation 4. Right-click IdleAnimation > Set as Layer Default State 5. IdleAnimation > Make Transition > RunAnimation 6. RunAnimation > Make Transition > IdleAnimation 7. Click the transition arrow from IdleAnimation to RunAnimation 1. Conditions > + > Condition = Speed > 0 2. Uncheck Has Exit Time 8. Click the transition arrow from RunAnimation to IdleAnimation 1. Conditions > + > Condition = Speed < Uncheck Has Exit Time 9. Make sure every other state has transitions going TO and FROM each to each. Idle Jump IsJumping = TRUE Speed < 0.5 Jump Idle Speed < 0.05 IsJumping = FALSE Run Jump IsJumping = TRUE Jump Run IsJumping = FALSE Speed > 0 Run Slide IsOnWall = TRUE Slide Run IsOnWall = FALSE Speed > 0 Slide Jump IsJumping = TRUE IsOnWall = FALSE IsOnWall = FALSE 10. Make sure Has Exit Time is unchecked for ALL transitions Jump Slide IsOnWall = TRUE IsJumping = FALSE Slide Idle IsOnWall = FALSE Speed < 0.05

7 11. There is NO transition FROM Idle TO Slide 12. RunAnimation > animation speed = Edit SoyBoyController.cs 1. In Update(), just below Input.GetAxis() calls: 1. animator.setfloat( Speed, Mathf.Abs(input.x)); 2. Still in Update(), change the entire if/else if(input.y >= 1f)..., to: 1. if(input.y >= 1f) jumpduration += Time.deltaTime; animator.setbool( IsJumping, true); else isjumping = false; animator.setbool( IsJumping, false); jumpduration = 0f; 3. Still in Update(), after if(input.y >0f) isjumping = true;, add: 1. animator.setbool( IsOnWall, false); 4. In the FixedUpdate() method, replace the block if (IsWallToLeftOrRight() &&! PlayerIsOnGround() && input.y == 1), with: 1. if (IsWallToLeftOrRight() &&!PlayerIsOnGround() && input.y == 1) rb.velocity = new Vector2(-GetWallDirection() * speed * 0.75f, rb.velocity.y); animator.setbool( IsOnWall, false); animator.setbool( IsJumping, true); else if (!IsWallToLeftOrRight()) animator.setbool( IsOnWall, false); animator.setbool( IsJumping, true); if (IsWallToLeftOrRight() &&!PlayerIsOnGround()) animator.setbool( IsOnWall, true);

8 5. Save, return to Unity and test it out! 8. Adding Hazards 1. Create a script named Hazard 2. Hierarchy > buzzsaw > Add Component > 1. Scripts > Hazard 2. Audio > Audio Source 3. Edit the script Hazard 1. Add the following variables / fields: 1. public GameObject playerdeathprefab; 2. public AudioClip deathclip; 3. public Sprite hitsprite; 4. private SpriteRenderer spriterenderer; 2. Add the following method: 1. void Awake() spriterenderer = GetComponent<SpriteRenderer>(); 3. Add the following method: 1. void OnCollisionEnter2D(Collision2D coll) if(coll.tranform.tag == Player ) var audiosource = GetComponent<AudioSource>(); if(audiosource!= null && deathclip!= null) audiosource.playoneshot(deathclip); Instantiate(playerDeathPrefab, coll.contacts[0].point, Quaternion.identity); spriterenderer.sprite = hitsprite; Destroy(coll.gameObject);

9 4. Save the script and return to Unity. 4. Hierarchy > buzzsaw > Inspector 1. Hit Sprite = Assets > Sprites > buzzsaw-hit 2. Death Clip = Assets > Sound > ssb_death 5. Hierarchy > Create > Create Empty 1. Name = DeathParticleSystem 2. X-Rotation = Add Component > Effects > Particle System 1. Duration = Looping = Unchecked 3. Start Lifetime = 2 4. Start Speed = Random between two constants 10 and Start Size = Start Rotation = Random between two constants 0 and Gravity Modifier = 3 8. Enable Emission 1. Rate over Time = Enable Shape 1. Shape = cone 2. Angle = Radius = Enable Color over Lifetime % alpha 0% alpha 11. Expand Renderer 1. Material = Sprites-Default 2. Sorting Layer = Foreground 3. Order in Layer = Scene View > Hierarchy > DeathParticleSystem > Simulate (bottom-right) 7. Drag and drop DeathParticleSystem into Assets > Prefabs 8. Delete Hierarchy > DeathParticleSystem 9. Hierarchy > buzzsaw > Inspector >

10 1. Player Death Prefab = Assets > Prefabs > DeathParticleSystem 2. Click Apply 10. Create a new script named RotationScript 1. Add the following variable: 1. public float rotationsperminute = 640f; 2. In Update(), add: 1. transform.rotate(0, 0, rotationsperminute * Time.deltaTime, Space.Self); 3. Save and return to Unity 11. Hierarchy > buzzsaw > Inspector 1. Add Component >Scripts > RotationScript 2. Click Apply 12. Hierarchy > SoyBoy > Inspector 1. Tag = Player 2. Click Apply 13.Test it out. 9. Sound 1. Hierarchy > Create > Create Empty 1. Name = Music 2. Add Component > Audio > Audio Source 1. AudioClip = Assets > Sound > supersoyboy.ogg 2. Edit the script SoyBoyController.cs 1. Add the following fields: 1. public AudioClip runclip; 2. public AudioClip jumpclip; 3. public AudioClip slideclip; 4. private AudioSource audiosource; 2. In the Awake() method, add: 1. audiosource = GetComponent<AudioSource>(); 3. Create the following method: 1. void PlayAudioClip(AudioClip clip) if(audiosource!= null && clip!= null)

11 if(!audiosource.isplaying) audiosource.playoneshot(clip); 4. In the Update() method, change the IF that checks on ground && not jumping: 1. if(playerisonground() &&!isjumping) if(input.y > 0f) isjumping = true; PlayAudioClip(jumpClip); animator.setbool( IsOnWall, false); if(input.x < 0f input.x > 0f) PlayAudioClip(runClip); 5. Edit FixedUpdate(), near the bottom, the IF statements that set boolean parameters (new lines are marked): 1. if(iswalltoleftorright() &&!PlayerIsOnGround() && input.y == 1) rb.velocity = new Vector2(-GetWallDirection() * speed * 0.75f, rb.velocity.y); animator.setbool( IsOnWall, false); animator.setbool( IsJumping, true); //NEW LINE: PlayAudioClip(jumpClip); else if (!IsWallToLeftOrRight())

12 animator.setbool( IsOnWall, false); animator.setbool( IsOnWall, true); if(iswalltoleftorright() &&!PlayerIsOnGround()) animator.setbool( IsOnWall, true); //NEW LINE: PlayAudioClip(slideClip); 6. Save and return to Unity 3. Hierarchy > SoyBoy > Inspector > 1. Run Clip = Assets > Sound > ssb_run_short.ogg 2. Jump Clip = Assets > Sound > ssb_jump.ogg 3. Slide Clip = Assets > Sound > ssb_slide_loop 4. Add Component > Audio > Audio Source 5. Click Apply 4. Run the game, test it out. 10. Creating a Game Manager 1. Create a new script called GameManager 2. Create a new GameObject called GameManager 3. Hierarchy > GameManager > Add Component > Script > GameManager.cs 4. Edit the script, GameManager.cs: 1. Add the field: 1. public static GameManager instance; 2. Create the following method: 1. void Awake() if(instance == null) instance = this; else if (instance!= this) Destroy(gameObject);

13 DontDestroyOnLoad(gameObject); 3. Add the following using statement: 1. using UnityEngine.SceneManagement; 4. Create the following methods: 1. public void RestartLevel(float delay) StartCoroutine(RestartLevelDelay(delay)); 2. private IEnumerator RestartLevelDelay(float delay) yield return new WaitForSeconds(delay); SceneManager.LoadScene( Game ); 5. Save. 5. Edit the script, Hazard.cs 1. In OnCollisionEnter2D(), at the bottom, right after Destroy(), add: 1. GameManager.instance.RestartLevel(1.25f); 6. Create a new script, named Goal 1. Add the following: 1. public AudioClip goalclip; 2. void OnCollisionEnter2D(Collision2D coll) if(coll.gameobject.tag == Player ) var audiosource = GetComponent<AudioSource>(); if(audiosource!= null && goalclip!= null) audiosource.playoneshot(goalclip); GameManager.instance.RestartLevel(0.5f);

14 2. Save and return to Unity 3. Assets > Resources > Prefabs > goal > Add Component > Scripts > Goal.cs 1. Goal Clip = ssb_goal.ogg 4. Place an instance of Goal in the level. 5. Run the game to test it out 11. Adding a Timer 1. Create a new script named Timer 1. Add the following using statement 1. using UnityEngine.UI; 2. Remove the Start() and Update() methods. 3. Add: 1. private Text timertext; 2. void Awake() timertext = GetComponent<Text>(); 3. void Update() timertext.text = System.Math.Round((decimal) Time.timeSinceLevelLoad, 2).ToString(); 4. Save and return to Unity 5. Hierarchy > Canvas > Timer > Add Component > Scripts > Timer.cs 12. Building Your Own Level 1. Drag and drop instances of prefabs onto the Scene view. 2. Remember hold down Ctrl while moving objects to snap-to.

Adding a Trigger to a Unity Animation Method #2

Adding a Trigger to a Unity Animation Method #2 Adding a Trigger to a Unity Animation Method #2 Unity Version: 5.0 Adding the GameObjects In this example we will create two animation states for a single object in Unity with the Animation panel. Our

More information

C# for UNITY3d: Sem 1 a.k.a. The Gospel of Mark Part 1

C# for UNITY3d: Sem 1 a.k.a. The Gospel of Mark Part 1 C# for UNITY3d: Sem 1 a.k.a. The Gospel of Mark Part 1 Special Thanks to Mark Hoey, whose lectures this booklet is based on Move and Rotate an Object (using Transform.Translate & Transform.Rotate)...1

More information

Pacman. you want to see how the maze was created, open the file named unity_pacman_create_maze.

Pacman. you want to see how the maze was created, open the file named unity_pacman_create_maze. Pacman Note: I have started this exercise for you so you do not have to make all of the box colliders. If you want to see how the maze was created, open the file named unity_pacman_create_maze. Adding

More information

Unity Game Development

Unity Game Development Unity Game Development 1. Introduction to Unity Getting to Know the Unity Editor The Project Dialog The Unity Interface The Project View The Hierarchy View The Inspector View The Scene View The Game View

More information

Creating and Triggering Animations

Creating and Triggering Animations Creating and Triggering Animations 1. Download the zip file containing BraidGraphics and unzip. 2. Create a new Unity project names TestAnimation and set the 2D option. 3. Create the following folders

More information

Unity Scripting 4. CS 491 / DES 400 Crea.ve Coding. Computer Science

Unity Scripting 4. CS 491 / DES 400 Crea.ve Coding. Computer Science Unity Scripting 4 Unity Components overview Particle components Interaction Key and Button input Parenting CAVE2 Interaction Wand / Wanda VR Input Devices Project Organization Prefabs Instantiate Unity

More information

Game Design Unity Workshop

Game Design Unity Workshop Game Design Unity Workshop Activity 2 Goals: - Creation of small world - Creation of character - Scripting of player movement and camera following Load up unity Build Object: Mini World and basic Chase

More information

Workshop BOND UNIVERSITY. Bachelor of Interactive Multimedia and Design. Asteroids

Workshop BOND UNIVERSITY. Bachelor of Interactive Multimedia and Design. Asteroids Workshop BOND UNIVERSITY Bachelor of Interactive Multimedia and Design Asteroids FACULTY OF SOCIETY AND DESIGN Building an Asteroid Dodging Game Penny de Byl Faculty of Society and Design Bond University

More information

MIXED REALITY (AR & VR) WITH UNITY 3D (Microsoft HoloLens)

MIXED REALITY (AR & VR) WITH UNITY 3D (Microsoft HoloLens) MIXED REALITY (AR & VR) WITH UNITY 3D (Microsoft HoloLens) 1. INTRODUCTION TO Mixed Reality (AR & VR) What is Virtual Reality (VR) What is Augmented reality(ar) What is Mixed Reality Modern VR/AR experiences

More information

Creating a 3D Characters Movement

Creating a 3D Characters Movement Creating a 3D Characters Movement Getting Characters and Animations Introduction to Mixamo Before we can start to work with a 3D characters we have to get them first. A great place to get 3D characters

More information

Mechanic Animations. Mecanim is Unity's animation state machine system.

Mechanic Animations. Mecanim is Unity's animation state machine system. Mechanic Animations Mecanim is Unity's animation state machine system. It essentially allows you to create 'states' that play animations and define transition logic. Create new project Animation demo.

More information

MIXED REALITY (AR & VR) WITH UNITY 3D (Microsoft HoloLens)

MIXED REALITY (AR & VR) WITH UNITY 3D (Microsoft HoloLens) MIXED REALITY (AR & VR) WITH UNITY 3D (Microsoft HoloLens) 1. INTRODUCTION TO Mixed Reality (AR & VR) What is Virtual Reality (VR) What is Augmented reality(ar) What is Mixed Reality Modern VR/AR experiences

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Unity

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Unity i About the Tutorial Unity is a cross-platform game engine initially released by Unity Technologies, in 2005. The focus of Unity lies in the development of both 2D and 3D games and interactive content.

More information

User Manual. Contact the team: Contact support:

User Manual.     Contact the team: Contact support: User Manual http://dreamteck.io https://www.facebook.com/dreamteckstudio Contact the team: team@dreamteck.io Contact support: support@dreamteck.io Discord Server: https://discord.gg/bkydq8v 1 Contents

More information

UFO. Prof Alexiei Dingli

UFO. Prof Alexiei Dingli UFO Prof Alexiei Dingli Setting the background Import all the Assets Drag and Drop the background Center it from the Inspector Change size of Main Camera to 1.6 Position the Ship Place the Barn Add a

More information

Class Unity scripts. CS / DES Creative Coding. Computer Science

Class Unity scripts. CS / DES Creative Coding. Computer Science Class Unity scripts Rotate cube script Counter + collision script Sound script Materials script / mouse button input Add Force script Key and Button input script Particle script / button input Instantiate

More information

IAT 445 Lab 10. Special Topics in Unity. Lanz Singbeil

IAT 445 Lab 10. Special Topics in Unity. Lanz Singbeil IAT 445 Lab 10 Special Topics in Unity Special Topics in Unity We ll be briefly going over the following concepts. They are covered in more detail in your Watkins textbook: Setting up Fog Effects and a

More information

Terrain. Unity s Terrain editor islands topographical landscapes Mountains And more

Terrain. Unity s Terrain editor islands topographical landscapes Mountains And more Terrain Unity s Terrain editor islands topographical landscapes Mountains And more 12. Create a new Scene terrain and save it 13. GameObject > 3D Object > Terrain Textures Textures should be in the following

More information

Unity3D. Unity3D is a powerful cross-platform 3D engine and a user friendly development environment.

Unity3D. Unity3D is a powerful cross-platform 3D engine and a user friendly development environment. Unity3D Unity3D is a powerful cross-platform 3D engine and a user friendly development environment. If you didn t like OpenGL, hopefully you ll like this. Remember the Rotating Earth? Look how it s done

More information

Google SketchUp/Unity Tutorial Basics

Google SketchUp/Unity Tutorial Basics Software used: Google SketchUp Unity Visual Studio Google SketchUp/Unity Tutorial Basics 1) In Google SketchUp, select and delete the man to create a blank scene. 2) Select the Lines tool and draw a square

More information

Bonus Chapter 10: Working with External Resource Files and Devices

Bonus Chapter 10: Working with External Resource Files and Devices 1 Bonus Chapter 10: Working with External Resource Files and Devices In this chapter, we will cover the following topics: Loading external resource files using Unity default resources Loading external

More information

Pong in Unity a basic Intro

Pong in Unity a basic Intro This tutorial recreates the classic game Pong, for those unfamiliar with the game, shame on you what have you been doing, living under a rock?! Go google it. Go on. For those that now know the game, this

More information

Airship Sub & Boat Tutorial. Made by King and Cheese

Airship Sub & Boat Tutorial. Made by King and Cheese Airship Sub & Boat Tutorial Made by King and Cheese Contents Introduction What you should already know 3 What you will learn 3 Let s start Opening up our scene 4 Adding some movement 5 Turning 8 Ascending

More information

Terrain. Unity s Terrain editor islands topographical landscapes Mountains And more

Terrain. Unity s Terrain editor islands topographical landscapes Mountains And more Terrain Unity s Terrain editor islands topographical landscapes Mountains And more 12. Create a new Scene terrain and save it 13. GameObject > 3D Object > Terrain Textures Textures should be in the following

More information

Game Design Unity Workshop

Game Design Unity Workshop Game Design Unity Workshop Activity 1 Unity Overview Unity is a game engine with the ability to create 3d and 2d environments. Unity s prime focus is to allow for the quick creation of a game from freelance

More information

User Manual v 1.0. Copyright 2018 Ghere Games

User Manual v 1.0. Copyright 2018 Ghere Games + User Manual v 1.0 Copyright 2018 Ghere Games HUD Status Bars+ for Realistic FPS Prefab Copyright Ghere Games. All rights reserved Realistic FPS Prefab Azuline Studios. Thank you for using HUD Status

More information

Game Design From Concepts To Implementation

Game Design From Concepts To Implementation Game Design From Concepts To Implementation Giacomo Cappellini - g.cappellini@mixelweb.it Why Unity - Scheme Unity Editor + Scripting API (C#)! Unity API (C/C++)! Unity Core! Drivers / O.S. API! O.S.!

More information

if(input.getkey(keycode.rightarrow)) { this.transform.rotate(vector3.forward * 1);

if(input.getkey(keycode.rightarrow)) { this.transform.rotate(vector3.forward * 1); 1 Super Rubber Ball Step 1. Download and open the SuperRubberBall project from the website. Open the main scene. In it you will find a game track and a sphere as shown in Figure 1.1. The sphere has a Rigidbody

More information

Setting up A Basic Scene in Unity

Setting up A Basic Scene in Unity Setting up A Basic Scene in Unity So begins the first of this series of tutorials aimed at helping you gain the basic understanding of skills needed in Unity to develop a 3D game. As this is a programming

More information

Tutorial Physics: Unity Car

Tutorial Physics: Unity Car Tutorial Physics: Unity Car This activity will show you how to create a free-driving car game using Unity from scratch. You will learn how to import models using FBX file and set texture. You will learn

More information

ANIMATOR TIMELINE EDITOR FOR UNITY

ANIMATOR TIMELINE EDITOR FOR UNITY ANIMATOR Thanks for purchasing! This document contains a how-to guide and general information to help you get the most out of this product. Look here first for answers and to get started. What s New? v1.53

More information

Transforms Transform

Transforms Transform Transforms The Transform is used to store a GameObject s position, rotation, scale and parenting state and is thus very important. A GameObject will always have a Transform component attached - it is not

More information

Easy Decal Version Easy Decal. Operation Manual. &u - Assets

Easy Decal Version Easy Decal. Operation Manual. &u - Assets Easy Decal Operation Manual 1 All information provided in this document is subject to change without notice and does not represent a commitment on the part of &U ASSETS. The software described by this

More information

Chart And Graph. Features. Features. Quick Start Folders of interest Bar Chart Pie Chart Graph Chart Legend

Chart And Graph. Features. Features. Quick Start Folders of interest Bar Chart Pie Chart Graph Chart Legend Chart And Graph Features Quick Start Folders of interest Bar Chart Pie Chart Graph Chart Legend Overview Bar Chart Canvas World Space Category settings Pie Chart canvas World Space Pie Category Graph Chart

More information

Workshop BOND UNIVERSITY Bachelor of Interactive Multimedia and Design Beginner Game Dev Character Control Building a character animation controller.

Workshop BOND UNIVERSITY Bachelor of Interactive Multimedia and Design Beginner Game Dev Character Control Building a character animation controller. Workshop BOND UNIVERSITY Bachelor of Interactive Multimedia and Design Beginner Game Dev Character Control Building a character animation controller. FACULTY OF SOCIETY AND DESIGN Building a character

More information

Game Design Unity Workshop

Game Design Unity Workshop Game Design Unity Workshop Activity 4 Goals: - Creation of small world - Creation of character - Scripting of player movement and camera following Load up unity Build Object: Collisions in Unity Aim: Build

More information

Pong. Prof Alexiei Dingli

Pong. Prof Alexiei Dingli Pong Prof Alexiei Dingli Background Drag and Drop a background image Size 1024 x 576 X = 0, Y = 0 Rename it to BG Sorting objects Go to Sorting Layer Add a new Sorting Layer called Background Drag the

More information

Spell Casting Motion Pack 5/5/2017

Spell Casting Motion Pack 5/5/2017 The Spell Casting Motion pack requires the following: Motion Controller v2.49 or higher Mixamo s free Pro Magic Pack (using Y Bot) Importing and running without these assets will generate errors! Overview

More information

Unity Animation. Objectives. Animation Overflow. Animation Clips and Animation View. Computer Graphics Section 2 ( )

Unity Animation. Objectives. Animation Overflow. Animation Clips and Animation View. Computer Graphics Section 2 ( ) Unity Animation Objectives How to animate and work with imported animations. Animation Overflow Unity s animation system is based on the concept of Animation Clips, which contain information about how

More information

Unity 4 Game Development HOTSH

Unity 4 Game Development HOTSH Unity 4 Game Development HOTSH T Jate Witt ayabundit Chapter No. 1 "Develop a Sprite and Platform Game" In this package, you will find: The author s biography A preview chapter from the book, Chapter no.1

More information

Visual Novel Engine for Unity By Michael Long (Foolish Mortals),

Visual Novel Engine for Unity By Michael Long (Foolish Mortals), Visual Novel Engine for Unity By Michael Long (Foolish Mortals), michael@foolish-mortals.net http://u3d.as/nld Summary A light weight code base suitable for visual novels and simple cut scenes. Useful

More information

PROTOTYPE 1: APPLE PICKER FOR UNITY 5.X

PROTOTYPE 1: APPLE PICKER FOR UNITY 5.X CHAPTER 28 PROTOTYPE 1: APPLE PICKER FOR UNITY 5.X In the pages below, I've replaced the sections of Chapter 28 that used GUIText with new pages that take advantage of the UGUI (Unity Graphical User Interface)

More information

Mobile Touch Floating Joysticks with Options version 1.1 (Unity Asset Store) by Kevin Blake

Mobile Touch Floating Joysticks with Options version 1.1 (Unity Asset Store) by Kevin Blake Mobile Touch Floating Joysticks with Options version 1.1 (Unity Asset Store) by Kevin Blake Change in version 1.1 of this document: only 2 changes to this document (the unity asset store item has not changed)

More information

Distributed Programming

Distributed Programming Distributed Programming Lecture 04 - Introduction to Unreal Engine and C++ Programming Edirlei Soares de Lima Editor Unity vs. Unreal Recommended reading: Unreal

More information

Better UI Makes ugui Better!

Better UI Makes ugui Better! Better UI Makes ugui Better! 2016 Thera Bytes UG Developed by Salomon Zwecker TABLE OF CONTENTS Better UI... 1 Better UI Elements... 4 1 Workflow: Make Better... 4 2 UI and Layout Elements Overview...

More information

UNITY WORKSHOP. Unity Editor. Programming(Unity Script)

UNITY WORKSHOP. Unity Editor. Programming(Unity Script) July, 2018 Hayashi UNITY WORKSHOP Unity Editor Project: Name your project. A folder is created with the same name of the project. Everything is in the folder. Four windows (Scene, Project, Hierarchy, Inspector),

More information

CE318/CE818: High-level Games Development

CE318/CE818: High-level Games Development CE318/CE818: High-level Games Development Lecture 1: Introduction. C# & Unity3D Basics Diego Perez Liebana dperez@essex.ac.uk Office 3A.527 2017/18 Outline 1 Course Overview 2 Introduction to C# 3 Scripting

More information

Pick up a book! 2. Is a reader on screen right now?! 3. Embedding Images! 3. As a Text Mesh! 4. Code Interfaces! 6. Creating a Skin! 7. Sources!

Pick up a book! 2. Is a reader on screen right now?! 3. Embedding Images! 3. As a Text Mesh! 4. Code Interfaces! 6. Creating a Skin! 7. Sources! Noble Reader Guide Noble Reader version 1.1 Hi, Toby here from Noble Muffins. This here is a paginating text kit. You give it a text; it ll lay it out on a skin. You can also use it as a fancy text mesh

More information

U9_Collision( 碰撞 ) 龍華科技大學多媒體與遊戲發展科學系林志勇編輯請勿外流轉載, 上傳網路 林志勇

U9_Collision( 碰撞 ) 龍華科技大學多媒體與遊戲發展科學系林志勇編輯請勿外流轉載, 上傳網路 林志勇 U9_Collision( 碰撞 ) 龍華科技大學多媒體與遊戲發展科學系編輯請勿外流轉載, 上傳網路 Audio AudioSource *.wav( 聲音檔 ) Audio Clip Play On Awake OnCollisionEnter function OnCollisionEnter(collision : Collision) { // Debug-draw all contact

More information

Apple idvd 11 Tutorial

Apple idvd 11 Tutorial Apple idvd 11 Tutorial GETTING STARTED idvd is a program that allows you to create a DVD with menus and graphics of a professionally made commercial disc to play on your home DVD player. To Begin your

More information

Chart And Graph. Supported Platforms:

Chart And Graph. Supported Platforms: Chart And Graph Supported Platforms: Quick Start Folders of interest Running the Demo scene: Notes for oculus Bar Chart Stack Bar Chart Pie Chart Graph Chart Streaming Graph Chart Graph Chart Curves: Bubble

More information

UI Elements. If you are not working in 2D mode, you need to change the texture type to Sprite (2D and UI)

UI Elements. If you are not working in 2D mode, you need to change the texture type to Sprite (2D and UI) UI Elements 1 2D Sprites If you are not working in 2D mode, you need to change the texture type to Sprite (2D and UI) Change Sprite Mode based on how many images are contained in your texture If you are

More information

Better UI Makes ugui Better!

Better UI Makes ugui Better! Better UI Makes ugui Better! version 1.2 2017 Thera Bytes UG Developed by Salomon Zwecker TABLE OF CONTENTS Better UI... 1 Better UI Elements... 5 1 Workflow: Make Better... 5 2 UI and Layout Elements

More information

Merging Physical and Virtual:

Merging Physical and Virtual: Merging Physical and Virtual: A Workshop about connecting Unity with Arduino v1.0 R. Yagiz Mungan yagiz@purdue.edu Purdue University - AD41700 Variable Topics in ETB: Computer Games Fall 2013 September

More information

Better UI Makes ugui Better!

Better UI Makes ugui Better! Better UI Makes ugui Better! version 1.1.2 2017 Thera Bytes UG Developed by Salomon Zwecker TABLE OF CONTENTS Better UI... 1 Better UI Elements... 4 1 Workflow: Make Better... 4 2 UI and Layout Elements

More information

Game Starter Kit Cheat Sheet

Game Starter Kit Cheat Sheet Game Starter Kit Cheat Sheet In this cheat sheet, I am going to show you how you can create your own custom Flappy Bird Game in a matter of minutes, using FREE Software. The same style of game that was

More information

Vive Stereo Rendering Toolkit Developer s Guide

Vive Stereo Rendering Toolkit Developer s Guide Vive Stereo Rendering Toolkit Developer s Guide vivesoftware@htc.com Introduction Vive Stereo Rendering Toolkit provides drag-and-drop components for developers to create stereoscopic rendering effects

More information

Using the API... 3 edriven.core... 5 A PowerMapper pattern... 5 edriven.gui... 7 edriven.gui framework architecture... 7 Audio... 9 Animation...

Using the API... 3 edriven.core... 5 A PowerMapper pattern... 5 edriven.gui... 7 edriven.gui framework architecture... 7 Audio... 9 Animation... 1 Using the API... 3 edriven.core... 5 A PowerMapper pattern... 5 edriven.gui... 7 edriven.gui framework architecture... 7 Audio... 9 Animation... 11 Tween class... 11 TweenFactory class... 12 Styling...

More information

Cláudia Ribeiro PHYSICS

Cláudia Ribeiro PHYSICS Cláudia Ribeiro PHYSICS Cláudia Ribeiro Goals: - Colliders - Rigidbodies - AddForce and AddTorque Cláudia Ribeiro AVT 2012 Colliders Colliders components define the shape of an object for the purpose of

More information

OxAM Achievements Manager

OxAM Achievements Manager 1 v. 1.2 (15.11.26) OxAM Achievements Manager User manual Table of Contents About...2 Demo...2 Version changes...2 Known bugs...3 Basic usage...3 Advanced usage...3 Custom message box style...3 Custom

More information

+ Typed Message [Vlissides, 1998]

+ Typed Message [Vlissides, 1998] Background literature Introduction to Game Programming Autumn 2016 04. Game Programming Patterns and Techniques Juha Vihavainen University of Helsinki E. Gamma et al. (1994), Design Patterns: Elements

More information

CS248 Lecture 2 I NTRODUCTION TO U NITY. January 11 th, 2017

CS248 Lecture 2 I NTRODUCTION TO U NITY. January 11 th, 2017 CS248 Lecture 2 I NTRODUCTION TO U NITY January 11 th, 2017 Course Logistics Piazza Staff Email: cs248-win1617-staff@lists.stanford.edu SCPD Grading via Google Hangouts: cs248.winter2017@gmail.com Homework

More information

GameSalad Creator Interface

GameSalad Creator Interface GameSalad Creator Interface Library panel A)ributes panel Stage and Backstage Now, a5er knowing where to locate the buons above, let s move to the fun part: Create your own game Create

More information

3dSprites. v

3dSprites. v 3dSprites v1.0 Email: chanfort48@gmail.com 3dSprites allows you to bring thousands of animated 3d objects into the game. Only up to several hundreds of animated objects can be rendered using meshes in

More information

the gamedesigninitiative at cornell university Lecture 12 2D Animation

the gamedesigninitiative at cornell university Lecture 12 2D Animation Lecture 12 2D Animation Animation Basics: The FilmStrip Animation is a sequence of hand-drawn frames Smoothly displays action when change quickly Also called flipbook animation Arrange animation in a sprite

More information

The Motion Controller uses the Actor Controller to actually move the character. So, please review the Actor Controller Guide as well!

The Motion Controller uses the Actor Controller to actually move the character. So, please review the Actor Controller Guide as well! The Motion Controller uses the Actor Controller to actually move the character. So, please review the Actor Controller Guide as well! Input Source Camera Movement Rotations Motion Controller Note: MC is

More information

COMS W4172 : 3D User Interfaces Spring 2017 Prof. Steven Feiner Date out: January 26, 2017 Date due: January 31, 2017

COMS W4172 : 3D User Interfaces Spring 2017 Prof. Steven Feiner Date out: January 26, 2017 Date due: January 31, 2017 COMS W4172 : 3D User Interfaces Spring 2017 Prof. Steven Feiner Date out: January 26, 2017 Date due: January 31, 2017 Assignment 0.5: Installing and Testing Your Android or ios Development Environment

More information

Damaging, Attacking and Interaction

Damaging, Attacking and Interaction Damaging, Attacking and Interaction In this tutorial we ll go through some ways to add damage, health and interaction to our scene, as always this isn t the only way, but it s the way I will show you.

More information

Office 2007/2010 Conversion

Office 2007/2010 Conversion Instructor Resources C H A P T E R 4 Perspective, Scene Design, and Basic Animation Office 2007/2010 Conversion In general, the existing directions related to Microsoft Office products contain specific

More information

About the FBX Exporter package

About the FBX Exporter package About the FBX Exporter package Version : 1.3.0f1 The FBX Exporter package provides round-trip workflows between Unity and 3D modeling software. Use this workflow to send geometry, Lights, Cameras, and

More information

8iUnityPlugin Documentation

8iUnityPlugin Documentation 8iUnityPlugin Documentation Release 0.4.0 8i Jun 08, 2017 Contents 1 What is the 8i Plugin? 3 2 Why are we doing it? 5 3 Supported Unity Versions and Platforms 7 i ii Welcome to the 8i Unity Alpha programme!

More information

Fruit Snake SECTION 1

Fruit Snake SECTION 1 Fruit Snake SECTION 1 For the first full Construct 2 game you're going to create a snake game. In this game, you'll have a snake that will "eat" fruit, and grow longer with each object or piece of fruit

More information

Introduction to Game Programming. 9/14/17: Conditionals, Input

Introduction to Game Programming. 9/14/17: Conditionals, Input Introduction to Game Programming 9/14/17: Conditionals, Input Micro-review Games are massive collections of what-if questions that resolve to yes or no Did the player just click the mouse? Has our health

More information

This allows you to choose convex or mesh colliders for you assets. Convex Collider true = Convex Collider. Convex Collider False = Mesh Collider.

This allows you to choose convex or mesh colliders for you assets. Convex Collider true = Convex Collider. Convex Collider False = Mesh Collider. AGF Asset Packager v. 0.4 (c) Axis Game Factory LLC Last Updated: 6/04/2014, By Matt McDonald. Compiled with: Unity 4.3.4. Download This tool may not work with Unity 4.5.0f6 ADDED: Convex Collider Toggle:

More information

8iUnityPlugin Documentation

8iUnityPlugin Documentation 8iUnityPlugin Documentation Release 0.4.0 8i Jul 18, 2017 Contents 1 What is the 8i Plugin? 3 2 Why are we doing it? 5 3 Supported Unity Versions and Platforms 7 4 Supported Unity Versions and Platforms

More information

General Directions for Creating a Program with Flash

General Directions for Creating a Program with Flash General Directions for Creating a Program with Flash These directions are meant to serve as a starting point for a project in Flash. With them, you will create four screens or sections: 1) Title screen;

More information

TUTORIAL: MoveYourRobot with Unity3D You created your own robot with servo- motors and you are wondering how to control it.

TUTORIAL: MoveYourRobot with Unity3D You created your own robot with servo- motors and you are wondering how to control it. TUTORIAL: MoveYourRobot with Unity3D You created your own robot with servo- motors and you are wondering how to control it. This package provide environment and scripts to be easily able to control your

More information

Dialog XML Importer. Index. User s Guide

Dialog XML Importer. Index. User s Guide Dialog XML Importer User s Guide Index 1. What is the Dialog XML Importer? 2. Setup Instructions 3. Creating Your Own Dialogs Using articy:draft a. Conditions b. Effects c. Text Tokens 4. Importing Your

More information

Session 6. Microsoft and The DigiPen Institute of Technology Webcast Series

Session 6. Microsoft and The DigiPen Institute of Technology Webcast Series Session 6 Microsoft and The DigiPen Institute of Technology Webcast Series HOW TO USE THIS DOCUMENT This e-textbook has been distributed electronically using the Adobe Portable Document Format (PDF) format.

More information

Intel RealSense SDK Gesture Sequences Implemented in Unity* 3D

Intel RealSense SDK Gesture Sequences Implemented in Unity* 3D Intel RealSense SDK Gesture Sequences Implemented in Unity* 3D By Lynn Thompson When configuring gestures to control assets in a scene, it s important to minimize the complexity of the gestures and the

More information

VISIT FOR THE LATEST UPDATES, FORUMS & MORE ASSETS.

VISIT  FOR THE LATEST UPDATES, FORUMS & MORE ASSETS. Gargoyle VISIT WWW.SFBAYSTUDIOS.COM FOR THE LATEST UPDATES, FORUMS & MORE ASSETS. 1. INTRODUCTION 2. QUICK SET UP 3. PROCEDURAL VALUES 4. SCRIPTING 5. ANIMATIONS 6. LEVEL OF DETAIL 7. CHANGE LOG 1. Introduction

More information

Table of contents. Introduction. Having finally realized your ambitious plans for a game, you might face big performance

Table of contents. Introduction. Having finally realized your ambitious plans for a game, you might face big performance Table of contents Introduction Introduction... 1 Optimizing Unity games... 2 Rendering performance...2 Script performance...3 Physics performance...3 What is this all about?...4 How does M2HCullingManual

More information

1.7 Inventory Item Animation Legacy Mecanim General Settings Waypoints Group

1.7 Inventory Item Animation Legacy Mecanim General Settings Waypoints Group ELIOT MANUAL Contents 1 Agent... 4 1.1 Description... 4 1.2 Unit Factory... 5 1.2.1 General... 5 1.2.2 Perception... 6 1.2.3 Motion... 6 1.2.4 Resources... 7 1.2.5 Other... 7 1.2.6 Skills... 7 1.2.7 Create...

More information

Progress Bar Pack. Manual

Progress Bar Pack. Manual Progress Bar Pack Manual 1 Overview The Progress Bar Pack contains a selection of textures, shaders and scripts for creating different ways to visualize linear data, such as health, level load progress,

More information

Quick Start - Simple Motions

Quick Start - Simple Motions Quick Start - Simple Motions While this document is about building motions using code, there is another option. If all you re really needing to do is trigger a simple animation or chain of animations,

More information

Coin Pusher Pro Asset - README

Coin Pusher Pro Asset - README Coin Pusher Pro Asset - README Created by DreamTapp Studios LLC This README document includes helpful hints, tutorials, and a description of how the scripts work together. If you have any questions or

More information

Introduction. QuickStart and Demo Scenes. Support & Contact info. Thank you for purchasing!

Introduction. QuickStart and Demo Scenes. Support & Contact info. Thank you for purchasing! RELEASE NOTES V.4.1 / JUNE.2017 Contents Introduction... 3 QuickStart and Demo Scenes... 3 Support & Contact info... 3 How to use the asset in your project... 4 Custom Editor Properties... 4 Grid Configuration:...

More information

Introduction to Game Programming Autumn Game Programming Patterns and Techniques

Introduction to Game Programming Autumn Game Programming Patterns and Techniques Introduction to Game Programming Autumn 2017 02. Game Programming Patterns and Techniques Juha Vihavainen University of Helsinki Background literature Erich Gamma et al. (1994), Design Patterns: Elements

More information

AN INTRODUCTION TO SCRATCH (2) PROGRAMMING

AN INTRODUCTION TO SCRATCH (2) PROGRAMMING AN INTRODUCTION TO SCRATCH (2) PROGRAMMING Document Version 2 (04/10/2014) INTRODUCTION SCRATCH is a visual programming environment and language. It was launched by the MIT Media Lab in 2007 in an effort

More information

My Awesome Presentation Exercise

My Awesome Presentation Exercise My Awesome Presentation Exercise Part One: Creating a Photo Album 1. Click on the Insert tab. In the Images group click on the Photo Album command. 2. In the Photo Album window that pops up, look in the

More information

Android Native Audio Music

Android Native Audio Music Android Native Audio Music Copyright 2015-2016 Christopher Stanley Android Native Audio Music (ANA Music) is an asset for Unity 4.3.4-5.x on Android. It provides easy access to the native Android audio

More information

Integrating Physics into a Modern Game Engine. Object Collision. Various types of collision for an object:

Integrating Physics into a Modern Game Engine. Object Collision. Various types of collision for an object: Integrating Physics into a Modern Game Engine Object Collision Various types of collision for an object: Sphere Bounding box Convex hull based on rendered model List of convex hull(s) based on special

More information

Tutorial: Using the UUCS Crowd Simulation Plug-in for Unity

Tutorial: Using the UUCS Crowd Simulation Plug-in for Unity Tutorial: Using the UUCS Crowd Simulation Plug-in for Unity Introduction Version 1.1 - November 15, 2017 Authors: Dionysi Alexandridis, Simon Dirks, Wouter van Toll In this assignment, you will use the

More information

Index. GrabSprite AddLightStyle... 3 AnimateTile... 4 AnimateTilePosition... 5 AnimateTileRange... 6 CameraRotationZ... 7

Index. GrabSprite AddLightStyle... 3 AnimateTile... 4 AnimateTilePosition... 5 AnimateTileRange... 6 CameraRotationZ... 7 Index AddLayer... 2 AddLightStyle... 3 AnimateTile... 4 AnimateTilePosition... 5 AnimateTileRange... 6 CameraRotationX... 7 CameraRotationY... 7 CameraRotationZ... 7 ChangeLightStyle... 8 CopyGroupToPosition...

More information

PixelSurface a dynamic world of pixels for Unity

PixelSurface a dynamic world of pixels for Unity PixelSurface a dynamic world of pixels for Unity Oct 19, 2015 Joe Strout joe@luminaryapps.com Overview PixelSurface is a small class library for Unity that lets you manipulate 2D graphics on the level

More information

OculusUnityMatlab Documentation

OculusUnityMatlab Documentation OculusUnityMatlab Documentation Release 0.0.1 Luca Donini December 31, 2016 Contents 1 Another Simple Header 1 1.1 Table of contents:............................................. 1 1.1.1 Installation...........................................

More information

Auto Texture Tiling Tool

Auto Texture Tiling Tool Table of Contents Auto Texture Tiling Tool Version 1.77 Read Me 1. Basic Functionality...2 1.1 Usage...2 1.2 Unwrap Method...3 1.3 Mesh Baking...4 1.4 Prefabs...5 2. Gizmos and Editor Window...6 1.1 Offset...6

More information

Flash Tutorial. Working With Text, Tween, Layers, Frames & Key Frames

Flash Tutorial. Working With Text, Tween, Layers, Frames & Key Frames Flash Tutorial Working With Text, Tween, Layers, Frames & Key Frames Opening the Software Open Adobe Flash CS3 Create a new Document Action Script 3 In the Property Inspector select the size to change

More information

Index. Allan Fowler and Philip Chu 2017 A. Fowler and P. Chu, Learn Unity 2017 for ios Game Development,

Index. Allan Fowler and Philip Chu 2017 A. Fowler and P. Chu, Learn Unity 2017 for ios Game Development, Index A Advanced physics barrels, bowl, 203 on asset store, 203 BarrelPin prefab, 206, 213 box, 208 BoxCollider, 210 211 CapsuleCollider, 206 collider, 206 component copy, 209 compound collider, 208 GameObjects,

More information

FlowCanvas Offline Documentation.

FlowCanvas Offline Documentation. http://flowcanvas.paradoxnotion.com 1. Getting Started... 3 1.1. The FlowScript Controller... 3 1.2. Understanding the Flow... 4 1.3. Adding nodes... 5 1.4. Connecting Nodes... 7 1.5. The "Self" Parameter...

More information