Holistic Mobile Game Development with Unity 2015 Taylor & Francis. All rights Reserved.

Slides:



Advertisements
Similar presentations
Chapter 15 Debugging. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display Debugging with High Level Languages.
Advertisements

Programming Languages and Paradigms
CS105 INTRODUCTION TO COMPUTER CONCEPTS INTRO TO PROGRAMMING Instructor: Cuong (Charlie) Pham.
Chapter 3: Beginning Problem Solving Concepts for the Computer Programming Computer Programming Skills /1436 Department of Computer Science.
COSC 120 Computer Programming
1 Java Basics. 2 Compiling A “compiler” is a program that translates from one language to another Typically from easy-to-read to fast-to-run e.g. from.
The Analytical Engine Module 6 Program Translation.
Introduction to Computers and Programming Lecture 5 Boolean type; if statement Professor: Evan Korth New York University.
Java An introduction. Example 1 public class Example1 { public static void main (String [] args) { System.out.println (“This is the first example”); int.
Guide To UNIX Using Linux Third Edition
Introduction to Unix (CA263) Introduction to Shell Script Programming By Tariq Ibn Aziz.
CS 104 Introduction to Computer Science and Graphics Problems Software and Programming Language (2) Programming Languages 09/26/2008 Yang Song (Prepared.
Chapter 8: Introduction to High-level Language Programming Invitation to Computer Science, C++ Version, Third Edition.
Introduction To C++ Programming 1.0 Basic C++ Program Structure 2.0 Program Control 3.0 Array And Structures 4.0 Function 5.0 Pointer 6.0 Secure Programming.
Final Exam Review Instructor : Yuan Long CSC2010 Introduction to Computer Science Apr. 23, 2013.
CS102 Introduction to Computer Programming
Chapter 8 High-Level Programming Languages (modified by Erin Chambers)
High-Level Programming Languages: C++
Chapter 6: User-Defined Functions I Instructor: Mohammad Mojaddam
Introduction to Shell Script Programming
CIS Computer Programming Logic
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming 1.
Created by, Author Name, School Name—State FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities.
CSC141 Introduction to Computer Programming
DEPARTMENT OF COMPUTER SCIENCE & TECHNOLOGY FACULTY OF SCIENCE & TECHNOLOGY UNIVERSITY OF UWA WELLASSA 1 CST 221 OBJECT ORIENTED PROGRAMMING(OOP) ( 2 CREDITS.
By Nicholas Policelli An Introduction to Java. Basic Program Structure public class ClassName { public static void main(String[] args) { program statements.
Software Overview. Why review software? Software is the set of instructions that tells hardware what to do The reason for hardware is to execute a program.
Chapter 6 Programming Languages. © 2005 Pearson Addison-Wesley. All rights reserved 6-2 Chapter 6: Programming Languages 6.1 Historical Perspective 6.2.
Introduction to PHP A user navigates in her browser to a page that ends with a.php extension The request is sent to a web server, which directs the request.
Chapter 6 Programming Languages © 2007 Pearson Addison-Wesley. All rights reserved.
CIS-165 C++ Programming I CIS-165 C++ Programming I Bergen Community College Prof. Faisal Aljamal.
Programming for Beginners Martin Nelson Elizabeth FitzGerald Lecture 2: Variables & Data Types.
Chapter 3 Syntax, Errors, and Debugging Fundamentals of Java.
BEGINNING PROGRAMMING.  Literally – giving instructions to a computer so that it does what you want  Practically – using a programming language (such.
Chapter 3 Top-Down Design with Functions Part II J. H. Wang ( 王正豪 ), Ph. D. Assistant Professor Dept. Computer Science and Information Engineering National.
C LANGUAGE Characteristics of C · Small size
General Computer Science for Engineers CISC 106 Lecture 12 James Atlas Computer and Information Sciences 08/03/2009.
CHAPTER 2 PROBLEM SOLVING USING C++ 1 C++ Programming PEG200/Saidatul Rahah.
Agenda Comments Identifiers Keywords Syntax and Symentics Indentation Variables Datatype Operator.
Spring 2009 Programming Fundamentals I Java Programming XuanTung Hoang Lecture No. 8.
Controlling Computers with Programs When you create a computer program you are creating a set of instructions that tell the computer exactly and completely.
Lecture1 Instructor: Amal Hussain ALshardy. Introduce students to the basics of writing software programs including variables, types, arrays, control.
COP 2551 Introduction to Object Oriented Programming with Java Topics –Introduction to the Java language –Code Commenting –Java Program Structure –Identifiers.
Internet & World Wide Web How to Program, 5/e © by Pearson Education, Inc. All Rights Reserved.
Dept. of Animal Breeding and Genetics Programming basics & introduction to PERL Mats Pettersson.
INTRODUCTION TO COMPUTER PROGRAMMING(IT-303) Basics.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Java Programming: Guided Learning with Early Objects Chapter 1 Basic Elements of Java.
Chapter 10 Programming Fundamentals with JavaScript
Completing the Problem-Solving Process
Data Types, Identifiers, and Expressions
C# and the .NET Framework
Chapter 1. Introduction to Computers and Programming
Data types and variables
BY GAWARE S.R. COMPUTER SCI. DEPARTMENT
JavaScript an introduction.
Chapter 10 Programming Fundamentals with JavaScript
Chapter 1 Introduction(1.1)
High Level Programming Languages
Chapter 6: Programming Languages
A programming language
Understand the interaction between computer hardware and software
Chapter 6 Programming the basic computer
Chapter 15 Debugging.
CS105 Introduction to Computer Concepts Intro to programming
Computer Programming (CS101) Lecture-02
Corresponds with Chapter 5
Python fundamental.
Chapter 15 Debugging.
Presentation transcript:

Holistic Mobile Game Development with Unity 2015 Taylor & Francis. All rights Reserved.

Introduction  Use computational and visual methods to explore the patterns and dynamics at the core of computer game code  Develop a mastery of the processes, data structures, and algorithms found in all processes that form the foundation of programming 2015 Taylor & Francis. All rights Reserved. 2

Programming versus Scripting  Programming languages Machine code: binary, strings, instruction set ○ eg. Cortex-A9 CPU implements Thumb-2 Assembly language: symbolic representation, assembler ○ eg. Thumb-2: MOV 2015 Taylor & Francis. All rights Reserved. 3

Programming versus Scripting  Programming languages Compiled language: intuitive, English- like, translated by a compiler Interpreter language: scripting languages ○ eg. JavaScript, Lua, 2015 Taylor & Francis. All rights Reserved. 4

Scripting Literacy  Anatomy of C# namespace myCeeSharpNamespace { class holisticUnityCeeSharp { public static void Main(string[] args) { System.Console.WriteLine(“Hey!”); 2015 Taylor & Francis. All rights Reserved. 5

Scripting 2015 Taylor & Francis. All rights Reserved. 6  Logic Logic Statements: Boolean algebra AND, OR... NOT, NAND, NOR, XOR, XNOR Truth tables  Comments // This is a single line comment. /* This is a multi-line comment. */

Scripting 2015 Taylor & Francis. All rights Reserved. 7  Variables Modified block of computer memory used to store a value Data types

Scripting Literacy  Operators Arithmetic ○ =, +, -, *, / Relational ○ >, =, <=, ==, 2015 Taylor & Francis. All rights Reserved. 8  Functions Blocks of code performing specialized operations Libraries

Scripting Literacy  Loops Conditional statements Multiple executions for 2015 Taylor & Francis. All rights Reserved. 9  Conditional Statements Use Boolean algebra Divert flow if else

Scripting 2015 Taylor & Francis. All rights Reserved. 10  Arrays String together same datatypes One dimensional Multi-dimensional Store multiple data or objects

Scripting Literacy  Classes and 2015 Taylor & Francis. All rights Reserved. 11

Scripting Literacy  Classes and Objects Constructors ○ Main function call and allocates memory Properties/Variables ○ float xPos = myPosition.x; Functions/Methods ○ 2015 Taylor & Francis. All rights Reserved. 12

Scripting Literacy  Yields and Coroutines Freeze? Pause the execution of the code and not effect the game 2015 Taylor & Francis. All rights Reserved. 13

Scripting Literacy  C# versus JavaScript Primary differences ○ How the variables are declared ○ How the functions are 2015 Taylor & Francis. All rights Reserved. 14 JavaScript C#

Scripting Literacy  Logical Errors and Syntactical Errors  Common Coding Errors 1. No semicolon at the end of a 2015 Taylor & Francis. All rights Reserved. 15

Scripting Literacy 2. A missing matching parenthesis 3. A line break inside a string Debug.Log(“Hi There“) ; Or: Debug.Log (“Hi” Taylor & Francis. All rights Reserved. 16

Scripting Literacy 4. The wrong casing Debug or debug ○ error CS0103: The name ‘debug’ does not exist in the current context 5. The wrong 2015 Taylor & Francis. All rights Reserved. 17

Scripting Literacy 6. The use of a reserved word for a variable or class name 7. The filename doesn’t match the class 2015 Taylor & Francis. All rights Reserved. 18

Scripting Literacy 8. A float has been initialized without an “f” on the end 9. The wrong type of value is being assigned to a variable 10. The variables being passed to a function are not the correct 2015 Taylor & Francis. All rights Reserved. 19

Game Mathematics Literacy  Points x, y and z axes 2015 Taylor & Francis. All rights Reserved. 20

Game Mathematics Literacy  Vectors ○ Direction and 2015 Taylor & Francis. All rights Reserved. 21

Game Mathematics Literacy  Angles Normalizing Dot product ○ Forward and backward Cross product ○ Turning 2015 Taylor & Francis. All rights Reserved. 22

Game Mathematics Literacy  Affine Transformations Constant proportions Combination of: ○ translations (moving) ○ scalings (resizing) ○ rotations (orienting) ○ 2015 Taylor & Francis. All rights Reserved. 23

Procedural Content Generation  Fractals Algorithmically generated patterns Strange 2015 Taylor & Francis. All rights Reserved. 24

Procedural Content Generation  Perlin Noise Randomness generated from sine and cosine waves Height 2015 Taylor & Francis. All rights Reserved. 25

Summary Procedural Literacy  C# scripting and an examination of fundamental programming constructs  Essential mathematics for 3D game programming The power of algorithms and mathematics in the Minecraft landscape recreation Exploring the boundary between visual beauty and logical constructions  Introduction to why and how these fundamentals are implemented over and over again  Why you need this knowledge to be a games 2015 Taylor & Francis. All rights Reserved. 26