The following slides were presented at the GDC 2003 roundtable:
This presentation is the property of its rightful owner.
Sponsored Links
1 / 119

The following slides were presented at the GDC 2003 roundtable: PowerPoint PPT Presentation


  • 72 Views
  • Uploaded on
  • Presentation posted in: General

The following slides were presented at the GDC 2003 roundtable: AI Interface Standards: The Road Ahead Moderated by Alexander Nareyek, Nick Porcino and Mark Kolenski March 8, 2003, 9-11:30am San Carlos II, Hilton, San Jose

Download Presentation

The following slides were presented at the GDC 2003 roundtable:

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


The following slides were presented at the gdc 2003 roundtable

The following slides were presented at the GDC 2003 roundtable:

AI Interface Standards: The Road Ahead

Moderated by Alexander Nareyek, Nick Porcino and Mark Kolenski

March 8, 2003, 9-11:30am

San Carlos II, Hilton, San Jose

Not all slides were shown because we were running out of time (especially for the groups on Rule-based Systems and Goal-oriented Action Planning).


The following slides were presented at the gdc 2003 roundtable

Notes on the roundtable’s discussions are also added to the slides. These do of course not cover the full discussions. Check the forums (member access only) for more.

Please note that not all results of voting alternatives add up to 100% - we did not ask for “undecided” in addition.


Ai interface standards the road ahead

AI Interface Standards: The Road Ahead

GDC 2003

Following slides prepared by Alexander Nareyek;

presented by Alexander Nareyek


Http www igda org committees ai php

http://www.igda.org/committees/ai.php

Artificial Intelligence Interface Standards Committee(AIISC)

AI Interface Standards Committee


Goals

Goals

  • Provide interfaces for basic AI functionality

  • Enable code recycling and outsourcing

  • In the long run: Support for dedicated hardware

AI Interface Standards Committee


Committee composition

Committee Composition

~ 70 members:

45% game developers

30% middleware

25% academia

AI Interface Standards Committee


Working groups

Working Groups

  • Decision Trees

  • Pathfinding

  • Steering

  • Finite State Machines

  • Rule-based Systems

  • Goal-oriented Action Planning

  • World Interfacing

AI Interface Standards Committee


Schedule

Your input today!

Schedule

  • After GDC: report on what we have done so far

  • Next GDC: presentation of draft documents in a larger setting

AI Interface Standards Committee


Outline for today

Outline for Today

  • Interleaved working group reports and discussions

  • Presented by

    Alexander Nareyek (CMU)

    Nick Porcino (LucasArts)

    Mark Kolenski (Blue Fang Games)

AI Interface Standards Committee


Additional thanks to

Additional Thanks to:

  • Ruth Aylett (University of Salford)

  • Abdennour El Rhalibi (Liverpool John Moores University)

  • Bjoern Knafla (University of Bielefeld)

  • Thaddaeus Frogley (King of the Jungle)

  • Christopher Reed (Raven Software / Activision)

  • Noel Stephens (Paradigm Entertainment)

AI Interface Standards Committee


Session 1 interface formats

Session 1:Interface Formats

AI Interface Standards Committee


System ai architecture

System & AI Architecture

Function Library

(simple, efficient)

Vs.

Agent-based

(distribution, flexible)

AI Interface Standards Committee


How do we specify our standards

How Do We Specify our Standards?

  • Abstract levels: Ontologies & XML

  • C/C++ Interfaces

  • C/C++ Reference Implementation

AI Interface Standards Committee


Discussion interface formats

Discussion:Interface Formats

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • Function Library vs. Agent-based

  • Can't go from an agent interface to a function interface, but you can go the other way. Someone made the comment that “agents burn bridges”.

  • Someone opined and no one contradicted a statement that an agent approach imposes a methodology on games development that may simply not be viable for many products and classes of games. Specifically, if the game design doesn't

  • match the agent paradigm the W.I. will simply not be used.

  • Vote:

  • For primarily function library: 100%

  • For primarily agent-based: 0%

  • Interested in an agent wrapper for the function-based approach: ~15%


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • C or C++

  • Linking issues from languages such as GOAL or Perl need to be sorted out if C++ is to be viable.

  • People could make a C++ wrapper if they were so inclined.

  • Perhaps interfaces could follow the precedent of stdio.h and cstdio and how they live happily together.

  • Vote:

  • Pure C: 2 hands

  • C approach with C++ wrapper: ~25%

  • Pure C++ interface: ~50%


Session 2 world interfacing

Session 2:World Interfacing

Following slides prepared by Christopher Reed;

presented by Nick Porcino

AI Interface Standards Committee


Outline

Outline

  • Goals

  • Definitions (World & AI)

  • World Services

    3A) Senses

    3B) Actuators

AI Interface Standards Committee


1 world interface goals

(1) World Interface Goals

The objective is to provide an interface between AI and the Game World.

We will begin with definitions for each of these concepts.

AI Interface Standards Committee


2 definition the world

(2) Definition: The World

  • The game world is everything

    • Master simulator and arbitrator

    • Manager of all data (state)

    • Provider of services

AI Interface Standards Committee


2 definition the world1

(2) Definition: The World

  • The game world may have:

    • Static visual and navigable locations (scene)

    • Dynamic objects (entities)

    • Autonomous, thinking characters (agents)

    • Player controlled characters

AI Interface Standards Committee


2 definition ai

(2) Definition: AI

  • AI drives the decision making of an autonomous, computer controlled entity (agent)

    • Selects actions and behaviors

    • Does not execute these actions

    • Purely decision making

AI Interface Standards Committee


2 definition ai1

(2) Definition: AI

  • AI may have:

    • State

    • Goals

  • AI can:

    • Select activities

    • Respond to the world

AI Interface Standards Committee


3 services

(3) Services

  • As the server, the game world needs to tell AI agents what services it provides to them, and then actually execute those services when requested.

AI Interface Standards Committee


3 services1

(3) Services

  • In a sense, the interface between the game and the world is seen as a blackboard.

  • The interface simply provides a place for posting service requests, and makes no demands on how these requests are fulfilled.

AI Interface Standards Committee


3 services2

(3) Services

  • There are two primary types of services that the world provides to AI:

    A) Senses

    B) Actuators

AI Interface Standards Committee


3a senses

(3A) Senses

  • Sensory information provides an agent with awareness about the game world.

AI Interface Standards Committee


3a senses1

(3A) Senses

  • There are 2 types of sensory services:

    1) Events – Concious awareness of things that happen in the world.

    2) Queries – All questions that an agent may ask about the world.

AI Interface Standards Committee


3a1 events

(3A1) Events

  • Events happen all the time: Sounds, movements, collisions, and special effects are all examples of events.

  • Events occur at a time, and may have a short, limited duration.

AI Interface Standards Committee


3a1 events1

(3A1) Events

  • Events are game specific.

  • The interface we present will not attempt to create a library of events, but rather a mechanism for developers to create their own events.

AI Interface Standards Committee


3a1 events2

(3A1) Events

  • The game world tells AI what events are available by posting them to the Event Space.

AI Interface Standards Committee


3a1 events3

(3A1) Events

  • Agents and AI subsystems place an EventWatch for a given event on the Event Blackboard.

  • The game world is then required to alert the agent when the event occurs.

AI Interface Standards Committee


3a2 queries

(3A2) Queries

  • Queries allow AI to ask questions about the game world.

AI Interface Standards Committee


3a2 queries1

(3A2) Queries

  • There are several types of questions that an agent may ask:

    1) Provide information about an entity:

    - What is (Bob‘s) (health)?

    - Is (Joe) (flying)?

AI Interface Standards Committee


3a2 queries2

(3A2) Queries

2) Provide a list of entities that match a given set of properties:

- What entities are less than 30 feet away?

- What entities are enemies and visible?

AI Interface Standards Committee


3a2 queries3

(3A2) Queries

  • There may be additional types to test for collisions and visibility, but the format has not been decided.

AI Interface Standards Committee


3b actuators

(3B) Actuators

  • Actuators provide a way for AI to interact with the game world.

  • Some examples of actuators are Movement, talking, sounds, animations, picking things up, and shooting a weapon.

AI Interface Standards Committee


3b actuators1

(3B) Actuators

  • There are two types of actuators:

  • Actions – short term behavior

  • Effectors – long term behavior with non constant parameters

AI Interface Standards Committee


3b1 actions

(3B1) Actions

  • Actions have a finite and small duration with unchanging parameters.

  • An example of an action is making a sound.

AI Interface Standards Committee


3b1 actions1

(3B1) Actions

  • It is the responsibility of the game to make sure that actions are resolved and carried out on behalf of the AI.

AI Interface Standards Committee


3b1 actions2

(3B1) Actions

  • Actions, like events, are game specific.

  • The interface we present will not attempt to create a library of actions, but rather a mechanism to create them.

AI Interface Standards Committee


3b1 actions3

(3B1) Actions

  • The game tells AI what actions and effectors are available by placing them on the action and effector blackboards.

AI Interface Standards Committee


3b1 actions4

(3B1) Actions

  • Agents are not allowed to instantly execute their desired actions.

  • Instead, they copy their request for a given action to the blackboard and leave the game to resolve the action.

AI Interface Standards Committee


3b2 effectors

(3B2) Effectors

  • Whereas Actions have limited or short duration and do not change parameters, effectors can last a long time and are aware of changes in parameters.

AI Interface Standards Committee


3b2 effectors1

(3B2) Effectors

  • An example of an effector is Thrust, a quantity that is constantly changing and adjusting the velocity of an agent.

  • Another example of an effector is animation.

AI Interface Standards Committee


Overview

Overview

(3A) Senses

-(3A1) Events (short)

-(3A2) Queries (question)

(3B) Actuators

-(3B1) Actions (short, static)

-(3B2) Effectors (long, dynamic)

AI Interface Standards Committee


Discussion world interfacing

Discussion:World Interfacing

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • Blackboard? Priority Queue? This should not be defined in the interface! Game programmers probably want to bypass all of this and build it themselves. Blackboard might be good as metaphor but should not be chosen as requirement for implementation.

  • Whatever the communication scheme, searching of information should be minimized.

  • Maybe, the WI should simply be a registry of callbacks with a filtering mechanism.

  • The WI should serve the other interfaces (Pathfinding, etc), not the other way around.

  • What is the “level” of events etc? Might get ugly…


Session 3 decision trees

Session 3:Decision Trees

Following slides prepared by Mark Kolenski;

presented by Mark Kolenski

AI Interface Standards Committee


Decision trees what are they

Decision TreesWhat ARE They?

  • Different disciplines and definitions.

  • May be probabilistic, dynamic, used in learning, expert systems, philosophy.

AI Interface Standards Committee


Simple example

Simple Example

  • Attack or defend?

  • Actions are called (child) nodes.

AI Interface Standards Committee


Example cont

Example (cont.)

  • How to decide?

  • Utility Function - one convenient number per node.

  • Perform the node that comes out the „best“.

AI Interface Standards Committee


Life is not so simple

Life is Not So Simple

  • Probabilities (Bayesian)

  • Degrees of Belief

  • Chance (Nasty World)

AI Interface Standards Committee


In games

In Games

  • Do Many Games Use Them?

  • Not clear

  • Why? Uncertainty (or to make a humanlike opponent).

AI Interface Standards Committee


Agreements

Agreements

  • K.I.S.S. In The Beginning

  • Definitions

  • Real Game Decisions

  • GOAL: Preliminary Interface

AI Interface Standards Committee


Discussion

Discussion

  • Should We Bother?

  • At What Level?

  • How General?

AI Interface Standards Committee


Discussion decision trees

Discussion:Decision Trees

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • The interface on a DT should be “give me a leaf!” “give me the next leaf!”.

  • The interface should allow construction (construction “on-the-fly”) and recursion of a tree. Some DTs are so huge they must be dynamically constructed, pruned, and discarded on the fly.

  • It should be possible to mark nodes as “done”.

  • Tree should be able to prune itself to speed processing and traversal.

  • You run the risk of enforcing a particular implementation depending on how the DT interface is specified.

  • Should support both offline and online construction of trees. Some offline constructions are very simple, such as tables.

  • Survey:

  • Who is currently using decision trees: 3 hands


C offee b reak please be back at 10 30

COFFEE BREAK!Please be back at10:30

AI Interface Standards Committee


Session 4 pathfinding

Session 4:Pathfinding

Following slides prepared by Noel Stephens;

presented by Mark Kolenski

AI Interface Standards Committee


The path finding group

The Path Finding Group

Our preliminary goal is to define the core terminology and techniques associated with commonly used path finding algorithms and data structures.

AI Interface Standards Committee


General terminology

General Terminology

  • What is path finding?

    • What is a graph?

    • What is a node?

    • What is a connection?

    • How much does it cost?

  • Where we go from here.

AI Interface Standards Committee


What is path finding

What is Path Finding?

The act of path finding is to search through a graph for a set of nodes that form the most optimal path to a specified destination.

AI Interface Standards Committee


What is a graph

What is a Graph?

A graph is a class that contains a collection of nodes.

Node

Node

Node

Graph

Node

Node

Node

Node

Node

AI Interface Standards Committee


What is a node

What is a Node?

A node is a class that contains a set of connections to other nodes.

Node

Connection

Set

Node

Node

Graph

Node

Node

Node

Node

Node

AI Interface Standards Committee


What is a connection

What is a Connection?

A connection holds information about the path to the destination node as well as a pointer to the destination node.

Connection

Set

Node

Node

Connection

Node

Graph

Connection

Node

Connection

Node

Node

Node

Node

AI Interface Standards Committee


How much does it cost

How much does it cost?

Cost for a connection can be relative to the agent contemplating the connection.

Agent

Connection

Cost Callback

AI Interface Standards Committee


Where we go from here

Where we go from here.

Our current focus has been to define the preliminary systems associated with path finding. Upon completing this it is certain that we will begin the task of taking theory and applying it to application.

AI Interface Standards Committee


Discussion pathfinding

Discussion:Pathfinding

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • What about pre-computing perfect lookups?

  • Grid-based approaches can be addressed via templates.

  • Problem: relation between interface structure and pathfinding algorithms.

  • Have you thought about hierarchical pathfinding?

  • Reference to University of Alberta’s group.


Session 5 steering

Session 5:Steering

Following slides prepared by Bjoern Knafla and Thaddaeus Frogley;

presented by Nick Porcino

AI Interface Standards Committee


Introduction

Introduction

  • Our Goal: a standard interface to ease the integration of the user AI with a steering system.

  • Current state: high-level concepts, nothing is implementation specific or set in stone.


What is steering

What is steering?

  • Reactive, non-deliberative, based on local environment.

  • For: boids, camera control, weapon targeting, non-cyclic pattern generation, ...

  • No backtracking, puzzle solving or "global" awareness.


Problems to solve

Problems to solve

  • Integrate multiple (eventually conflicting) goals.

  • Detect (potential) collisions with obstacles.

  • Translate steering behaviors into character movement.


Possible concepts components of steering

Possible concepts / components of steering

  • World representation.

  • Steering behaviors.

  • Arbiters.

  • Internal information currency.

  • Actuators.


Steering behaviors

Steering behaviors

  • Steering behaviors are the key element of steering.

  • Typical behaviors: seek/flee, pursue/evade, wander, arrival, obstacle avoidance, containment, wall following, path following, flow field following, ...


Steering behaviors1

Steering behaviors

  • Combined steering behaviors and groups: crowd path following, leader following, unaligned collision avoidance, queuing, flocking, ...

  • Steering behaviors will produce "steering goals" used by arbiters.


Arbiter

Arbiter

  • Will use steering behaviors to generate the "final steering goal" for the actuator.

  • The user shall be able to plug-in his own arbiter.

  • Possibly a combination of different arbitration strategies.


Internal information currency

Internal information currency

  • Steering behaviors and arbiters will work with the same value types.

  • Basic value type will be a vector-pair.


Actuator

Actuator

  • Should be user supplied to interface directly with the game.

  • Will interpret the "final steering goal" delivered by the arbiter.

  • Possible output: linear and angular accelerations.


Discussion steering

Discussion:Steering

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • Had to emphasis to audience that even though they may have to supply aribtrators, the advantage is the uniform interface.

  • Overall people didn't have much to say.


Session 6 finite state machines

Session 6:Finite State Machines

Following slides prepared by Nick Porcino;

presented by Nick Porcino

AI Interface Standards Committee


Objectives

Objectives

  • identify how FSMs are commonly embedded in games

  • define a common language to describe finite state machines

  • define an XML description of FSMs for interoperability between tools

  • define an API whereby FSMs can be efficiently and easily interfaced with

  • other systems

AI Interface Standards Committee


Definitions

Definitions

  • overview

  • like UML statecharts, with some simplifications

  • FuSM, HSM

AI Interface Standards Committee


Xml description

XML Description

  • objective

  • methodology

  • definition

AI Interface Standards Committee


Api description

API Description

  • objective

  • methodology

  • definition

AI Interface Standards Committee


Directions

Directions

  • provides methods to facilitate interoperability with CASE tools

  • provide easy interfacing to custom game authoring tools

  • provide sample FSM implementations conforming to the specified API

  • extensibility

AI Interface Standards Committee


Discussion finite state machines

Discussion:Finite State Machines

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • Interest in non-deterministic transitions.

  • People misinterpreted probabilistic transitions as Fuzzy transitions. Some people described as FuSM what are really Markov Chains.

  • FuSM might be viable technology on next generation hardware. It could be worthwhile to specify it now in anticipation of XBox2, PS3, etc.

  • Someone suggested checking auml.org for ideas. This is an agent-based UML effort.


Session 7 rule based systems

Session 7:Rule-based Systems

Following slides prepared by Abdennour El Rhalibi;

presented by Mark Kolenski

AI Interface Standards Committee


Rule based systems example

Rule-Based Systems : Example

IF (enemy visible) AND (my health is < very-low-health-value (20%))

OR (his weapon is much better than mine)

THEN propose retreat

Goal Oriented Action Planning


Rule based systems structure

Rule-Based Systems: Structure

Rule Memory

Long-term Knowledge:

(rules)

Behaviours Definition

Match

Inference Engine

Act

Conflict

Resolution

World State

Short-term Knowledge:

(facts)

Working Memory

Goal Oriented Action Planning


Rbs in video games applications

RBS in Video Games: Applications

  • NPC Behaviours: Quake,…

  • Strategy / Tactics: Age of Empires,...

  • Simulation: Civilization

Goal Oriented Action Planning


Rule based system good and bad

Rule-based System: Good and Bad

  • Advantages

    • Corresponds to way people often think of knowledge

    • Very expressive and allows very complex behaviours

    • Modular knowledge

      • Easy to write and debug compared to decision trees

      • More concise than FSM

  • Disadvantages

    • Can be memory intensive

    • Can be computationally intensive

    • Sometimes difficult to debug

Goal Oriented Action Planning


Rbs standard issues to consider i

RBS Standard : Issues to Consider (I)

  • Knowledge Representation

    • Production Rules

    • Frames/Object Oriented Representation

  • Inference Mechanism

    • Rete/Treat…

  • Control Mechanism

    • Forward/Backward Chaining

    • Depth/Breadth/Hybrid Search

Goal Oriented Action Planning


Rbs standard issues to consider ii

RBS Standard : Issues to Consider (II)

  • System Architecture

    • Centralised

    • Multi-Agent architecture

    • BlackBoard

  • World Interface issues

    • Interfacing with the game world : XML

    • Interfacing with the player : Script

  • Implementation Issues

    • Language/API

    • New Technology

Goal Oriented Action Planning


State of discussion

State of Discussion

  • Possible use of RBS in Sport game such as Baseball

  • Real-time issues

  • Interfacing with game world

Goal Oriented Action Planning


Presentation of results

Presentation of Results

  • Write-up of Report in state-of-the-art application of Rules-Based Systems to Video Games to be posted soon:

    • History of AI-Gaming

    • Application and Game Genres

    • FSM, Decision Tree, RBS: Definitions and Techniques

    • Latest Cases examples: RPG (Neverwinter Night, Baldur’s Gate,…), Sport(Baseball,…), QuakeIII/Unreal…

    • Implementation issues

    • Possible Standard for rules-based system

Goal Oriented Action Planning


Discussion rule based systems

Discussion:Rule-based Systems

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • SOAR might be a good way to learn about RBS.


Session 8 goal oriented action planning

Session 8:Goal-oriented Action Planning

Following slides prepared by Ruth Aylett;

presented by Alexander Nareyek

AI Interface Standards Committee


The issues

The Issues

  • Agreeing what GOAP is/is not

    • NOT: decision tree, FSM, agent architecture, A*, behaviours

    • IS: predictive, a sequence of actions, generative

Goal Oriented Action Planning


Key terms

Key Terms

  • Goal

    • State aimed for: e.g. in(gun, hand)

  • Action

    • Achieves a goal: e.g draw-gun

  • Pre-conditions

    • What must be true to carry out an action: e.g. in(gun, holster)

Goal Oriented Action Planning


Key terms1

Key Terms

  • Plan

    • A sequence of actions

    • Each action’s effects help meet pre-conditions of next in sequence

    • Sequence meets a goal or goals when executed

Goal Oriented Action Planning


The issues1

The Issues

  • Agreeing what it is good for in games

    • Not currently used unlike decision trees or path planning

    • So do we need it?

  • Performance issues VITAL

    • Symbolic representations off-putting

Goal Oriented Action Planning


Good for

Good for …

  • Repetitive fails by NPCs

    • But due to lack of memory of past actions

  • Things too obviously driven by FSMs

    • GOAP can increase complexity of actions

    • Better believability

Goal Oriented Action Planning


Good for1

Good for …

  • Impoverished list of things to do, shallow goals

    • GOAP can provide more options and handle goal hierarchies

  • Can remove duplicated code for different goals

    • As against hard-wired action sequences

Goal Oriented Action Planning


What is out there

What is out there?

  • Many architectures

    • BDI, HAP, Cougar

    • But that is NOT the purpose of this group

Goal Oriented Action Planning


The following slides were presented at the gdc 2003 roundtable

PDDL

  • Planner Domain Description Language

    • Community standard, represents actions, world, plans

    • A representation NOT a planning algorithm

    • Symbolic representation very costly

    • Too many features to attract developers

Goal Oriented Action Planning


Some initial proposals

Some initial proposals

  • Recast PDDL subset in C++

    • For speed and relevance

    • Use numeric representations

Goal Oriented Action Planning


For example

For example

  • GOAL = value or range of world variable

    • isSatisfied function to allow check on achievement

  • ACTION

    • Prereq - same as goal

    • Adjustment - changes in world data on execution

Goal Oriented Action Planning


Planning

Planning

  • Search actions to meet goal

    • A* one possibility (already used for pathplanning)

    • But may force large searches

Goal Oriented Action Planning


Open issues

Open issues

  • Level of abstraction

  • Timing issues (how many frames for execution?)

  • Representing other-NPC data (e.g. position)

  • Need for a concrete example

Goal Oriented Action Planning


Where next

Where next

  • Complete and refine current proposal

  • Try it out on an example

  • Iterate

Goal Oriented Action Planning


Discussion goal oriented action planning

Discussion:Goal-oriented Action Planning

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

  • (Some) discussion comments:

  • The general concept of planning was not very clear to the audience, including the differences between GOAP and RBS.

  • What would be the interface? How to make this in a non-game-specific way?

  • How do you specify actions, goals?

Following slides prepared by Alexander Nareyek;

presented by Alexander Nareyek


Further schedule

Further Schedule

  • Slides & roundtable report will be available on our webpage

  • More detailed report on what we have done so far

  • Next GDC: presentation of draft documents in a larger setting

AI Interface Standards Committee


The following slides were presented at the gdc 2003 roundtable

http://www.igda.org/committees/ai.php

AI Interface Standards Committee


  • Login