270 likes | 563 Views
TGD3351: Game Algorithms TGP2281 : Game Programming III. i n my own words, better known as Game AI. In a nutshell. B. MM (SEGD) GP I – Basics GP II – Game engine, Rendering, Particles GP III – Game Artificial Intelligence (AI), Learning CS (GD Specialization) Game Design Fundamentals
E N D
TGD3351: Game AlgorithmsTGP2281: Game Programming III in my own words, better known as Game AI
In a nutshell • B. MM (SEGD) • GP I – Basics • GP II – Game engine, Rendering, Particles • GP III – Game Artificial Intelligence (AI), Learning • CS (GD Specialization) • Game Design Fundamentals • Game Physics
Course matters • Refer to GA/GP3 course website (main) for more details http://pesona.mmu.edu.my/~johnsee/teaching/gamealgo • Selected materials will be uploaded in MMLS • Classes: • (L) Wednesdays, 11.00am-1.00pm (subject to change?) • (T) Thursdays, 9.00-11.00am • Consultation hours: • Thursdays, 2.00-4.00pm (tentative, might change)
Textbook and References • AI for Game Developers, Bourg & Seeman • Artificial Intelligence for Games, Millington • Programming Game AI by Example, Buckland • Learning XNA 4.0, Reed
XNA’s Not Acronymed (XNA) • XNA Game Studio – Primary tool for this course, Language: C# (very similar to Java…) • Why not Unity3D? UDK? • All you need is • Visual Studio (2010 version) preferably MSDNAA license for students available • XNA Game Studio (free download)
Coursework Distribution • A 100% Coursework course
Project • All students MUST hand in the project • Project to be done in pairs (3 a group not allowed) • AI-oriented game • Details will be ready when the guidelines are out (end of this week) • 4 checkpoints: Project Proposal, Progress Milestones #1, #2, Final Submission • Presentations required for Proposal (in Week 3) and Final Submission (probably Week 14)
Other Coursework • Term Test • Test on AI knowledge and concepts (no programming involved!) • Class Homework • Short homework pieces in the form of programming exercises or theory questions • To be handed up on the same day or after a few days
Do you need to come to class? • I don’t care if you want to come to class and I would rather not be taking attendance, BUT the problem is…
Course policies • Honour Code • Acknowledge the people you ascertain help from (can be coursemates, external parties) • Acknowledge material taken from elsewhere • Acknowledge source of code used • Late days and late penalties • Each student given 2late days • If project partners want to take a late day, each project member must contribute a day from his allocation • Once the late days run out, any late submission penalized at 1% (of total coursework) per day. No coursework may be handed in after the stated hard deadline.
Also necessary to mention… • I’m wasting your time, you’re wasting my time (IWYTYWMT) syndrome • How much should you know/learn that will be enough? • Discussion-oriented not Lecture-oriented
Toilet break… • Any further questions about the course?
XNA Topics • Game Framework Setup (OOP Design Approach) • Game Loop Functionality • Managing Game Assets • Tile-based Environment • Player Movements / AI Movements • Simple Collision Detection (Bounding Boxes) • Game Item Manager
AI Topics • Game AI Fundamentals • Game NPC Movements • Flocking and Function-based Movements • Basic Pathfinding • A* Pathfinding and Extensions • AI Scripting • Finite State Machines • Decision Trees and Rule-based AI • Fuzzy Logic
Topics • Tactical and Strategic AI • Board Game/Turn-based Game AI • Advanced Topics (Neural Nets, Genetic Algorithms)
Early AI in Games • Atari’s Pong – one of the first video games ever created and released to the public • Tracking AI: How does it work?
Board games Video games • Backgammon on Atari 2600 • Pathfinding AI
Space Invaders • Pattern AI. Moving and reacting based on patterns
Obsolete? • Are these early ideas in Game AI still used in today’s games? • What do you think and WHY?
First-Person Shooters • Quake 3 • How do AI bots find cover under fire? Way points? • Line of sight computations
First-Person Shooters • Halo 3 • Acting together: Team or group-based AI • Coordination: Fixed / Adaptive
Real-Time Strategy (RTS) • Warcraft 2 • What are “strategies” consider in an RTS game? • Managing resources / economy • Scripting
Simulation Games • The Sims • Artificial life • Programmable / adaptive behaviours, emotions • Open-ended concept
Board Game / Turn-based AI • Othello/Reversi • Use information in game to determine best moves (optimal solutions) in the near future • Minimaxand other ‘searching’ techniques • Heuristics to speed up calculations
Play & Tell • Pong http://www.download-free-games.com/online/game/pong • Pacman http://www.freepacman.org • Galcon http://www.galcon.com/flash/
Upcoming • Tutorial is ON this week • Introduction to XNA Game Studio and how to create a simple game engine from ground up • Demo-and-follow style • Week 2: XNA Walkthrough Week • Might need to get lab instead of room • More tutorials on XNA to gain more experience