UFCFSU-30-13D Technologies for the Web Creating and Updating a Graphical Heads-Up Display (HUD)

Slides:



Advertisements
Similar presentations
Understanding an Apps Architecture ASFA Computer Science: Principles Fall 2013.
Advertisements

Java Script Session1 INTRODUCTION.
Programming Tips for .NetUI
UFCFSU-30-13D Technologies for the Web Creating and Using GUI Components.
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 6 Functions.
TC 310 The Computer in Technical Communication Dr. Jennifer Turns Week 5, Day 1 (10/28)
Macromedia Flash MX 2004 – Design Professional Macromedia Flash MX GETTING STARTED WITH.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Sixth Edition Chapter 6: Functions by.
11 Games and Content Session 4.1. Session Overview  Show how games are made up of program code and content  Find out about the content management system.
UFCEKU-20-3Web Games Programming Unity 3D Physics Colliders and Object Collisions.
Sage CRM Developers Course
CSCI 6962: Server-side Design and Programming Introduction to AJAX.
Overview of Previous Lesson(s) Over View  ASP.NET Pages  Modular in nature and divided into the core sections  Page directives  Code Section  Page.
CIM6400 CTNW (04/05) 1 CIM6400 CTNW Lesson 6 – More on Windows 2000.
UFCEKU-20-3Web Games Programming Unity 3D Basic Concepts Using and Creating Prefabs.
“Initial Reality” (location aware roleplaying game) Tian Li & Nate Hansen.
Developing the Game User Interface (UI) Lesson 5.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 6 Functions.
Chapter 6: Functions Starting Out with C++ Early Objects
Subject Matter II 1 Software Copyright Oren Bracha, Summer 2015.
3D Game Programming All in One By Kenneth C. Finney.
Home Appliance Control System
1 Creation versus Evolution. 2 Creation versus Evolution The Theory of Intelligent Design holds that certain aspects of the Universe are best explained.
Web Games Programming An Introduction to Unity 3D.
242/102/49 0/51/59 181/172/166 Primary colors 248/152/29 PMS 172 PMS 137 PMS 546 PMS /206/ /227/ /129/123 Secondary colors 114/181/204.
Web Games Programming Unity Scripting Fundamentals.
UFCFS D Technologies for the Web Unity 3D: Review of Topics and Related Concepts.
Visual C# 2012 How to Program © by Pearson Education, Inc. All Rights Reserved.
SE 320 – Introduction to Game Development Lecture 3: Unity’s Interface and Concepts Lecturer: Gazihan Alankuş Please look at the last two slides for assignments.
Institute of Technology Sligo - Dept of Computing Sem 2 Chapter 12 Routing Protocols.
SE 320 – Introduction to Game Development Lecture 7: Programming Lecturer: Gazihan Alankuş Please look at the last two slides for assignments (marked with.
Visual C# 2012 How to Program © by Pearson Education, Inc. All Rights Reserved.
Java Applets: GUI Components, Events, Etc. Ralph Westfall June, 2010.
Menu Creation Business Rules Menu System By George Tisdale (April 2005)
UFCEK-20-3Web Games Programming Unity 3D: Review of Topics Publishing for the Web.
Unity GUI Creating and Using GUI Components. Agenda GUI Components GUI Layout Using Styles and Skins for Design ‘Look and Feel’ Scripting GUI Communication.
Alternate Version of STARTING OUT WITH C++ 4 th Edition Chapter 6 Functions.
Starting Out with C++ Early Objects ~~ 7 th Edition by Tony Gaddis, Judy Walters, Godfrey Muganda Modified for CMPS 1044 Midwestern State University 6-1.
1 Brief Version of Starting Out with C++, 4th Brief Edition Chapter 6 Functions.
LESSON #10: Digital Playtesting & Introduction to Character Animation with Mecanim DGMD E-70 Principles of Game Design.
CSCI 6962: Server-side Design and Programming Facelets and User Interface Design.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Brief Edition Chapter 6 Functions.
JavaScript II ECT 270 Robin Burke. Outline Functions Events and event handling Form validation.
Java - hello world example public class HelloWorld { public static void main (String args[]) { System.out.println("Hello World"); }
UFCFX5-15-3Mobile Device Development Unity 3D Development for Android Unity Mobile Assets.
Lecture 4 – Function (Part 1) FTMK, UTeM – Sem /2014.
Chapter 6 Functions. 6-2 Topics 6.1 Modular Programming 6.2 Defining and Calling Functions 6.3 Function Prototypes 6.4 Sending Data into a Function 6.5.
UFCFSU-30-13D Technologies for the Web An Introduction to Unity 3D.
1 A Look at the Application Authorized users can access Communicator! NXT from any Internet-capable computer via the Web.
6. (supplemental) User Interface Design. User Interface Design System users often judge a system by its interface rather than its functionality A poorly.
Sem 2 v2 Chapter 12: Routing. Routers can be configured to use one or more IP routing protocols. Two of these IP routing protocols are RIP and IGRP. After.
Graham (ThomasfamilyZA) Brendan (BrendsZA) Nicole (ThomasfamilyZA) GC3KEQY Techno Event 3 30 June 2012
1 Visual Basic: An Object Oriented Approach 7 – The User interface.
UFCEKU-20-3Web Games Programming Creating and Updating a Graphical Heads-Up Display (HUD)
Section 10.1 Define scripting
Quick Intro to Unity Lecture 2.
3D Technologies for the Web
Program Management Portal (PgMP): What’s New in R8 for the Client
3GB3 Game Design Unity 3D Basics.
Web Games Programming Creating Split-View Cameras and Camera Overlays.
Graphical Output Graphical Text.
Basic XHTML Tables XHTML tables—a frequently used feature that organizes data into rows and columns. Tables are defined with the table element. Table.
DB Implementation: MS Access Forms
Predefined Dialog Boxes
DB Implementation: MS Access Forms
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Game Loop Update & Draw.
Fundaments of Game Design
Games Development 2 Tools Programming
Presentation transcript:

UFCFSU-30-13D Technologies for the Web Creating and Updating a Graphical Heads-Up Display (HUD)

UFCFSU-30-23D Technologies for the Web Agenda The Typical Role of a Heads-Up Display (HUD) Steps required in implementing a HUD Creating the HUD Artwork Components Positioning HUD Components using GUI Coordinate System Declaration and Initialization of Components via Scripts Updating the HUD Based on 3D World States and Events

UFCFSU-30-23D Technologies for the Web Role of a Head-Up Display Inform user of character’s state, e.g. health, power, number of lives Information on capabilities –provide real-time update of collectable items that aid progression in the scenario Timers – typically time down to zero or total time value General information about other elements states in the world Camera ‘birdseye’ viewpoints to aid navigation in a complex world Menu items to access change options and settings.

UFCFSU-30-23D Technologies for the Web Steps Required to Establish a HUD Acquire or create art work in an appropriate format Import the HUD artwork via Asset- Import New Asset Create a GUI Texture Game Object and associate the artwork with the texture object Position the HUD components in the interface Create scripts which initialize and update the HUD based on world states and events Attach scripts to objects that change world state and trigger events which update values in the appropriate HUD script

UFCFSU-30-23D Technologies for the Web Creating the HUD Components Create custom artwork to suit the given scenario ( images text and numeric type if required etc.) Use.psd for content creation to retain high quality originals Export to Portable Network Graphic format with 32 bit depth to retain alpha transparency (.png 32)

UFCFSU-30-23D Technologies for the Web Positioning HUD Components HUD components use the same coordinate positioning as Camera Overlays. The x position in between 0..1 and the y position is between

UFCFSU-30-23D Technologies for the Web GUI Texture in Default Position Texture centered at x = 0.5, y = 0.5

UFCFSU-30-23D Technologies for the Web GUI Texture in Default Position Texture left positioned at x = 0.1, y = 0.37

UFCFSU-30-23D Technologies for the Web HUD Declaration and Initialization public variables associated with textures

UFCFSU-30-23D Technologies for the Web Updating the HUD via Scripts (BatteryCollect.js) // static variable is accessible by other scripts i.e. its // variable scope is global public int charge; Texture2D charge1tex; Texture2D charge2tex; Texture2D charge3tex; Texture2D charge4tex; Texture2D charge0tex; // initialise GUI texture to false (don't display it) void Start(){ guiTexture.enabled = false; charge = 0; } This script is attached to the GUI Texture GameObject

UFCFSU-30-23D Technologies for the Web /* the Update method checks status of charge variable which is increased via an external script each time the player collides (collects) with a battery */ void Update () { /* first battery collected assign the first texture image to guiTexture and enable (display) texture */ if(charge == 1){ guiTexture.texture = charge1tex; guiTexture.enabled = true; } // display subsequent textures to indicate power collected else if(charge == 2){ guiTexture.texture = charge2tex; } // etc. Updating the HUD via Scripts

UFCFSU-30-23D Technologies for the Web Updating the HUD via Scripts (PlayerCollisions.js) void Start () { } void Update () { } public void OnTriggerEnter(Collider collisionInfo){ if(collisionInfo.gameObject.tag == "battery"){ BatteryCollect.charge++; Destroy(collisionInfo.gameObject); } This script is attached to the First Person Controller

UFCFSU-30-23D Technologies for the Web Island HUD example

UFCFSU-30-23D Technologies for the Web Summary Heads Up Displays are an important aspect of the user experience and enhance usability. HUDs in Unity 3D are easy to setup but often require artwork HUD content to be created which is often the most time consuming stage. The artwork is imported as a new asset(s) and associated with a GUI Texture GameObject via public variables. The script which directly changes the HUDs elements will be attached to the GUI Texture GameObject. The script which triggers events communicates with the GUI texture script via a public method. This script is typical attached to the First Person Controller