INTRODUCTION TO GAME AI

Size: px
Start display at page:

Download "INTRODUCTION TO GAME AI"

Transcription

1 CS 387: GAME AI INTRODUCTION TO GAME AI 3/31/2016 Instructor: Santiago Ontañón Class website:

2 Outline Game Engines Perception and Action

3 Outline Game Engines Perception and Action

4 Game Engine Architecture Composed of a set of layers, each one of them providing higher and higher-level functionality (not unlike a regular OS) Can be very simple of very complex In addition to the run-time (the code that runs when the game is being played), game engines typically include content authoring tools (level editors, script editors, etc.)

5

6 Game Engine Architecture Game Specific Game Engine Functionalities Game Engine (e.g., Unity) Resource Management Utility Layer Platform Independence Layer SDKs OS DRIVERS HARDWARE Dependencies

7 Game Engine Architecture Game Specific Game Engine Functionalities Game Engine Resource Management Utility Layer Platform Independence Layer SDKs OS DRIVERS HARDWARE Dependencies

8 SDKs Typically used: Data Structures: STL, Boost, Loki Graphics: OpenGL, DirectX Animation: Havoc, Edge, Granny, Euphoria Sound: OpenAL Physics: ODE, Havoc, PhysX (add your favorite library here)

9 Game Engine Architecture Game Specific Game Engine Functionalities Game Engine Resource Management Utility Layer Platform Independence Layer SDKs OS DRIVERS HARDWARE Dependencies

10 Platform Independence Layer Layer that offers the functionality of all the libraries below in a platform independent way. For example: If coding a game for 2 platforms, where one only allows Physx, and the other only ODE, this layer would define an API that the game engine can use, independently of the physics library underneath There are many existing platform independence layers available for graphics, sound, etc. A popular C++ one is SDL (Simple Directmedia Layer) with abstractions for: Graphics, sound, keyboard, mouse, network, threading, etc.

11 Game Engine Architecture Game Specific Game Engine Functionalities Game Engine Resource Management Utility Layer Platform Independence Layer SDKs OS DRIVERS HARDWARE Dependencies

12 Utility Layer Set of basic functionalities, not provided by any of the linked SDKs, and that are required by the game engine. Typically: Memory management: standard memory allocation might not be fast enough for a game engine, custom memory allocation routines are typical. Math: basic set of functions for geometry, trigonometry, quaternion, matrix, equation solving, numerical integration, etc. as needed by the game engine. Data structures: trees, graphs, etc. (anything not supported by STL, Boost, etc. that the engine needs) Algorithms: search, sort, etc. Random number generation (if standard does not satisfy needs) File parsers (XML, etc.) Configuration

13 Game Engine Architecture Game Specific Game Engine Functionalities Game Engine Resource Management Utility Layer Platform Independence Layer SDKs OS DRIVERS HARDWARE Dependencies

14 Resource Management (Assets) All games require assets (bitmaps, 3D models, maps, sounds, etc.) The game engine should provide functionality to load/save/ create/query assets such as: 3D models: Meshes Textures/Materials Skeletons Animations 2D models: Bitmaps Skeletons Animations Fonts Maps Sound files Collision resources (collision shapes)

15 Game Engine Architecture Game Specific Game Engine Functionalities Game Engine Resource Management Utility Layer Platform Independence Layer SDKs OS DRIVERS HARDWARE Dependencies

16 Game Engine Functionalities Most complex layer of the game engine, composed of multiple sub-systems Scripting Artificial Intelligence Online Multiplayer Rendering Engine Animation Engine Gameplay Foundations (Game State, Game Flow) Physics Audio Subsystem Collisions Profiling & Debugging

17 Game Engine Functionalities Most complex layer of the game engine, composed of multiple sub-systems Rendering Engine Graphical Artificial Scripting rendering of the game. It can be very complex, and also subdivided Intelligence in a collection of layers: Low-level renderer: materials, lighting, camera, text, primitives, viewports, Gameplay etc. Foundations (Game State, Game Flow) Scene drawing: culling, Level-of-detail (LOD), scene subdivision Visual effects: particle systems, shaders, post effects, Animation etc. Physics Engine Front end: HUD, GUI, menus, etc. Online Multiplayer Audio Subsystem Collisions Profiling & Debugging

18 Game Engine Functionalities Most complex layer of the game engine, composed of multiple sub-systems Scripting Artificial Intelligence Online Multiplayer Rendering Engine Animation Engine Gameplay It is in charge Foundations of playing skeletal (Game animations, State, Game interacting Flow) with the physics of the game engine. Might also trigger sound effects Audio (requests Physics sent through gameplay Subsystem foundations). Collisions Profiling & Debugging

19 Game Engine Functionalities Most complex layer of the game engine, composed of multiple sub-systems Run physics simulations taking Scripting collisions and animations into account. Forces, constraints, etc. Rendering Engine Animation Engine Detecting collisions points, surfaces and directions between complex objects using the functionalities of the lower layers. Play sounds: depending on distances, walls, relative velocities, etc. Artificial Online (volumes, panning, Intelligence Doppler effects). Multiplayer Fading in/out music, dynamic music, Gameplay etc. Foundations (Game State, Game Flow) Physics Collisions Audio Subsystem Profiling & Debugging

20 Game Engine Functionalities Most complex layer of the game engine, composed of multiple sub-systems Scripting Artificial Intelligence Online Multiplayer Gameplay Foundations (Game State, Game Flow) Some Rendering game engines allow the attachment Engine of scripts to each asset (models, animations, maps, Animation etc.) in a Physics high-level language (e.g. Engine Lua). Audio Subsystem The game engine needs an interpreter/ compiler that runs those scripts. Collisions Profiling & Debugging

21 Game Engine Functionalities Most complex layer of the game engine, composed of multiple sub-systems Scripting Artificial Intelligence Online Multiplayer Rendering Engine Animation Focus of this class Engine Gameplay Foundations (Game State, Game Flow) Game state replication, and policy for coherent state maintenance. Audio Physics Match-making, messaging Subsystem (not message rendering, just message sending/reception), etc. Profiling & Collisions Debugging

22 Game Engine Functionalities Most complex layer of the game engine, composed of multiple sub-systems Scripting Artificial Intelligence Online Multiplayer Rendering Engine Gameplay Foundations (Game State, Game Flow) Animation Core of the game engine, Physics Engine location of the Game Loop, also maintains the game state. Audio Subsystem Location of the game flow FSM (transition from menus to game, to game over, etc.) Collisions Profiling & Debugging

23 Game Engine Architecture Game Specific Game Engine Functionalities Game Engine Resource Management Utility Layer Platform Independence Layer SDKs OS DRIVERS HARDWARE Dependencies

24 AI Interface with the Game Engine Scripting Artificial Intelligence Online Multiplayer Rendering Engine Animation Engine Gameplay Foundations (Game State, Game Flow) Physics Audio Subsystem Collisions Profiling & Debugging

25 AI Interface with the Game Engine Collision AI Input Gameplay Foundations (Game State, Game Flow) Game State

26 AI Interface with the Game Engine Collision AI Collision data (what touches what, or is in the line of fire of what) Input AI actions (might or not be the same as the human player s) Gameplay Foundations Game State (Game State, Information Game Flow) Game State

27 AI Interface with the Game Engine Strategy Collision Decision Making AI World Interface (perception) Movement Input Gameplay Foundations (Game State, Game Flow) Game State

28 Example: RPG Game Consider Morrowind (Elder Scrolls III)

29 Example: RPG Game AI Strategy Decision Making: Scripts Movement: A* + Animation Perception: Navigation mesh Quests status Interaction events (hits, etc.) Collision + Line of sight Input Game State

30 Example: RPG Game AI Strategy Decision Making: Scripts Movement: A* + Animation Perception: Navigation mesh Quests status Interaction events (hits, etc.) Collision + Line of sight In some games (e.g. Spore) animation is so complex, that it is considered part of the Game AI (we will not cover animation techniques Input in this course) Game State

31 Example: RPG Game AI Strategy Decision Making: Scripts Movement: A* + Animation Perception: Navigation mesh Quests status Interaction events (hits, etc.) Collision + Line of sight For the triggers and conditions used in the scripts (basically, we need all the information needed to Input test the conditions in the scripts, or an interface to do so) Game State

32 Example: RPG Game AI Strategy Decision Making: Scripts Movement: A* + Animation Perception: Navigation mesh Quests status Interaction events (hits, etc.) Collision + Line of sight Basically for A*, although some scripts might check for things like if there is path between A and B then Input Game State

33 Outline Game Engines Perception and Action

34 Perception and Action The interface between the game engine and the AI is key As you already know (from the previous AI class): Most AI algorithms are very brittle Information needs to be represented in exactly the right way A non appropriate representation might make the AI code very complex AI algorithms are eager consumers of information: an efficient way to get information from the game engine is required

35 Running Example Imagine we are writing the AI of a unit in StarCraft: We want the unit to attack any opponent units that get in attack range: attack_range

36 Running Example (2) Imagine we are writing the AI of a unit in StarCraft: We want the unit to attack any opponent units that get in attack range: Class Marine { public: bool update(gamestate *gs); void render(graphicscontext *g); protected: }; attack_range

37 Two Approaches to Perception Polling Message passing

38 Polling Simplest idea: No special perception layer Whenever the AI wants some piece of information, it just asks the Game State / Collision / Line of Sight modules about it Benefits: Easy Problems: Inefficient The same information might be asked for multiple times Most of the time the player does not collide with enemies, why check it at every frame? Hard to debug

39 Running Example Marine AI using polling : bool Marine::update(GameState *gs) { GameObject *o = gs->enemyinradius(this, myposition, attack_range); if (o!=0) attack(o); } o bool GameState::enemyInRadius (GameObject *o, Pos p, float radius) { for(gameobject *o2:gameobjects) { if (o2->isenemy(o) && o2->distance(p)<=radius) return o; } return 0; } attack_range

40 Polling Station Rather than asking the game engine directly: Create a perception module with an API to access the game engine All AIs ask this perception module (the polling station) Polling station can improve efficiency by caching queries Easier to debug (polling station can be used as the one stop place to set break-points or logging instructions) Having an API in between the AI and the Game Engine, allows game engine developers to work independently than the AI developers

41 Message Passing Event-based approach Wait for an event message to arrive rather than constantly checking for conditions to be true at each cycle (e.g. check if the player is in line of sight): When something relevant happens (e.g. player is in line of sight), a message is sent to all the AIs that care about this condition. Centralized event manager

42 Event Manager AI1 Checking Engine Registry of Event Listeners AI2 AIn Event queue

43 Event Manager AIs register for certain events, like collisions with certain objects, etc. AI1 Checking Engine Registry of Event Listeners AI2 AIn Event queue

44 Event Manager A single checking engine checks for the events for which any AI is registered AI1 Checking Engine Registry of Event Listeners AI2 AIn Event queue

45 Event Manager Certain events, do not need to be checked for, since the originating entity sends the directly (e.g. state changes in another AI) AI1 Checking Engine Registry of Event Listeners AI2 AIn Event queue

46 Running Example Marine AI using simple events : bool Marine::update(GameState *gs) { Pos oldposition = myposition; if (cycle==0) gs->registerforevent(this, ENEMY_IN_RANGE); //... } if (oldposition!= myposition) gs->signalevent(position_change, this); bool Marine::event(Event *e) { if (e->type = ENEMY_IN_RANGE) attack(e->o); } attack_range

47 Running Example Marine AI using simple events : bool Marine::update(GameState *gs) { Pos oldposition = myposition; if (cycle==0) gs->registerforevent(this, ENEMY_IN_RANGE); } //... if (oldposition!= myposition) gs->signalevent(position_change, this); Notice that no CPU is wasted in checking whether any object that is not moving is in range or not. In this example, only when an object moves, the event manager performs the checks (triggered by the signalevent call). bool Marine::event(Event *e) { if (e->type = ENEMY_IN_RANGE) attack(e->o); } attack_range You will have to define some Event class, and come up with a list of events that make sense in your particular game.

48 Polling vs Message Passing Polling is simpler, better for simple games (where message passing is overkill) Message passing can be more efficient but it is more complex to deploy Best choice depends on the game type, but it is always worth spending effort into determining how the AI is going to get information from the game.

49 Sensing

50 Sensing Polling Stations and Event Managers address the problem getting information from the game engine But not all characters in the game should have access to all information: If a character in a room wants to know if another one across the map made a noise, it should not be able to get that information Recent realistic games need a sensing model Sensing models are typically implemented over event managers, rather than polling stations.

51 Easiest Approach: Fake it! The AI has access to everything that happens in the game, but it is programmed to act as if it didn t know. Example: Warcraft II

52 Simple Sensing Model Characters can only see/hear what happens in the room Event Manager 1 Event Manager 2 Event Manager 3 Event Manager 4

53 Simple Sensing Model Characters can only see/hear what happens in the room Event Manager 1 Event Manager 2 Event Manager 3 When a character moves from a room to another, it unregisters from an event manager, and registers in another one Event Manager 4

54 Realistic Sensing Models Sight: Sight cones (60 degrees is standard) Line of sight Distance (although it is not realistic, it s very typical in games) Brightness/differentiation (used in games like Splinter Cell) Touch Hearing Distance (reduce volume and use audible threshold) Smell Not common, but some games use it (e.g. Alien vs Predator)

55 Alien vs Predator

56 Event Manager + Sensing (simple) When characters register, they send their position and sensing capabilities to the registry AI1 Checking Engine Registry of Event Listeners AI2 Event queue Sensing Model AIn

57 Event Manager + Sensing (simple) AI1 Registry Each sense has defined: Checking of - Attenuation factor (for distance) Engine Event - Maximum range Listeners - Transmission speed - Restrictions (line-of-sight?) Sensing Model AI2 AIn Event queue

58 Event Manager + Sensing (complex) Checking Engine Registry of Event Listeners AI1 AI2 Event queue Sensing Model AIn Sensing Transmission Graph

59 Event Manager + Sensing (complex) Checking Engine Registry of Event Listeners AI1 AI2 Graph can be precomputed if map is static Divide game map in a finite set of regions. Sensing Define if different events (visual, sounds, Model etc.) can transfer from region to region, and at which speed Event and attenuation. queue Can model one-way glass, mirrors, sound travelling through pipes, etc. Sensing Transmission Graph AIn

60 Show Off the AI Features!

61 Summary AI interfaces with a game engine. Basic AI components: Perception Movement Decision Making Strategy Perception is the foundation over which your AI will be built. Pay attention to it!

62 Example of Perception in Action Example from the game engine used in project 5

63 Next Week Movement Steering Behaviors (for project 1)

CS 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 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 information

Chapter 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 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 information

Pangolin: A Look at the Conceptual Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy

Pangolin: A Look at the Conceptual Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Pangolin: A Look at the Conceptual Architecture of SuperTuxKart Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Abstract This report will be taking a look at the conceptual

More information

Gaming Development. Resources

Gaming Development. Resources Gaming Development Resources Beginning Game Programming Fourth Edition Jonathan S. Harbour 9781305258952 Beginning Game Programming will introduce students to the fascinating world of game programming

More information

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT

Introduction to Game Design. Truong Tuan Anh CSE-HCMUT Introduction to Game Design Truong Tuan Anh CSE-HCMUT Games Games are actually complex applications: interactive real-time simulations of complicated worlds multiple agents and interactions game entities

More information

Beginning 3D Game Development with Unity:

Beginning 3D Game Development with Unity: Beginning 3D Game Development with Unity: The World's Most Widely Used Multi-platform Game Engine Sue Blackman Apress* Contents About the Author About the Technical Reviewer Acknowledgments Introduction

More information

The purpose of this document is to outline the structure and tools that come with FPS Control.

The 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 information

Program a Game Engine from Scratch. Chapter 1 - Introduction

Program a Game Engine from Scratch. Chapter 1 - Introduction Program a Game Engine from Scratch Mark Claypool Chapter 1 - Introduction This document is part of the book Dragonfly Program a Game Engine from Scratch, (Version 5.0). Information online at: http://dragonfly.wpi.edu/book/

More information

CS 480: GAME AI DECISION MAKING AND SCRIPTING

CS 480: GAME AI DECISION MAKING AND SCRIPTING CS 480: GAME AI DECISION MAKING AND SCRIPTING 4/24/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.html Reminders Check BBVista site for the course

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology http://www.cs.utexas.edu/~theshark/courses/cs354r/ Fall 2017 Instructor and TAs Instructor: Sarah Abraham theshark@cs.utexas.edu GDC 5.420 Office Hours: MW4:00-6:00pm

More information

Unity Certified Programmer

Unity 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 information

Unity Game Development Essentials

Unity 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 information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology Introduction to Game AI Fall 2018 What does the A stand for? 2 What is AI? AI is the control of every non-human entity in a game The other cars in a car game The opponents

More information

Sensible Chuckle SuperTuxKart Concrete Architecture Report

Sensible Chuckle SuperTuxKart Concrete Architecture Report Sensible Chuckle SuperTuxKart Concrete Architecture Report Sam Strike - 10152402 Ben Mitchell - 10151495 Alex Mersereau - 10152885 Will Gervais - 10056247 David Cho - 10056519 Michael Spiering Table of

More information

Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING

Unity 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 information

CS 387/680: GAME AI AI FOR FIRST-PERSON SHOOTERS

CS 387/680: GAME AI AI FOR FIRST-PERSON SHOOTERS CS 387/680: GAME AI AI FOR FIRST-PERSON SHOOTERS 4/28/2014 Instructor: Santiago Ontañón santi@cs.drexel.edu TA: Alberto Uriarte office hours: Tuesday 4-6pm, Cyber Learning Center Class website: https://www.cs.drexel.edu/~santi/teaching/2014/cs387-680/intro.html

More information

CS 480: GAME AI TACTIC AND STRATEGY. 5/15/2012 Santiago Ontañón

CS 480: GAME AI TACTIC AND STRATEGY. 5/15/2012 Santiago Ontañón CS 480: GAME AI TACTIC AND STRATEGY 5/15/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.html Reminders Check BBVista site for the course regularly

More information

BMOSLFGEMW: A Spectrum of Game Engine Architectures

BMOSLFGEMW: A Spectrum of Game Engine Architectures BMOSLFGEMW: A Spectrum of Game Engine Architectures Adam M. Smith amsmith@soe.ucsc.edu CMPS 164 Game Engines March 30, 2010 What I m about to show you cannot be found in any textbook, on any website, on

More information

Pangolin: Concrete Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy

Pangolin: Concrete Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Pangolin: Concrete Architecture of SuperTuxKart Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Abstract For this report we will be looking at the concrete architecture

More information

the gamedesigninitiative at cornell university Lecture 10 Game Architecture

the gamedesigninitiative at cornell university Lecture 10 Game Architecture Lecture 10 2110-Level Apps are Event Driven Generates event e and n calls method(e) on listener Registers itself as a listener @105dc method(event) Listener JFrame Listener Application 2 Limitations of

More information

Artificial Intelligence for Games. Santa Clara University, 2012

Artificial Intelligence for Games. Santa Clara University, 2012 Artificial Intelligence for Games Santa Clara University, 2012 Introduction Class 1 Artificial Intelligence for Games What is different Gaming stresses computing resources Graphics Engine Physics Engine

More information

Emergent s Gamebryo. Casey Brandt. Technical Account Manager Emergent Game Technologies. Game Tech 2009

Emergent s Gamebryo. Casey Brandt. Technical Account Manager Emergent Game Technologies. Game Tech 2009 Emergent s Gamebryo Game Tech 2009 Casey Brandt Technical Account Manager Emergent Game Technologies Questions To Answer What is Gamebryo? How does it look today? How is it designed? What titles are in

More information

CS 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 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 information

The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, / X

The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, / X The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, 2012 10.5682/2066-026X-12-153 SOLUTIONS FOR DEVELOPING SCORM CONFORMANT SERIOUS GAMES Dragoş BĂRBIERU

More information

CS 387/680: GAME AI DECISION MAKING

CS 387/680: GAME AI DECISION MAKING CS 387/680: GAME AI DECISION MAKING 4/21/2014 Instructor: Santiago Ontañón santi@cs.drexel.edu TA: Alberto Uriarte office hours: Tuesday 4-6pm, Cyber Learning Center Class website: https://www.cs.drexel.edu/~santi/teaching/2014/cs387-680/intro.html

More information

publi l c i c c l c a l s a s s s Ga G m a e1 e1 : M i M c i r c os o o s f o t. t Xn X a. a Fram a ew o k.ga G m a e m { G ap a hic i s c D s ev

publi l c i c c l c a l s a s s s Ga G m a e1 e1 : M i M c i r c os o o s f o t. t Xn X a. a Fram a ew o k.ga G m a e m { G ap a hic i s c D s ev Game Engine Architecture Spring 2017 0. Introduction and overview Juha Vihavainen University of Helsinki [Gregory, Chapter 1. Introduction, pp. 3-62 ] [McShaffry, Chapter 2. What's in a Game ] On classroom

More information

Experiment 02 Interaction Objects

Experiment 02 Interaction Objects Experiment 02 Interaction Objects Table of Contents Introduction...1 Prerequisites...1 Setup...1 Player Stats...2 Enemy Entities...4 Enemy Generators...9 Object Tags...14 Projectile Collision...16 Enemy

More information

Instructions for using Object Collection and Trigger mechanics in Unity

Instructions for using Object Collection and Trigger mechanics in Unity Instructions for using Object Collection and Trigger mechanics in Unity Note for Unity 5 Jason Fritts jfritts@slu.edu In Unity 5, the developers dramatically changed the Character Controller scripts. Among

More information

AI in Computer Games. AI in Computer Games. Goals. Game A(I?) History Game categories

AI in Computer Games. AI in Computer Games. Goals. Game A(I?) History Game categories AI in Computer Games why, where and how AI in Computer Games Goals Game categories History Common issues and methods Issues in various game categories Goals Games are entertainment! Important that things

More information

IMGD 1001: Programming Practices; Artificial Intelligence

IMGD 1001: Programming Practices; Artificial Intelligence IMGD 1001: Programming Practices; Artificial Intelligence Robert W. Lindeman Associate Professor Department of Computer Science Worcester Polytechnic Institute gogo@wpi.edu Outline Common Practices Artificial

More information

TATAKAI TACTICAL BATTLE FX FOR UNITY & UNITY PRO OFFICIAL DOCUMENTATION. latest update: 4/12/2013

TATAKAI TACTICAL BATTLE FX FOR UNITY & UNITY PRO OFFICIAL DOCUMENTATION. latest update: 4/12/2013 FOR UNITY & UNITY PRO OFFICIAL latest update: 4/12/2013 SPECIAL NOTICE : This documentation is still in the process of being written. If this document doesn t contain the information you need, please be

More information

Who am I? AI in Computer Games. Goals. AI in Computer Games. History Game A(I?)

Who am I? AI in Computer Games. Goals. AI in Computer Games. History Game A(I?) Who am I? AI in Computer Games why, where and how Lecturer at Uppsala University, Dept. of information technology AI, machine learning and natural computation Gamer since 1980 Olle Gällmo AI in Computer

More information

the gamedesigninitiative at cornell university Lecture 4 Game Components

the gamedesigninitiative at cornell university Lecture 4 Game Components Lecture 4 Game Components Lecture 4 Game Components So You Want to Make a Game? Will assume you have a design document Focus of next week and a half Building off ideas of previous lecture But now you want

More information

IMGD 1001: Programming Practices; Artificial Intelligence

IMGD 1001: Programming Practices; Artificial Intelligence IMGD 1001: Programming Practices; Artificial Intelligence by Mark Claypool (claypool@cs.wpi.edu) Robert W. Lindeman (gogo@wpi.edu) Outline Common Practices Artificial Intelligence Claypool and Lindeman,

More information

NOVA. Game Pitch SUMMARY GAMEPLAY LOOK & FEEL. Story Abstract. Appearance. Alex Tripp CIS 587 Fall 2014

NOVA. Game Pitch SUMMARY GAMEPLAY LOOK & FEEL. Story Abstract. Appearance. Alex Tripp CIS 587 Fall 2014 Alex Tripp CIS 587 Fall 2014 NOVA Game Pitch SUMMARY Story Abstract Aliens are attacking the Earth, and it is up to the player to defend the planet. Unfortunately, due to bureaucratic incompetence, only

More information

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman IMGD 3000 - Technical Game Development I: Introduction by Robert W. Lindeman gogo@wpi.edu What to Expect This course is mainly about the nuts and bolts of creating game-engine code Game architecture, algorithms,

More information

Overview. The Game Idea

Overview. The Game Idea Page 1 of 19 Overview Even though GameMaker:Studio is easy to use, getting the hang of it can be a bit difficult at first, especially if you have had no prior experience of programming. This tutorial is

More information

Game Architecture. Rabin is a good overview of everything to do with Games A lot of these slides come from the 1 st edition CS

Game Architecture. Rabin is a good overview of everything to do with Games A lot of these slides come from the 1 st edition CS Game Architecture Rabin is a good overview of everything to do with Games A lot of these slides come from the 1 st edition CS 4455 1 Game Architecture The code for modern games is highly complex Code bases

More information

CS 387/680: GAME AI TACTIC AND STRATEGY

CS 387/680: GAME AI TACTIC AND STRATEGY CS 387/680: GAME AI TACTIC AND STRATEGY 5/12/2014 Instructor: Santiago Ontañón santi@cs.drexel.edu TA: Alberto Uriarte office hours: Tuesday 4-6pm, Cyber Learning Center Class website: https://www.cs.drexel.edu/~santi/teaching/2014/cs387-680/intro.html

More information

IMGD Technical Game Development I: Introduction

IMGD Technical Game Development I: Introduction IMGD 3000 - Technical Game Development I: Introduction by Robert W. Lindeman gogo@wpi.edu What to Expect This course is mainly about the nuts and bolts of creating game code Game architecture, algorithms,

More information

Game Programming Paradigms. Michael Chung

Game 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 information

Magic Leap Soundfield Audio Plugin user guide for Unity

Magic Leap Soundfield Audio Plugin user guide for Unity Magic Leap Soundfield Audio Plugin user guide for Unity Plugin Version: MSA_1.0.0-21 Contents Get started using MSA in Unity. This guide contains the following sections: Magic Leap Soundfield Audio Plugin

More information

CS 480: GAME AI INTRODUCTION TO GAME AI. 4/3/2012 Santiago Ontañón https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.

CS 480: GAME AI INTRODUCTION TO GAME AI. 4/3/2012 Santiago Ontañón https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro. CS 480: GAME AI INTRODUCTION TO GAME AI 4/3/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.html CS 480 Focus: artificial intelligence techniques for

More information

Game Tools MARY BETH KERY - ADVANCED USER INTERFACES SPRING 2017

Game Tools MARY BETH KERY - ADVANCED USER INTERFACES SPRING 2017 Game Tools MARY BETH KERY - ADVANCED USER INTERFACES SPRING 2017 2 person team 3 years 300 person team 10 years Final Fantasy 15 ART GAME DESIGN ENGINEERING PRODUCTION/BUSINESS TECHNICAL CHALLENGES OF

More information

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman

IMGD Technical Game Development I: Introduction. by Robert W. Lindeman IMGD 3000 - Technical Game Development I: Introduction by Robert W. Lindeman gogo@wpi.edu What to Expect This course is mainly about the nuts and bolts of creating game-engine code Game architecture, algorithms,

More information

CS Game Programming, Fall 2014

CS Game Programming, Fall 2014 CS 38101 Game Programming, Fall 2014 Recommended Text Learn Unity 4 for ios Game Development, Philip Chu, 2013, Apress, ISBN-13 (pbk): 978-1-4302-4875-0 ISBN-13 (electronic): 978-1-4302-4876-7, www.apress.com.

More information

Concrete Architecture of SuperTuxKart

Concrete Architecture of SuperTuxKart Concrete Architecture of SuperTuxKart Team Neo-Tux Latifa Azzam - 10100517 Zainab Bello - 10147946 Yuen Ting Lai (Phoebe) - 10145704 Jia Yue Sun (Selena) - 10152968 Shirley (Xue) Xiao - 10145624 Wanyu

More information

Crowd-steering behaviors Using the Fame Crowd Simulation API to manage crowds Exploring ANT-Op to create more goal-directed crowds

Crowd-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 information

2D Platform. Table of Contents

2D Platform. Table of Contents 2D Platform Table of Contents 1. Making the Main Character 2. Making the Main Character Move 3. Making a Platform 4. Making a Room 5. Making the Main Character Jump 6. Making a Chaser 7. Setting Lives

More information

Attack of Township. Moniruzzaman, Md. Daffodil International University Institutional Repository Daffodil International University

Attack 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 information

D E S I G N D O C U M E N T

D E S I G N D O C U M E N T D E S I G N D O C U M E N T All work Copyright 2013 by DeadFish Productions Michael Griscom, David Klimek, Frans Kurniawan, Shitianyu Pan, Josh Ventura Version # 2.5 26 April 2013 ABSTRACT This document

More information

Engineering at a Games Company: What do we do?

Engineering at a Games Company: What do we do? Engineering at a Games Company: What do we do? Dan White Technical Director Pipeworks October 17, 2018 The Role of Engineering at a Games Company Empower game designers and artists to realize their visions

More information

Warmup Due: Feb. 6, 2018

Warmup Due: Feb. 6, 2018 CS1950U Topics in 3D Game Engine Development Barbara Meier Warmup Due: Feb. 6, 2018 Introduction Welcome to CS1950U! In this assignment you ll be creating the basic framework of the game engine you will

More information

Game Design Project 2, Part 3 Group #3 By: POLYHEDONISTS Brent Allard, Taylor Carter, Andrew Greco, Alex Nemeroff, Jessica Nguy

Game Design Project 2, Part 3 Group #3 By: POLYHEDONISTS Brent Allard, Taylor Carter, Andrew Greco, Alex Nemeroff, Jessica Nguy Game Design Project 2, Part 3 Group #3 By: POLYHEDONISTS Brent Allard, Taylor Carter, Andrew Greco, Alex Nemeroff, Jessica Nguy Concept Side scrolling beat-em-up Isometric perspective that implements 2D

More information

G54GAM - Games. So.ware architecture of a game

G54GAM - Games. So.ware architecture of a game G54GAM - Games So.ware architecture of a game Coursework Coursework 2 and 3 due 18 th May Design and implement prototype game Write a game design document Make a working prototype of a game Make use of

More information

COMPASS NAVIGATOR PRO QUICK START GUIDE

COMPASS 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 information

Adding in 3D Models and Animations

Adding in 3D Models and Animations Adding in 3D Models and Animations We ve got a fairly complete small game so far but it needs some models to make it look nice, this next set of tutorials will help improve this. They are all about importing

More information

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti Basic Information Project Name Supervisor Kung-fu Plants Jakub Gemrot Annotation Kung-fu plants is a game where you can create your characters, train them and fight against the other chemical plants which

More information

In this project you ll learn how to create a times table quiz, in which you have to get as many answers correct as you can in 30 seconds.

In this project you ll learn how to create a times table quiz, in which you have to get as many answers correct as you can in 30 seconds. Brain Game Introduction In this project you ll learn how to create a times table quiz, in which you have to get as many answers correct as you can in 30 seconds. Step 1: Creating questions Let s start

More information

Killzone Shadow Fall: Threading the Entity Update on PS4. Jorrit Rouwé Lead Game Tech, Guerrilla Games

Killzone Shadow Fall: Threading the Entity Update on PS4. Jorrit Rouwé Lead Game Tech, Guerrilla Games Killzone Shadow Fall: Threading the Entity Update on PS4 Jorrit Rouwé Lead Game Tech, Guerrilla Games Introduction Killzone Shadow Fall is a First Person Shooter PlayStation 4 launch title In SP up to

More information

Game Artificial Intelligence ( CS 4731/7632 )

Game Artificial Intelligence ( CS 4731/7632 ) Game Artificial Intelligence ( CS 4731/7632 ) Instructor: Stephen Lee-Urban http://www.cc.gatech.edu/~surban6/2018-gameai/ (soon) Piazza T-square What s this all about? Industry standard approaches to

More information

DM842 Computer Game Programming

DM842 Computer Game Programming DM842 Computer Game Programming Rolf Fagerberg and Marco Chiarandini Fall 2017 Why Computer Game Programming? Fun, attraction, curiosity Career goal Great display of use of many Computer Science subjects

More information

INTRODUCTION TO GAME AI

INTRODUCTION TO GAME AI CS 387: GAME AI INTRODUCTION TO GAME AI 3/31/2015 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2015/cs387/intro.html CS 387 Focus: artificial

More information

A Character Decision-Making System for FINAL FANTASY XV by Combining Behavior Trees and State Machines

A 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 information

Towards a Reference Architecture for 3D First Person Shooter Games

Towards a Reference Architecture for 3D First Person Shooter Games Towards a Reference Architecture for 3D First Person Shooter Games Philip Liew-pliew@swen.uwaterloo.ca Ali Razavi-arazavi@swen.uwaterloo.ca Atousa Pahlevan-apahlevan@cs.uwaterloo.ca April 6, 2004 Abstract

More information

the gamedesigninitiative at cornell university Lecture 14 Data-Driven Design

the gamedesigninitiative at cornell university Lecture 14 Data-Driven Design Lecture 14 Data-Driven Design Take-Away for Today What is data-driven design? How do programmers use it? How to designers/artists/musicians use it? What are benefits of data-driven design? To both developer

More information

Integrating PhysX and OpenHaptics: Efficient Force Feedback Generation Using Physics Engine and Haptic Devices

Integrating PhysX and OpenHaptics: Efficient Force Feedback Generation Using Physics Engine and Haptic Devices This is the Pre-Published Version. Integrating PhysX and Opens: Efficient Force Feedback Generation Using Physics Engine and Devices 1 Leon Sze-Ho Chan 1, Kup-Sze Choi 1 School of Nursing, Hong Kong Polytechnic

More information

INTRODUCTION TO GAME AI

INTRODUCTION TO GAME AI CS 387: GAME AI INTRODUCTION TO GAME AI 3/29/2016 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2016/cs387/intro.html CS 387 Focus: artificial

More information

Beginning ios 3D Unreal

Beginning 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 information

CS 380: ARTIFICIAL INTELLIGENCE

CS 380: ARTIFICIAL INTELLIGENCE CS 380: ARTIFICIAL INTELLIGENCE RATIONAL AGENTS 9/25/2013 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2013/cs380/intro.html Do you think a machine can be made that replicates

More information

Learning XNA 4.0. Aaron Reed O'REILLY8. Cambridge. Beijing. Sebastopoi. Tokyo. Farnham Koln

Learning XNA 4.0. Aaron Reed O'REILLY8. Cambridge. Beijing. Sebastopoi. Tokyo. Farnham Koln Learning XNA 4.0 Aaron Reed O'REILLY8 Beijing Cambridge Farnham Koln Sebastopoi Tokyo Table of Contents Preface xiii 1. What's New in XNA 4.0? 1 Revised Project Folder Structure 1 Develop Games for Windows

More information

Creating Dynamic Soundscapes Using an Artificial Sound Designer

Creating Dynamic Soundscapes Using an Artificial Sound Designer 46 Creating Dynamic Soundscapes Using an Artificial Sound Designer Simon Franco 46.1 Introduction 46.2 The Artificial Sound Designer 46.3 Generating Events 46.4 Creating and Maintaining the Database 46.5

More information

Z-Town Design Document

Z-Town Design Document Z-Town Design Document Development Team: Cameron Jett: Content Designer Ryan Southard: Systems Designer Drew Switzer:Content Designer Ben Trivett: World Designer 1 Table of Contents Introduction / Overview...3

More information

Key Abstractions in Game Maker

Key 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 information

CISC 1600, Lab 2.2: More games in Scratch

CISC 1600, Lab 2.2: More games in Scratch CISC 1600, Lab 2.2: More games in Scratch Prof Michael Mandel Introduction Today we will be starting to make a game in Scratch, which ultimately will become your submission for Project 3. This lab contains

More information

Space Invadersesque 2D shooter

Space Invadersesque 2D shooter Space Invadersesque 2D shooter So, we re going to create another classic game here, one of space invaders, this assumes some basic 2D knowledge and is one in a beginning 2D game series of shorts. All in

More information

VACUUM MARAUDERS V1.0

VACUUM 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 information

MODELING AGENTS FOR REAL ENVIRONMENT

MODELING AGENTS FOR REAL ENVIRONMENT MODELING AGENTS FOR REAL ENVIRONMENT Gustavo Henrique Soares de Oliveira Lyrio Roberto de Beauclair Seixas Institute of Pure and Applied Mathematics IMPA Estrada Dona Castorina 110, Rio de Janeiro, RJ,

More information

Tac Due: Sep. 26, 2012

Tac 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 information

CRYPTOSHOOTER MULTI AGENT BASED SECRET COMMUNICATION IN AUGMENTED VIRTUALITY

CRYPTOSHOOTER MULTI AGENT BASED SECRET COMMUNICATION IN AUGMENTED VIRTUALITY CRYPTOSHOOTER MULTI AGENT BASED SECRET COMMUNICATION IN AUGMENTED VIRTUALITY Submitted By: Sahil Narang, Sarah J Andrabi PROJECT IDEA The main idea for the project is to create a pursuit and evade crowd

More information

CSE 125 Boot Camp. Or: How I Learned to Stop Worrying and Love The Lab

CSE 125 Boot Camp. Or: How I Learned to Stop Worrying and Love The Lab CSE 125 Boot Camp Or: How I Learned to Stop Worrying and Love The Lab About Me Game Developer since 2010 forever Founder and President of VGDC gamedev.ucsd.edu (shameless self-promotion ftw) I look like

More information

Whiskey2D A 2D Game Creator

Whiskey2D A 2D Game Creator Worcester Polytechnic Institute Whiskey2D A 2D Game Creator A Major Qualifying Project Christopher Hanna, Daniel True March 27 th, 2015 Advisor: Professor Charles Rich Table of Contents CHAPTER 1 INTRODUCTION...

More information

An Overview of the Mimesis Architecture: Integrating Intelligent Narrative Control into an Existing Gaming Environment

An Overview of the Mimesis Architecture: Integrating Intelligent Narrative Control into an Existing Gaming Environment An Overview of the Mimesis Architecture: Integrating Intelligent Narrative Control into an Existing Gaming Environment R. Michael Young Liquid Narrative Research Group Department of Computer Science NC

More information

SIMGRAPH - A FLIGHT SIMULATION DATA VISUALIZATION WORKSTATION. Joseph A. Kaplan NASA Langley Research Center Hampton, Virginia

SIMGRAPH - A FLIGHT SIMULATION DATA VISUALIZATION WORKSTATION. Joseph A. Kaplan NASA Langley Research Center Hampton, Virginia SIMGRAPH - A FLIGHT SIMULATION DATA VISUALIZATION WORKSTATION Joseph A. Kaplan NASA Langley Research Center Hampton, Virginia Patrick S. Kenney UNISYS Corporation Hampton, Virginia Abstract Today's modern

More information

CS 680: GAME AI WEEK 4: DECISION MAKING IN RTS GAMES

CS 680: GAME AI WEEK 4: DECISION MAKING IN RTS GAMES CS 680: GAME AI WEEK 4: DECISION MAKING IN RTS GAMES 2/6/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs680/intro.html Reminders Projects: Project 1 is simpler

More information

An Approach to Maze Generation AI, and Pathfinding in a Simple Horror Game

An Approach to Maze Generation AI, and Pathfinding in a Simple Horror Game An Approach to Maze Generation AI, and Pathfinding in a Simple Horror Game Matthew Cooke and Aaron Uthayagumaran McGill University I. Introduction We set out to create a game that utilized many fundamental

More information

Game Design Document. RELEASE December 18, Austin Krauss

Game Design Document. RELEASE December 18, Austin Krauss Game Design Document RELEASE December 18, 2003 Table of Contents Disclaimer...- 1 - Game Overview...- 1 - How should the game be unique?...- 1 - How is it different from other games?...- 1 - What sort

More information

Virtual Reality RPG Spoken Dialog System

Virtual Reality RPG Spoken Dialog System Virtual Reality RPG Spoken Dialog System Project report Einir Einisson Gísli Böðvar Guðmundsson Steingrímur Arnar Jónsson Instructor Hannes Högni Vilhjálmsson Moderator David James Thue Abstract 1 In computer

More information

vstasker 6 A COMPLETE MULTI-PURPOSE SOFTWARE TO SPEED UP YOUR SIMULATION PROJECT, FROM DESIGN TIME TO DEPLOYMENT REAL-TIME SIMULATION TOOLKIT FEATURES

vstasker 6 A COMPLETE MULTI-PURPOSE SOFTWARE TO SPEED UP YOUR SIMULATION PROJECT, FROM DESIGN TIME TO DEPLOYMENT REAL-TIME SIMULATION TOOLKIT FEATURES REAL-TIME SIMULATION TOOLKIT A COMPLETE MULTI-PURPOSE SOFTWARE TO SPEED UP YOUR SIMULATION PROJECT, FROM DESIGN TIME TO DEPLOYMENT Diagram based Draw your logic using sequential function charts and let

More information

By Chris Burton. User Manual v1.60.5

By Chris Burton. User Manual v1.60.5 By Chris Burton User Manual v1.60.5 Table of Contents Introduction 7 Chapter I: The Basics 1. 9 Setting up 10 1.1. Installation 1.2. Running the demo games 1.3. The Game Editor window 1.3.1. The New Game

More information

Lecture 1: Introduction and Preliminaries

Lecture 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 information

12 Final Projects. Steve Marschner CS5625 Spring 2016

12 Final Projects. Steve Marschner CS5625 Spring 2016 12 Final Projects Steve Marschner CS5625 Spring 2016 Final project ground rules Group size: 2 to 5 students choose your own groups expected scope is larger with more people Charter: make a simple game

More information

AR 2 kanoid: Augmented Reality ARkanoid

AR 2 kanoid: Augmented Reality ARkanoid AR 2 kanoid: Augmented Reality ARkanoid B. Smith and R. Gosine C-CORE and Memorial University of Newfoundland Abstract AR 2 kanoid, Augmented Reality ARkanoid, is an augmented reality version of the popular

More information

the gamedesigninitiative at cornell university Lecture 20 Optimizing Behavior

the gamedesigninitiative at cornell university Lecture 20 Optimizing Behavior Lecture 20 2 Review: Sense-Think-Act Sense: Perceive world Reading game state Example: enemy near? Think: Choose an action Often merged with sense Example: fight or flee Act: Update state Simple and fast

More information

Oculus Rift Getting Started Guide

Oculus Rift Getting Started Guide Oculus Rift Getting Started Guide Version 1.23 2 Introduction Oculus Rift Copyrights and Trademarks 2017 Oculus VR, LLC. All Rights Reserved. OCULUS VR, OCULUS, and RIFT are trademarks of Oculus VR, LLC.

More information

Introduction. Video Game Design and Development Spring part of slides courtesy of Andy Nealen. Game Development - Spring

Introduction. Video Game Design and Development Spring part of slides courtesy of Andy Nealen. Game Development - Spring Introduction Video Game Design and Development Spring 2011 part of slides courtesy of Andy Nealen Game Development - Spring 2011 1 What is this course about? Game design Real world abstractions Visuals

More information

Module 4 Build a Game

Module 4 Build a Game Module 4 Build a Game Game On 2 Game Instructions 3 Exercises 12 Look at Me 13 Exercises 15 I Can t Hear You! 17 Exercise 20 End of Module Quiz 20 2013 Lero Game On Design a Game When you start a programming

More information

Saphira Robot Control Architecture

Saphira Robot Control Architecture Saphira Robot Control Architecture Saphira Version 8.1.0 Kurt Konolige SRI International April, 2002 Copyright 2002 Kurt Konolige SRI International, Menlo Park, California 1 Saphira and Aria System Overview

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Lecture 01 - Introduction Edirlei Soares de Lima What is Artificial Intelligence? Artificial intelligence is about making computers able to perform the

More information

Computer Games 2011 Engineering

Computer Games 2011 Engineering Computer Games 2011 Engineering Dr. Mathias Lux Klagenfurt University This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Agenda Game Loop Sprites & 2.5D Game Engines

More information