Deeper into GameplayKit with DemoBots
|
|
- Baldwin McLaughlin
- 5 years ago
- Views:
Transcription
1 Graphics and Games #WWDC15 Deeper into GameplayKit with DemoBots Session 609 Dave Addey Sample Code Engineer Dave Schaefgen Sample Code Engineer Michael DeWitt Sample Code Engineer 2015 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission from Apple.
2
3
4 Download Sample Files
5 Recommended Sessions What s New in SpriteKit Mission Wednesday 10:00AM Introducing GameplayKit Mission Thursday 11:00AM
6 Demo
7 Tools and Technologies
8
9
10
11
12
13
14
15
16 120pt 768pt
17 50pt 320pt (320/768) x 120 = 50pt
18 Optimizing Assets
19 Optimizing Assets Device ipad iphone 4s 5s iphone 6 iphone 6 Plus Mac
20 Optimizing Assets Device Scene Height ipad 768pt iphone 4s 5s 320pt iphone 6 326pt iphone 6 Plus 401pt Mac 1440pt
21 Optimizing Assets Device Scene Height Player Height ipad 768pt 120pt iphone 4s 5s 320pt 50pt iphone 6 326pt 50pt iphone 6 Plus 401pt 62.65pt Mac 1440pt 225pt
22 Optimizing Assets Device Scene Height Player Height 1x ipad 768pt 120pt 120px iphone 4s 5s 320pt 50pt - iphone 6 326pt 50pt - iphone 6 Plus 401pt 62.65pt - Mac 1440pt 225pt 225px
23 Optimizing Assets Device Scene Height Player Height 1x 2x ipad 768pt 120pt 120px 240px iphone 4s 5s 320pt 50pt - 100px iphone 6 326pt 50pt - 100px iphone 6 Plus 401pt 62.65pt - - Mac 1440pt 225pt 225px -
24 Optimizing Assets Device Scene Height Player Height 1x 2x 3x ipad 768pt 120pt 120px 240px - iphone 4s 5s 320pt 50pt - 100px - iphone 6 326pt 50pt - 100px - iphone 6 Plus 401pt 62.65pt px Mac 1440pt 225pt 225px - -
25 Optimizing Assets 100px 180px 120px 240px 225px
26
27
28
29 Before SKCameraNode
30 Before SKCameraNode
31 With SKCameraNode
32 With SKCameraNode
33
34
35
36
37
38
39
40
41
42
43 GKStateMachine PlayerBot state
44 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
45 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
46 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
47 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
48 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
49 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
50 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
51 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
52 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
53 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
54 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
55 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
56 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
57 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
58 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
59 GKStateMachine PlayerBot state Appear Player Controlled Hit Recharging
60
61
62 GKEntity and GKComponent
63 GKEntity and GKComponent PlayerBot
64 GKEntity and GKComponent PlayerBot GroundBot
65 GKEntity and GKComponent PlayerBot GroundBot FlyingBot
66 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow PlayerBot GroundBot FlyingBot
67 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence
68 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence Input
69 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence Input Input Input
70 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence Input Input Input Agent Agent
71 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence Input Input Input Agent Agent Agent
72 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence Input Input Input Agent Agent Agent Rules Rules Rules
73 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence Input Input Input Agent Agent Agent Rules Rules Rules Movement
74 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence Input Input Input Agent Agent Agent Rules Rules Rules Movement Movement
75 GKEntity and GKComponent Render Render Render Shadow Shadow Shadow Animation Animation PlayerBot GroundBot FlyingBot Animation Physics Physics Physics Intelligence Intelligence Intelligence Input Input Input Agent Agent Agent Rules Rules Rules Movement Movement Movement
76 Logic and Gameplay Dave Schaefgen Sample Code Engineer
77 TaskBot Intelligence What s my motivation?
78 TaskBot Intelligence What s my motivation? Good Keep things working
79 TaskBot Intelligence What s my motivation? Good Keep things working Bad Attack the PlayerBot
80 TaskBot Intelligence What s my motivation? Good Keep things working Bad Attack the PlayerBot
81 TaskBot Intelligence What s my motivation? Good Keep things working Bad Attack the PlayerBot Turn other TaskBots
82 TaskBot Intelligence What s my motivation? Good Keep things working Bad Attack the PlayerBot Turn other TaskBots
83 TaskBot Intelligence What s my motivation? Good Keep things working Bad Attack the PlayerBot Turn other TaskBots Interrupt normal work
84 TaskBot Intelligence What s my motivation? Good Keep things working Bad Attack the PlayerBot Turn other TaskBots Interrupt normal work
85 TaskBot Intelligence Determining a mandate
86 TaskBot Intelligence Determining a mandate Fuzzy Logic via GKRuleSystem Characters are engaged Simpler to maintain Emergent behavior
87 Fuzzy Rules I m a little fuzzy
88 Fuzzy Rules I m a little fuzzy Model natural concepts Player is near Percentage of bad TaskBots is high
89 Fuzzy Rules I m a little fuzzy Model natural concepts Player is near Percentage of bad TaskBots is high Implemented via FuzzyTaskBotRule Subclass of GKRule fact is asserted if grade > 0 grade is a function of input
90 Fuzzy Rules Functions for proximity rules
91 Fuzzy Rules Functions for proximity rules 1 Far Medium Near 0.75 Grade factor / 3 factor * (2/3) factor Proximity
92 Fuzzy Rules Functions for proximity rules 1 Far Medium Near 0.75 Grade factor / 3 factor * (2/3) factor Proximity
93 Fuzzy Rules Functions for proximity rules 1 Far Medium Near 0.75 Grade factor / 3 factor * (2/3) factor Proximity
94 Fuzzy Rules Functions for proximity rules 1 Far Medium Near 0.75 Grade factor / 3 factor * (2/3) factor Proximity
95 Fuzzy Rules Functions for proximity rules 1 Far Medium Near 0.75 Grade factor / 3 factor * (2/3) factor Proximity
96 Fuzzy Rules Functions for proximity rules 1 Far Medium Near 0.75 Grade factor / 3 factor * (2/3) factor Proximity
97 Fuzzy Rules Making decisions % Bad TaskBots High % Bad TaskBots Medium % Bad TaskBots Low PlayerBot Near PlayerBot Medium PlayerBot Far Good TaskBot Near Good TaskBot Medium Good TaskBot Far
98 Fuzzy Rules Making decisions Evaluate the rules % Bad TaskBots High % Bad TaskBots Medium % Bad TaskBots Low PlayerBot Near PlayerBot Medium PlayerBot Far Good TaskBot Near Good TaskBot Medium Good TaskBot Far
99 Fuzzy Rules Making decisions Evaluate the rules Combine facts % Bad TaskBots High % Bad PlayerBot TaskBots Medium Good % Bad TaskBots Medium Low PlayerBot Near.30 PlayerBot Far.00 Good TaskBot Near.70 Good TaskBot Far.00
100 Fuzzy Rules Making decisions Evaluate the rules Combine facts rulesystem.minimumgradeforfacts(_:) % Bad TaskBots Medium % Bad TaskBots Low PlayerBot Near.30 PlayerBot Far.00 Good TaskBot Near.70 Good % PlayerBot Good Bad Hunt TaskBots PlayerBot Medium High Far
101 Fuzzy Rules Making decisions Evaluate the rules Combine facts rulesystem.minimumgradeforfacts(_:) Hunt PlayerBot.30
102 Fuzzy Rules Making decisions Evaluate the rules Hunt PlayerBot.30 Combine facts rulesystem.minimumgradeforfacts(_:) Hunt PlayerBot.45 Hunt TaskBot.00 Hunt TaskBot.20
103 Fuzzy Rules Making decisions Evaluate the rules Hunt PlayerBot.30 Combine facts rulesystem.minimumgradeforfacts(_:) Defuzzify rules Hunt PlayerBot.45 Hunt TaskBot.00 Hunt TaskBot.20
104 Fuzzy Rules Making decisions Evaluate the rules Combine facts rulesystem.minimumgradeforfacts(_:) Defuzzify rules Hunt PlayerBot Hunt TaskBot facts.reduce(0.0, combine: max)
105 Fuzzy Rules Making decisions Evaluate the rules Combine facts rulesystem.minimumgradeforfacts(_:) Defuzzify rules Hunt PlayerBot Hunt TaskBot facts.reduce(0.0, combine: max) Hunt the PlayerBot
106 TaskBot Intelligence OK, hunt the PlayerBot
107 TaskBot Intelligence OK, hunt the PlayerBot Get to the PlayerBot Often straightforward
108 TaskBot Intelligence OK, hunt the PlayerBot Get to the PlayerBot Often straightforward Obstacles present a challenge
109 TaskBot Intelligence OK, hunt the PlayerBot Get to the PlayerBot Often straightforward Obstacles present a challenge
110 TaskBot Intelligence OK, hunt the PlayerBot Get to the PlayerBot Often straightforward Obstacles present a challenge Pathfinding via GameplayKit Conveniences for SpriteKit Up and running quickly
111 TaskBot Intelligence OK, hunt the PlayerBot Get to the PlayerBot Often straightforward Obstacles present a challenge Pathfinding via GameplayKit Conveniences for SpriteKit Up and running quickly
112 Pathfinding A way around obstacles
113 Pathfinding A way around obstacles // Convert node physics bodies into GKPolygonObstacles. let obstacles = SKNode.obstaclesFromNodePhysicsBodies(self["//obstacles"])
114 Pathfinding A way around obstacles // Convert node physics bodies into GKPolygonObstacles. let obstacles = SKNode.obstaclesFromNodePhysicsBodies(self["//obstacles"]) // Construct a GKObstacleGraph. let graph = GKObstacleGraph(obstacles: obstacles, bufferradius: 30.0)
115 Pathfinding A way around obstacles // Convert node physics bodies into GKPolygonObstacles. let obstacles = SKNode.obstaclesFromNodePhysicsBodies(self["//obstacles"]) // Construct a GKObstacleGraph. let graph = GKObstacleGraph(obstacles: obstacles, bufferradius: 30.0) // Connect the TaskBot and PlayerBot via their positions. let startnode = graph.connectnodeusingobstacles(taskbot.position) let endnode = graph.connectnodeusingobstacles(playerbot.position)
116 Pathfinding A way around obstacles // Convert node physics bodies into GKPolygonObstacles. let obstacles = SKNode.obstaclesFromNodePhysicsBodies(self["//obstacles"]) // Construct a GKObstacleGraph. let graph = GKObstacleGraph(obstacles: obstacles, bufferradius: 30.0) // Connect the TaskBot and PlayerBot via their positions. let startnode = graph.connectnodeusingobstacles(taskbot.position) let endnode = graph.connectnodeusingobstacles(playerbot.position) // Find the path. let pathnodes = graph.findpathfromnode(startnode, tonode: endnode) as! [GKGraphNode2D]
117 TaskBot Intelligence All mapped out with no way to go
118 TaskBot Intelligence All mapped out with no way to go GKAgent2D to the rescue Configure a GKBehavior GKGoal provides path goals SpriteKit updates via delegate
119 Agent Behavior A smooth motivator
120 Agent Behavior A smooth motivator // Construct a path from the pathnodes. let path = GKPath(graphNodes: pathnodes, radius: 20.0)
121 Agent Behavior A smooth motivator // Construct a path from the pathnodes. let path = GKPath(graphNodes: pathnodes, radius: 20.0) // Create a new behavior. let behavior = GKBehavior()
122 Agent Behavior A smooth motivator // Construct a path from the pathnodes. let path = GKPath(graphNodes: pathnodes, radius: 20.0) // Create a new behavior. let behavior = GKBehavior() // Add goals to follow and stay on the path. let followpathgoal = GKGoal(toFollowPath: path, maxpredictiontime: 1.0, forward: true) behavior.setweight(1.0, forgoal: followpathgoal) let stayonpathgoal = GKGoal(toStayOnPath: path, maxpredictiontime: 1.0) behavior.setweight(1.0, forgoal: stayonpathgoal)
123 Agent Behavior Move along, please
124 Agent Behavior Move along, please // Assign the behavior to the agent. agent.behavior = behavior
125 Agent Behavior Move along, please // Assign the behavior to the agent. agent.behavior = behavior // Agent will update based on the behavior. // Its delegate is notified before and after changes.
126 Agent Behavior Move along, please // Assign the behavior to the agent. agent.behavior = behavior // Agent will update based on the behavior. // Its delegate is notified before and after changes. func agentwillupdate(agent: GKAgent) { // TIP: Update agent position to match node position in SpriteKit. }
127 Agent Behavior Move along, please // Assign the behavior to the agent. agent.behavior = behavior // Agent will update based on the behavior. // Its delegate is notified before and after changes. func agentwillupdate(agent: GKAgent) { // TIP: Update agent position to match node position in SpriteKit. } func agentdidupdate(agent: GKAgent) { // TIP: Update node position in SpriteKit to match agent position. }
128 TaskBot Intelligence Just the beginning
129 TaskBot Intelligence Just the beginning
130 Deployment and Delivery Michael DeWitt Sample Code Engineer
131
132 Time to Fun
133 Initial Download
134 Initial Download This item is over 100MB. DemoBots will not download until you connect to Wi-Fi. Cancel OK
135
136
137
138 6 MB
139 3 Bots 6 MB x
140 3 Bots 5 Actions 6 MB x x
141 In Your App 100 MB 1x 2x 3x
142 In Your App 100 MB 1x 2x 3x
143 App Slicing 100 MB ipad 2, ipad mini 1x 2x 3x iphone 6, iphone 5, iphone 4s, etina ipad one 6 Plus
144 App Slicing 100 MB ipad 2, ipad mini 1x iphone 6, iphone 5, iphone 4s, Retina ipad 2x iphone 6 Plus 3x
145
146
147
148 16 Orientations
149
150
151
152
153
154 App Slicing In DemoBots
155 App Slicing In DemoBots Texture atlases in asset catalogs Decrease the app size Improve gameplay with 16-way animations
156 On Demand Resources
157 Level Tags
158 Level Tags Level1 Level2 Level3
159 Level Tags Level1 Level2 Level3
160 Level Tags Level1 Level2 Level3
161 Level Tags Level01 Level1 Level2 Level3
162 Level Tags Level01 Level1 Level2 Level3
163 Level Tags Level1 Level2 Level3
164 Level Tags Level1 Level2 Level3
165 Level Tags Level1 Level2 Level3
166 Level Tags Level1 Level2 Level3
167 Level Tags Level1 Level2 Level3 FlyingBot
168 Level Tags Level1 Level2 Level3 GroundBot FlyingBot
169
170
171 On Demand Resources In DemoBots
172 On Demand Resources In DemoBots Tag resources for later download Faster initial download time Keep overall storage footprint small
173 Present Next Scene
174 Present Next Scene In Local Storage Prepare Resources Present
175 Present Next Scene In Local Storage Needs Download Prepare Resources Present
176 Present Next Scene In Local Storage Needs Download Prepare Resources Download Error Present
177 Present Next Scene In Local Storage Needs Download Prepare Resources Download Error Present Purge
178 Present Next Scene In Local Storage Needs Download Prepare Resources Download Error Present Purge
179 SceneLoader
180 SceneLoader Initial Downloading Resources Download Failed Resources Available Preparing Resources Resources Ready State
181 SceneLoader Initial Downloading Resources Download Failed Resources Available Preparing Resources Resources Ready State
182 SceneLoader Preparing Resources
183 SceneLoader Preparing Resources override func isvalidnextstate(stateclass: AnyClass) -> Bool { switch stateclass { case is SceneLoaderResourcesReadyState.Type where sceneloader.scene!= nil: return true case is SceneLoaderResourcesAvailableState.Type: return true default: return false } }
184 SceneLoader Preparing Resources override func isvalidnextstate(stateclass: AnyClass) -> Bool { switch stateclass { case is SceneLoaderResourcesReadyState.Type where sceneloader.scene!= nil: return true case is SceneLoaderResourcesAvailableState.Type: return true default: return false } }
185 Final Tips
186 Final Tips Start downloading resources early Request Level2 as soon as Level1 begins
187
188
189 Final Tips Start downloading resources early Request Level2 as soon as Level1 begins
190 Final Tips Start downloading resources early Request Level2 as soon as Level1 begins Modify the priority as needed bundleresourcerequest.loadingpriority = 0.8 operationqueue.qualityofservice =.UserInitiated
191 DemoBots
192 DemoBots Wanted Reduce number of animation frames Fine tune assets for each device Constrain camera to player and level Enforce character state transitions Share functionality between characters Complex situational decision making Elegant character navigation Smooth natural movement Add assets to improve gameplay Speed up initial download Model resource loading
193 DemoBots Wanted Reduce number of animation frames Fine tune assets for each device Constrain camera to player and level Enforce character state transitions Share functionality between characters Complex situational decision making Elegant character navigation Smooth natural movement Add assets to improve gameplay Speed up initial download Model resource loading Technology SpriteKit actions editor Texture atlases in asset catalogs SKCameraNode GKStateMachine GKEntity and GKComponent Fuzzy Logic with GKRuleSystem Pathfinding via GKObstacleGraph GKAgent2D, GKBehavior, and GKGoal Asset catalogs with App Slicing On Demand Resources GKStateMachine
194 Download Sample Files
195 More Information Documentation and Videos Apple Developer Forums Developer Technical Support General Inquiries Allan Schaffer, Game Technologies Evangelist
196 Related Sessions App Thinning in Xcode Presidio Wednesday 9:00AM What s New in SpriteKit Mission Wednesday 10:00AM Going Social with ReplayKit and Game Center Mission Wednesday 1:30PM Introducing On Demand Resources Pacific Heights Wednesday 4:30PM Introducing GameplayKit Mission Thursday 11:00AM
197 Labs GameplayKit Lab SpriteKit Lab GameplayKit Lab Graphics, Games, and Media Lab C Graphics, Games, and Media Lab C Graphics, Games, and Media Lab C Thursday 2:30PM Friday 9:00AM Friday 12:00PM
198
Ingredients of Great Games
Graphics and Games #WWDC14 Ingredients of Great Games Session 602 Geoff Stahl Director, Games and Graphics Software 2014 Apple Inc. All rights reserved. Redistribution or public display not permitted without
More informationGame Technologies for Apple Watch
Graphics and Games #WWDC16 Game Technologies for Apple Watch Session 612 Christy Warren Game Technologies Engineer Fatima Broom Game Technologies Engineer Tyler Casella Game Technologies Engineer 2016
More informationChapter 1:Object Interaction with Blueprints. Creating a project and the first level
Chapter 1:Object Interaction with Blueprints Creating a project and the first level Setting a template for a new project Making sense of the project settings Creating the project 2 Adding objects to our
More informationUnity Certified Programmer
Unity Certified Programmer 1 unity3d.com The role Unity programming professionals focus on developing interactive applications using Unity. The Unity Programmer brings to life the vision for the application
More informationGrading Delays. We don t have permission to grade you (yet) We re working with tstaff on a solution We ll get grades back to you as soon as we can
Grading Delays We don t have permission to grade you (yet) We re working with tstaff on a solution We ll get grades back to you as soon as we can Due next week: warmup2 retries dungeon_crawler1 extra retries
More informationA Character Decision-Making System for FINAL FANTASY XV by Combining Behavior Trees and State Machines
11 A haracter Decision-Making System for FINAL FANTASY XV by ombining Behavior Trees and State Machines Youichiro Miyake, Youji Shirakami, Kazuya Shimokawa, Kousuke Namiki, Tomoki Komatsu, Joudan Tatsuhiro,
More informationMichigan State University Team MSUFCU Money Smash Chronicle Project Plan Spring 2016
Michigan State University Team MSUFCU Money Smash Chronicle Project Plan Spring 2016 MSUFCU Staff: Whitney Anderson-Harrell Austin Drouare Emily Fesler Ben Maxim Ian Oberg Michigan State University Capstone
More informationKey Abstractions in Game Maker
Key Abstractions in Game Maker Foundations of Interactive Game Design Prof. Jim Whitehead January 19, 2007 Creative Commons Attribution 2.5 creativecommons.org/licenses/by/2.5/ Upcoming Assignments Today:
More informationLecture 1: Introduction and Preliminaries
CITS4242: Game Design and Multimedia Lecture 1: Introduction and Preliminaries Teaching Staff and Help Dr Rowan Davies (Rm 2.16, opposite the labs) rowan@csse.uwa.edu.au Help: via help4242, project groups,
More informationDepartment of Computer Science and Engineering The Chinese University of Hong Kong. Year Final Year Project
Digital Interactive Game Interface Table Apps for ipad Supervised by: Professor Michael R. Lyu Student: Ng Ka Hung (1009615714) Chan Hing Faat (1009618344) Year 2011 2012 Final Year Project Department
More informationFpglappy Bird: A side-scrolling game. Overview
Fpglappy Bird: A side-scrolling game Wei Low, Nicholas McCoy, Julian Mendoza 6.111 Project Proposal Draft Fall 2015 Overview On February 10th, 2014, the creator of Flappy Bird, a popular side-scrolling
More informationKey Abstractions in Game Maker
Key Abstractions in Game Maker Foundations of Interactive Game Design Prof. Jim Whitehead January 24, 2008 Creative Commons Attribution 3.0 creativecommons.org/licenses/by/3.0 Upcoming Assignments Today:
More informationLive Agent for Administrators
Live Agent for Administrators Salesforce, Summer 16 @salesforcedocs Last updated: July 28, 2016 Copyright 2000 2016 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com,
More informationNVIDIA APEX: High-Definition Physics with Clothing and Vegetation. Michael Sechrest, IDV Monier Maher, NVIDIA Jean Pierre Bordes, NVIDIA
NVIDIA APEX: High-Definition Physics with Clothing and Vegetation Michael Sechrest, IDV Monier Maher, NVIDIA Jean Pierre Bordes, NVIDIA Outline Introduction APEX: A Scalable Dynamics Framework APEX Clothing
More informationRevision for Grade 6 in Unit #1 Design & Technology Subject Your Name:... Grade 6/
Your Name:.... Grade 6/ SECTION 1 Matching :Match the terms with its explanations. Write the matching letter in the correct box. The first one has been done for you. (1 mark each) Term Explanation 1. Gameplay
More informationPrinciples of Computer Game Design and Implementation. Lecture 29
Principles of Computer Game Design and Implementation Lecture 29 Putting It All Together Games are unimaginable without AI (Except for puzzles, casual games, ) No AI no computer adversary/companion Good
More informationVoiceOver: App Testing Beyond The Visuals
Session #WWDC18 VoiceOver: App Testing Beyond The Visuals 226 James Vest, Apple Quality Assurance Engineer 2018 Apple Inc. All rights reserved. Redistribution or public display not permitted without written
More informationBall Color Switch. Game document and tutorial
Ball Color Switch Game document and tutorial This template is ready for release. It is optimized for mobile (iphone, ipad, Android, Windows Mobile) standalone (Windows PC and Mac OSX), web player and webgl.
More informationThe purpose of this document is to outline the structure and tools that come with FPS Control.
FPS Control beta 4.1 Reference Manual Purpose The purpose of this document is to outline the structure and tools that come with FPS Control. Required Software FPS Control Beta4 uses Unity 4. You can download
More informationCOMPASS NAVIGATOR PRO QUICK START GUIDE
COMPASS NAVIGATOR PRO QUICK START GUIDE Contents Introduction... 3 Quick Start... 3 Inspector Settings... 4 Compass Bar Settings... 5 POIs Settings... 6 Title and Text Settings... 6 Mini-Map Settings...
More informationDIGITAL WATERMARKING GUIDE
link CREATION STUDIO DIGITAL WATERMARKING GUIDE v.1.4 Quick Start Guide to Digital Watermarking Here is our short list for what you need BEFORE making a linking experience for your customers Step 1 File
More informationAd Specifications July, 2016
Ad Specifications 2016 July, 2016 Advertising Specifications General Spil Games Requirements 1. All final campaign assets must be received according to spec 3 business days in advance in order to guarantee
More informationBackgrounds & Image Planes Maya 2013
1999-2012 Michael O'Rourke Backgrounds & Image Planes Maya 2013 Set up Model a few primitives for a simple scene or retrieve an earlier scene >Window >Rendering Editors >Render Settings >Image Size tab
More informationAnnex IV - Stencyl Tutorial
Annex IV - Stencyl Tutorial This short, hands-on tutorial will walk you through the steps needed to create a simple platformer using premade content, so that you can become familiar with the main parts
More informationINTRODUCTION TO GAME AI
CS 387: GAME AI INTRODUCTION TO GAME AI 3/31/2016 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2016/cs387/intro.html Outline Game Engines Perception
More informationIntroduction. Modding Kit Feature List
Introduction Welcome to the Modding Guide of Might and Magic X - Legacy. This document provides you with an overview of several content creation tools and data formats. With this information and the resources
More informationBefore using the Device. Using your Drifta. Connecting to a PC
Quick Guide v1.0 Introduction Welcome to the exciting world of DStv Mobile. With your Drifta DStv Mobile Decoder, you will be able to connect to DVB-H broadcast mobile TV and have access to DStv Mobile
More information2/22/2006 Team #7: Pez Project: Empty Clip Members: Alan Witkowski, Steve Huff, Thos Swallow, Travis Cooper Document: VVP
2/22/2006 Team #7: Pez Project: Empty Clip Members: Alan Witkowski, Steve Huff, Thos Swallow, Travis Cooper Document: VVP 1. Introduction and overview 1.1 Purpose of this Document The purpose of this document
More informationComputer Science Education: A Game to Teach Children about Programming. Xiaoxiao Wang
Computer Science Education: A Game to Teach Children about Programming by Xiaoxiao Wang A Thesis Presented in Partial Fulfillment of the Requirements for the Degree Master of Science Approved April 2017
More informationVirtual Environments and Game AI
Virtual Environments and Game AI Dr Michael Papasimeon Guest Lecture Graphics and Interaction 9 August 2016 Introduction Introduction So what is this lecture all about? In general... Where Artificial Intelligence
More informationThis tutorial will guide you through the process of adding basic ambient sound to a Level.
Tutorial: Adding Ambience to a Level This tutorial will guide you through the process of adding basic ambient sound to a Level. You will learn how to do the following: 1. Organize audio objects with a
More informationCrowd-steering behaviors Using the Fame Crowd Simulation API to manage crowds Exploring ANT-Op to create more goal-directed crowds
In this chapter, you will learn how to build large crowds into your game. Instead of having the crowd members wander freely, like we did in the previous chapter, we will control the crowds better by giving
More informationForeword Thank you for purchasing the Motion Controller!
Foreword Thank you for purchasing the Motion Controller! I m an independent developer and your feedback and support really means a lot to me. Please don t ever hesitate to contact me if you have a question,
More informationSteamVR Unity Plugin Quickstart Guide
The SteamVR Unity plugin comes in three different versions depending on which version of Unity is used to download it. 1) v4 - For use with Unity version 4.x (tested going back to 4.6.8f1) 2) v5 - For
More informationTable of Contents. Creating Your First Project 4. Enhancing Your Slides 8. Adding Interactivity 12. Recording a Software Simulation 19
Table of Contents Creating Your First Project 4 Enhancing Your Slides 8 Adding Interactivity 12 Recording a Software Simulation 19 Inserting a Quiz 24 Publishing Your Course 32 More Great Features to Learn
More informationTac Due: Sep. 26, 2012
CS 195N 2D Game Engines Andy van Dam Tac Due: Sep. 26, 2012 Introduction This assignment involves a much more complex game than Tic-Tac-Toe, and in order to create it you ll need to add several features
More informationLive Agent for Administrators
Live Agent for Administrators Salesforce, Spring 17 @salesforcedocs Last updated: April 3, 2017 Copyright 2000 2017 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com,
More informationThis guide will cover the basics of base building, we will be using only the default recipes every character starts out with.
Basebuilding Guide Basic base building guide. This guide will cover the basics of base building, we will be using only the default recipes every character starts out with. The base building in Miscreated
More informationCreate a benchmark mobile game! Tobias Tost Senior Programmer, Blue Byte GmbH A Ubisoft Studio
Create a benchmark mobile game! Tobias Tost Senior Programmer, Blue Byte GmbH A Ubisoft Studio Who am I? Tobias Tost, MSc In the Games Industry since 2006 Visualization, Sound, Gameplay, Tools Joined Ubisoft
More informationTac 3 Feedback. Movement too sensitive/not sensitive enough Play around with it until you find something smooth
Tac 3 Feedback Movement too sensitive/not sensitive enough Play around with it until you find something smooth Course Administration Things sometimes go wrong Our email script is particularly temperamental
More informationModule 1 Introducing Kodu Basics
Game Making Workshop Manual Munsang College 8 th May2012 1 Module 1 Introducing Kodu Basics Introducing Kodu Game Lab Kodu Game Lab is a visual programming language that allows anyone, even those without
More informationWorkflow. Sample Project
Workflow Sample Project In this tutorial, we will walk you through a sample project, step-by-step, to help you become more familiar with the Clean program focusing on using a combination of presets and
More informationOfficial Documentation
Official Documentation Doc Version: 1.0.0 Toolkit Version: 1.0.0 Contents Technical Breakdown... 3 Assets... 4 Setup... 5 Tutorial... 6 Creating a Card Sets... 7 Adding Cards to your Set... 10 Adding your
More informationDecember Workshop 2018 Catalog
December Workshop 2018 Catalog REGISTRATION OPENS: MONDAY, July 2, 2018 SESSION DATES: November 26 th December 15 th, 2018 REGISTER ONLINE: Follow us on Facebook, Instagram, and Twitter! P: 404.252.2927
More informationUnit One: Explore Uses of Technology in Business
Business Communication 308 Unit One: Explore Uses of Technology in Business Overview and Purpose: This unit asks you to investigate the use of technology in business today. By investigating the uses of
More informationPropietary Engine VS Commercial engine. by Zalo
Propietary Engine VS Commercial engine by Zalo zalosan@gmail.com About me B.S. Computer Engineering 9 years of experience, 5 different companies 3 propietary engines, 2 commercial engines I have my own
More informationIntroduction to Alice. Alice is named in honor of Lewis Carroll s Alice in Wonderland
Introduction to Alice Alice is named in honor of Lewis Carroll s Alice in Wonderland Computer Programming Step by step set of instructions telling a computer how to perform a specific task 2 problems some
More informationApple Store Summer Workshops
Apple Store Summer Workshops Find a workshop you like. Select a time that works for you and your child. Email your preference to community@ilcm.org.mo by July 20th. See you at the Apple Store at Galaxy
More informationCS 387/680: GAME AI DECISION MAKING. 4/19/2016 Instructor: Santiago Ontañón
CS 387/680: GAME AI DECISION MAKING 4/19/2016 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2016/cs387/intro.html Reminders Check BBVista site
More informationLive Agent for Administrators
Salesforce, Spring 18 @salesforcedocs Last updated: January 11, 2018 Copyright 2000 2018 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com, inc., as are other
More informationKodiak Corporate Administration Tool
AT&T Business Mobility Kodiak Corporate Administration Tool User Guide Release 8.3 Table of Contents Introduction and Key Features 2 Getting Started 2 Navigate the Corporate Administration Tool 2 Manage
More informationEnhanced Push-to-Talk Application for iphone
AT&T Business Mobility Enhanced Push-to-Talk Application for iphone Standard Version Release 8.3 Table of Contents Introduction and Key Features 2 Application Installation & Getting Started 2 Navigating
More informationOptimization of Enemy s Behavior in Super Mario Bros Game Using Fuzzy Sugeno Model
Journal of Physics: Conference Series PAPER OPEN ACCESS Optimization of Enemy s Behavior in Super Mario Bros Game Using Fuzzy Sugeno Model To cite this article: Nanang Ismail et al 2018 J. Phys.: Conf.
More informationIphoto Manual Sort Not Working >>>CLICK HERE<<<
Iphoto Manual Sort Not Working This app is a working replacement for iphoto, and does much better job of with Photos, though you can still use Photos by manually syncing with your phone. You can sort by
More informationFpglappy Bird: A side-scrolling game. 1 Overview. Wei Low, Nicholas McCoy, Julian Mendoza Project Proposal Draft, Fall 2015
Fpglappy Bird: A side-scrolling game Wei Low, Nicholas McCoy, Julian Mendoza 6.111 Project Proposal Draft, Fall 2015 1 Overview On February 10th, 2014, the creator of Flappy Bird, a popular side-scrolling
More informationBlab Gallery Uploads: How to Reduce and/or Rotate Your Photo Last edited 11/20/2016
Blab Gallery Uploads: How to Reduce and/or Rotate Your Photo Contents & Links QUICK LINK-JUMPS to information in this PDF document Photo Editors General Information Includes finding pre-installed editors
More informationAECOsim Building Designer. Quick Start Guide. Chapter 2 Making the Mass Model Intelligent Bentley Systems, Incorporated.
AECOsim Building Designer Quick Start Guide Chapter 2 Making the Mass Model Intelligent 2012 Bentley Systems, Incorporated www.bentley.com/aecosim Table of Contents Making the Mass Model Intelligent...3
More informationOrbital Delivery Service
Orbital Delivery Service Michael Krcmarik Andrew Rodman Project Description 1 Orbital Delivery Service is a 2D moon lander style game where the player must land a cargo ship on various worlds at the intended
More informationAssignment 5: Virtual Reality Design
Assignment 5: Virtual Reality Design Version 1.0 Visual Imaging in the Electronic Age Assigned: Thursday, Nov. 9, 2017 Due: Friday, December 1 November 9, 2017 Abstract Virtual reality has rapidly emerged
More informationAssignment 3: Particle System and Cloth Simulation
Assignment 3: Particle System and Cloth Simulation Release Date: Thursday, October 1, 2009 Due Date: Tuesday, October 20, 2009, 11:59pm Grading Value: 15% Overview: Cloth simulation has been an important
More informationSlime VISIT FOR THE LATEST UPDATES, FORUMS & MORE ASSETS.
Slime VISIT WWW.INFINITYPBR.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 Please leave
More informationUnity Game Development Essentials
Unity Game Development Essentials Build fully functional, professional 3D games with realistic environments, sound, dynamic effects, and more! Will Goldstone 1- PUBLISHING -J BIRMINGHAM - MUMBAI Preface
More informationGame Engine Programming
Game Engine Programming GMT Master Program Utrecht University Dr. Nicolas Pronost Course code: INFOMGEP Credits: 7.5 ECTS Lecture #16 Final lecture The final assignment Submit your assignment 4 by Thursday
More informationScanning Options. Plain Paper Printing
Scanning Options Plain Paper Printing In lieu of purchasing bubble sheets, PowerSchool Assessment now offers the ability to print bubble sheets directly from a test session created in Testing Center using
More informationSpring Youth Art Class Catalog. Tuition, package of four workshops, $80 Pay as you go, $25 per workshop
Richfield Art Studio 3838 Brecksville Road, Richfield, OH 44286 330.659.9232 RichfieldArtStudio.com Spring Youth Art Class Catalog Paper & Clay, Saturday Kid's ART Workshops Ages 6-10 Saturdays, 10:30AM
More informationOfficial Documentation
Official Documentation Doc Version: 1.2.0 Toolkit Version: 1.2.0 Contents Recommended Editor Setup... 3 Technical Breakdown... 4 Assets... 6 Setup... 7 Out-of-the-box Options... 8 Deck Builder Overview...
More informationLike Mobile Games* Currently a Distinguished i Engineer at Zynga, and CTO of FarmVille 2: Country Escape (for ios/android/kindle)
Console Games Are Just Like Mobile Games* (* well, not really. But they are more alike than you think ) Hi, I m Brian Currently a Distinguished i Engineer at Zynga, and CTO of FarmVille 2: Country Escape
More informationTopaz Labs DeNoise 3 Review By Dennis Goulet. The Problem
Topaz Labs DeNoise 3 Review By Dennis Goulet The Problem As grain was the nemesis of clean images in film photography, electronic noise in digitally captured images can be a problem in making photographs
More informationLecture Overview. Artificial Intelligence Part I. Lab Exam Results. Evaluations
Lecture Overview Part I CMPUT 299 Winter 2006 February 28, 2006! Lab Exam! Course Evals! Design Issue Presentations!! Definition! Related concepts! Algorithm! Time/Memory Cost! Finite State Machines Lab
More informationGame Programming Paradigms. Michael Chung
Game Programming Paradigms Michael Chung CS248, 10 years ago... Goals Goals 1. High level tips for your project s game architecture Goals 1. High level tips for your project s game architecture 2.
More informationUser Guide: PTT Radio Application - ios. User Guide. PTT Radio Application. ios. Release 8.3
User Guide PTT Radio Application ios Release 8.3 December 2017 Table of Contents Contents 1. Introduction and Key Features... 5 2. Application Installation & Getting Started... 6 Prerequisites... 6 Download...
More informationAS How to Use Dynamo to Visibly Show Navisworks Clashes into Revit
AS125109 How to Use Dynamo to Visibly Show Navisworks Clashes into Revit Felix Tan Stantec Ryan Wells Stantec Learning Objectives Learn how to simplify a coordination workflow between Navisworks and Revit
More informationThe Go Write! Pre-writing pack for level 1-2
The Go Write! Pre-writing pack for level 1-2 Level 1-2 pre-writing organizers are appropriate for younger elementary students or upper grade students who are writing one paragraph essays. It is also appropriate
More informationCS 680: GAME AI INTRODUCTION TO GAME AI. 1/9/2012 Santiago Ontañón
CS 680: GAME AI INTRODUCTION TO GAME AI 1/9/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs680/intro.html CS 680 Focus: advanced artificial intelligence techniques
More information60 Second Prototyping
Session Design #WWDC17 60 Second Prototyping 818 Guillaume Ardaud, Designer 2017 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission from Apple. No
More informationOz-iTRAIN. Cadsoft Australia and New Zealand. Envisioneer Render Settings. rendering in Envisioneer.
Oz-iTRAIN Cadsoft Australia and New Zealand With appreciation to Robert Harbottle for supplying this paper to assist you with the rendering in Envisioneer. Envisioneer Render Settings To begin the render
More informationFall 2013 Class Catalog
Richfield Art Studio, 3838 Brecksville Rd, Richfield OH 441286 #330.659.9232 RichfieldArtStudio.com Fall 2013 Class Catalog CLAY CLASSES Potter's Wheel Class for Teens Ages 12-18 Thursdays, 5:00-6:00 PM
More informationBattlefield Academy Template 1 Guide
Battlefield Academy Template 1 Guide This guide explains how to use the Slith_Template campaign to easily create your own campaigns with some preset AI logic. Template Features Preset AI team behavior
More informationCS248 Video Game Help Session A primer on game development
CS248 Video Game Help Session A primer on game development CS248 Introduction to Computer Graphics Georg Petschnigg, Stanford University November 7, 2002 Logistic and Scope Today s session focuses on assignment
More informationBeginning ios 3D Unreal
Beginning ios 3D Unreal Games Development ' Robert Chin/ Apress* Contents Contents at a Glance About the Author About the Technical Reviewers Acknowledgments Introduction iii ix x xi xii Chapter 1: UDK
More informationCOURSE SYLLABUS FOR. COMP-285 Image Manipulation: Adobe Photoshop
Coffeyville Community College COURSE SYLLABUS FOR COMP-285 Image Manipulation: Adobe Photoshop Mrs. Shari Hurlbutt Spring 2017 COURSE NUMBER: COURSE TITLE: COMP-285 Image Manipulation: Adobe Photoshop
More informationUnity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING
Unity 3.x Game Development Essentials Game development with C# and Javascript Build fully functional, professional 3D games with realistic environments, sound, dynamic effects, and more! Will Goldstone
More informationMini Project #2: Motion Planning and Generation for a Robot Arm
Mini Project #2: Motion Planning and Generation for a Robot Arm Team Assignment: Your professor will assign the teams. You will have about 5 minutes to get acquainted, exchange contact information and
More informationMoving Game X to YOUR Location In this tutorial, you will remix Game X, making changes so it can be played in a location near you.
Moving Game X to YOUR Location In this tutorial, you will remix Game X, making changes so it can be played in a location near you. About Game X Game X is about agency and civic engagement in the context
More informationAutoCAD Architecture 2014
CADLearning for AutoCAD Architecture 2014 Course Details 19+ hours of training 325 video tutorials Exercise files included Instructor: Reid Addis Course Description CADLearning for AutoCAD Architecture
More informationthe gamedesigninitiative at cornell university Lecture 8 Prototyping
Lecture 8 What is a Prototype? An incomplete model of your product Implements small subset of final features Features chosen are most important now Prototype helps you visualize gameplay Way for you to
More informationCS123. Programming Your Personal Robot. Part 3: Reasoning Under Uncertainty
CS123 Programming Your Personal Robot Part 3: Reasoning Under Uncertainty Topics For Part 3 3.1 The Robot Programming Problem What is robot programming Challenges Real World vs. Virtual World Mapping and
More informationContext-Aware Planning and Verification
7 CHAPTER This chapter describes a number of tools and configurations that can be used to enhance the location accuracy of elements (clients, tags, rogue clients, and rogue access points) within an indoor
More information100 Million Friends You Can Never Know
100 Million Friends You Can Never Know Adding COPPA compliant social networking to Poptropica Christopher A. Barney Systems Engineer and Game Designer Poptropica Wait, what's a Poptropica? Web based side
More informationDesign and Development of Mobile Games By Cocos2d-X Game Engine
The 2018 International Conference of Organizational Innovation Volume 2018 Conference Paper Design and Development of Mobile Games By Cocos2d-X Game Engine Chi-Hung Lo 1 and Yung-Chih Chang 2 1 Department
More informationMaking Simple Decisions CS3523 AI for Computer Games The University of Aberdeen
Making Simple Decisions CS3523 AI for Computer Games The University of Aberdeen Contents Decision making Search and Optimization Decision Trees State Machines Motivating Question How can we program rules
More informationSpell Casting Motion Pack 8/23/2017
The Spell Casting Motion pack requires the following: Motion Controller v2.50 or higher Mixamo s free Pro Magic Pack (using Y Bot) Importing and running without these assets will generate errors! Why can
More informationLESSON 1 CROSSY ROAD
1 CROSSY ROAD A simple game that touches on each of the core coding concepts and allows students to become familiar with using Hopscotch to build apps and share with others. TIME 45 minutes, or 60 if you
More informationCreate new drawing. Select Collection. Manage graphs. Collection Name. Graphs preview
Create new drawing Select Collection Collection Name Manage graphs Graphs preview Duplicate selection Move selection Delete selection Select All drawings Exit Share selection Selected graphs Add new Collection
More informationAttack of Township. Moniruzzaman, Md. Daffodil International University Institutional Repository Daffodil International University
Daffodil International University Institutional Repository Computer Science and Engineering Project Report of M.Sc 2018-05 Attack of Township Moniruzzaman, Md Daffodil International University http://hdl.handle.net/20.500.11948/2705
More informationVACUUM MARAUDERS V1.0
VACUUM MARAUDERS V1.0 2008 PAUL KNICKERBOCKER FOR LANE COMMUNITY COLLEGE In this game we will learn the basics of the Game Maker Interface and implement a very basic action game similar to Space Invaders.
More informationFinal Year Project Report
Final Year Project Report ios Game Utilising an A* Path Finding Algorithm Project ID: R002 BSc Applied Computer Science University of Reading School of Systems Engineering SE3IP11 Individual Project Blair
More informationUNIVERSITY OF JORDAN Mechatronics Engineering Department Measurements & Control Lab Experiment no.2 Introduction to Fuzzy Logic Control
Introduction UNIVERSITY OF JORDAN Mechatronics Engineering Department Measurements & Control Lab. 0908448 Experiment no.2 Introduction to Fuzzy Logic Control Traditional logic is based upon the idea that
More informationSavant Lighting TrueImage App Setup Guide
! Savant Lighting TrueImage App Setup Guide Document Number: 009-1575-00 Document Date: October 2017 Table of Contents To access the link to the topics in this document, select the topic page. Smartphone
More informationIan Barber Photography
1 Ian Barber Photography Sharpen & Diffuse Photoshop Extension Panel June 2014 By Ian Barber 2 Ian Barber Photography Introduction The Sharpening and Diffuse Photoshop panel gives you easy access to various
More information