Casting Digital Extras Dr. Paul A. Kruszewski President, GRIP.

Slides:



Advertisements
Similar presentations
1.1 Designed and Presented by Dr. Ayman Elshenawy Elsefy Dept. of Systems & Computer Eng.. Al-Azhar University
Advertisements

Dr. Paul Kruszewski, CTO © 2000–2004 BGT BioGraphic Technologies Inc. The Challenges and Follies of Building a Generic AI engine.
1 Interactive Fiction CIS 487/587 Bruce R. Maxim UM-Dearborn.
MULTIMEDIA DEVELOPMENT 4.3 : AUTHORING TOOLS. At the end of the lesson, students should be able to: 1. Describe different types of authoring tools Learning.
 Mankyu Sung Scalable, Controllable, Efficient and convincing crowd simulation (2005)  Michael Gleicher “I have a bad case of Academic Attention Deficit.
A Complete Tool For System Penetration Testing Presented By:- Mahesh Kumar Sharma B.Tech IV Year Computer Science Roll No. :- CS09047.
Artificial Intelligence in Game Design Hierarchical Finite State Machines.
1 CS 599 Physically Based Modeling for Interactive Simulation and Games Case Study: Havok Engine for Game Physics Jernej Barbic University of Southern.
Dr. Brian Durney Computing and Networking Sciences at UVU C S
MERTIS: Modifiable, Extensible, Real-Time, Interactive Simulation Leandro Basallo ◦ Ryan Leigh ◦ Sam Talaie ◦ Regan Snyder with Dr. Sergiu Dascalu and.
Russell Taylor Lecturer in Computing & Business Studies.
Testing 1… 2… 3… a play test of an as yet Untitled game M i c h a e l Y a b l o n s k y ● K e l v i n T u ● A l e x Y a n g ● A le x L o r i m e r.
Dr. Brian Durney Computing and Networking Sciences at UVU C S
ALICE 3D PROGRAM WORKSHOP. ALICE & MATHEMATICS Using Alice in Mathematics Using 3D Graphics to add in the understanding of math concepts.
 Advantages  Easy to learn  Graphical Advantages  Help and Support  Widely used  Software compatibility  Customisable  Customisable Hardware 
CORE MECHANICS. WHAT ARE CORE MECHANICS? Core mechanics are the heart of a game; they generate the gameplay and implement the rules. Formal definition:
Comparing Python and Visual Basic
Created by NW 2012 – please note all copyright on images used is property of copyright holder. Note: some of the more complicated descriptions are taken.
Win8 on Intel Programming Course The challenge Paul Guermonprez Intel Software
Section 02Systems Documentation1 02 Systems Documentation And Franchise Colleges By MANSHA NAWAZ.
Yingcai Xiao Artificial Intelligence in Game Development Yingcai Xiao.
CS426 Game Programming II Dan Fleck. Why games?  While the ideas in this course are demonstrated programming games, they are useful in all parts of computer.
Artificial Intelligence in Game Design Problems and Goals.
DIGITAL GAME PROG I Large-Scale Design Process Part 2.
44 CHAPTER SPECIALIZED APPLICATION SOFTWARE Graphics 1. Desktop publishing 2. Image editors 3. Illustration programs 4. Image galleries 5. Graphic.
Created by, Author Name, School Name—State FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities.
Video Game Audio Prototyping with Half-Life 2 :: Granulation Leonard J. Paul VideoGameAudio.com.
Computer Science and Game Development By: Nicholas Fahey & Griffin Marsh.
Survey of AI for games. AI vs. AI for games Traditional AI: – Made to handle unseen inputs, large state space – Too many options possible to compute an.
Chapter 3 Multimedia Skills
Introduction to AI Engine & Common Used AI Techniques Created by: Abdelrahman Al-Ogail Under Supervision of: Dr. Ibrahim Fathy.
Artificially Intelligent Smart Objects in Modern Computer Games Presentation by: Venetsian T. Jakimov.
Fall 2006CS4455 Prototyping Maribeth Gandy Jeff Wilson
AI in games Roger Crawfis/Eric Fosler-Lussier CSE 786 Game Design.
Web Games Programming An Introduction to Unity 3D.
1 Computer Science of Graphics and Games MONT 105S, Spring 2009 Session 1 Simple Python Programs Using Print, Variables, Input.
Alice and Algorithms Chapter 1 Part Reasons to Program The joy of programming To create a tool To use your creativity abilities For non programmers.
Project “Smoke” N-core engine experiment Threading for Performance AND Features.
Basic Systems and Software. Were we left off Computers are programmable (formal) machines. Digital information is stored as a series of two states (1.
Computational theory techniques in interactive video games.
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
ENGR-TS-2: The students will develop an understanding of how the design process is used to develop a technological system.
F UNDAMENTALS OF G AME D ESIGN G AME L EVEL D ESIGN Sayed Ahmed BSc. Eng. in CSc. & Eng. (BUET) MSc. in CSc. (U of Manitoba)
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Slide 1 Computer Control The Gig. Slide 2 What features in the program can help us run the lighting & smoke effects? The computer is good at controlling.
Dr Nick Mitchell (Room CM 224)
Dr. Brian Durney Computing and Networking Sciences at UVU C S
CS4099 Software Project By Tom Clark. The project Main aim: –Show how the expanding field of games utilises CS. –Re-enforce by creating an example using.
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
INTERACTIVE STORYTELLING THROUGH A COMPUTER GAME -WORKING TITLE.
GCSE ICT Simulations. A simulation is a software package that recreates or simulates a complex phenomena, environment, or experience in order to provide.
1 Topics: Introduction to Game Engine Course Overview What is a game engine? Advantages and Disadvantages Torque Game Engine.
UFCFSU-30-13D Technologies for the Web An Introduction to Unity 3D.
Computer Software engineer By: Eric Musser. What is This? Computer engineers make programs to run a computer. Computer engineers make programs to run.
Presented by: Amy Hedges. GENERAL  Game Type: Simulation Strategy  Rating: E (Everyone)  Price: $ 9.95 (EA Website)
© ExplorNet’s Centers for Quality Teaching and Learning 1 Objective % Understand career planning in a digital media environment.
Making Code Kevin Dill Group Technical Staff Lockheed Martin Mission Systems & Training.
Crowds (and research in computer animation and games)
Features of Authoring Tools
Enemy and Friendly AIs Richard Gesick.
Objective % Understand career planning in a digital media environment.
JavaScript.
Chapter 16 – Programming your App’s Memory
SPECIALIZED APPLICATION SOFTWARE
Autonomous Vehicle Simulations
Crowds (and research in computer animation and games)
CIS 488/588 Bruce R. Maxim UM-Dearborn
Unit 6 Assignment 2 Chris Boardley.
CIS 488/588 Bruce R. Maxim UM-Dearborn
Tutorial 10: Programming with javascript
Presentation transcript:

Casting Digital Extras Dr. Paul A. Kruszewski President, GRIP

Overview Where we are coming from Where we are coming from Where we are at Where we are at Where we are going Where we are going

Who is GRIP? A game AI software company in Montreal A game AI software company in Montreal The guys who created AI.implant The guys who created AI.implant 2002 Best AI tool (Game Developer Magazine Frontline Award) 2002 Best AI tool (Game Developer Magazine Frontline Award) 2006 Best middleware (Game Developer Magazine Frontline Award) 2006 Best middleware (Game Developer Magazine Frontline Award) GRIP credits include GRIP credits include Army of TWO: the 40th day™, Deus Ex 3, Tron:evolution Army of TWO: the 40th day™, Deus Ex 3, Tron:evolution GRIP customers include GRIP customers include Autodesk, BioWare, Disney, EA, Eidos & Intel Autodesk, BioWare, Disney, EA, Eidos & Intel

What Does GRIP do? Develop next-gen game AI products for AAA games Develop next-gen game AI products for AAA games Digital Extra System Digital Extra System Crowd simulator Crowd simulator “real-time Massive for games ” “real-time Massive for games ” Character Control System Character Control System High level NPC AI High level NPC AI “MS Dev for game brains ” “MS Dev for game brains ”

What is an Extra? Like a movie extra Like a movie extra Anyone you are not supposed to deeply interact with Anyone you are not supposed to deeply interact with The more the interactivity, the less its an extra The more the interactivity, the less its an extra “Clutter” “Clutter” Background characters Background characters Aesthetic Aesthetic Large numbers Large numbers Computationally cheap Computationally cheap Controlled en masse Controlled en masse

Shipped Examples Army of TWO: the 40 th day Army of TWO: the 40 th day Tron:evolution Tron:evolution

Core Elements Core behaviour Core behaviour Mill around and interact with the ambient world Mill around and interact with the ambient world Be aware of other people including player Be aware of other people including player Panic when a bad thing happens Panic when a bad thing happens Required tech Required tech Flows Flows Obstacle avoidance Obstacle avoidance Action stations Action stations Spawners Spawners Brains Brains

Flows Goal Goal Have lots of people move around a world seemingly with purpose Have lots of people move around a world seemingly with purpose Problems Problems Computationally slow; Little control; Sidewalk problem Computationally slow; Little control; Sidewalk problem Method Method Flow network tells extras where to go Flow network tells extras where to go Advantages Advantages Computationally simple and cheap; Expressive: extras go where they are told Computationally simple and cheap; Expressive: extras go where they are told Rocket Science Rocket Science Dynamic lane forming; Dynamic splines Dynamic lane forming; Dynamic splines

Obstacle Avoidance Goal Goal Have extras avoid running into each other in a natural looking way Have extras avoid running into each other in a natural looking way Problems Problems Twitching; Getting stuck (piling up) Twitching; Getting stuck (piling up) Method Method Case sensitive steering behaviours; Social rules / self organizing lanes; Tie into the animation system Case sensitive steering behaviours; Social rules / self organizing lanes; Tie into the animation system Advantages Advantages Very robust; Looks good Very robust; Looks good Rocket Science Rocket Science Knowing when to stop and circumvent Knowing when to stop and circumvent

Action Stations Goal Goal Add variety and realism to the movement behaviours by adding animations to show interactivity with environment Add variety and realism to the movement behaviours by adding animations to show interactivity with environment Problems Problems Scalability Scalability Interpretability Interpretability Method Method Smart objects that suck extras off flows and play animations that look like complex behaviours Smart objects that suck extras off flows and play animations that look like complex behaviours Advantages Advantages Looks good. Most AI behaviours are actually animations; Scales with animators not programmers Looks good. Most AI behaviours are actually animations; Scales with animators not programmers Rocket Science Rocket Science Context switching / interrupting; pathological players; queuing Context switching / interrupting; pathological players; queuing

Spawners Goal Goal Maximize the user’s perception of the extras Maximize the user’s perception of the extras Problems Problems Pre-roll; Spacing Pre-roll; Spacing Method Method Spawn on point / zone / flow; Despawn into pools Spawn on point / zone / flow; Despawn into pools Advantages Advantages Precise control of user experience Precise control of user experience Rocket Science Rocket Science A million little details A million little details

Brain Authoring Goal Goal Create behaviours of increasing complexity Create behaviours of increasing complexity Problems Problems State machines: state explosion; Script / coding: too unconstrained / requires highly specializes skills; Planners: incomprehensible State machines: state explosion; Script / coding: too unconstrained / requires highly specializes skills; Planners: incomprehensible Method Method Behaviour trees; Graphic editor / debugger Behaviour trees; Graphic editor / debugger Advantages Advantages Coder / designer literally on the same page; Encourages scalability, modularity and re-use Coder / designer literally on the same page; Encourages scalability, modularity and re-use Rocket Science Rocket Science Control flow / exception & interrupt handling / blackboard Control flow / exception & interrupt handling / blackboard

Future Directions Greater Fidelity Greater Fidelity Transitions to NPCs Transitions to NPCs Props Props Greater Breadth Greater Breadth Ambient vehicles Ambient vehicles Different engines Different engines