1 CO3301 - Games Development 2 Week 15 Terrain Analysis Gareth Bellaby.

Slides:



Advertisements
Similar presentations
Artificial Intelligence in Game Design
Advertisements

Wall Building for RTS Games Patrick Schmid. Age of Empires.
Heuristic Search techniques
A New World Or People Keep Telling Me This is Ambitious By Jeremiah Lewis.
AI Pathfinding Representing the Search Space
Multi-tiered AI Patrick Schmid. Multi-tiered AI We already saw a presentation about this topic Remember Ke‘s presentation? Short recap.
©Silberschatz, Korth and Sudarshan12.1Database System Concepts Chapter 12: Part C Part A:  Index Definition in SQL  Ordered Indices  Index Sequential.
Pathfinding Basic Methods.
CSE 380 – Computer Game Programming Pathfinding AI
Chapter 24 Kicking and Punting.
1 CO Games Development 2 Week 22 Flocking Gareth Bellaby.
Week 14 - Monday.  What did we talk about last time?  Bounding volume/bounding volume intersections.
University of Buffalo The State University of New York Spatiotemporal Data Mining on Networks Taehyong Kim Computer Science and Engineering State University.
Using Cellular Automata and Influence Maps in Games
Embracing Emergent Behavior with Goal-Based AI
CSE351/ IT351 Modeling And Simulation Choosing a Mesh Model Dr. Jim Holten.
Games Programming III (TGP2281) – T1, 2010/2011 Tactical & Strategic AI John See 10 Jan 2011.
Quick Review of Apr 15 material Overflow –definition, why it happens –solutions: chaining, double hashing Hash file performance –loading factor –search.
Bounding Volume Hierarchies and Spatial Partitioning Kenneth E. Hoff III COMP-236 lecture Spring 2000.
Tactical and Strategic Reasoning  Covers…  Deducing tactical situations from sketchy (limited) information  Using tactical situations to make decisions.
The Greedy Wall Building algorithm Rami Khouri. Ideal definition of Wall Either keeps valuable assets in, or enemies out…mostly keep enemies out Impassable,
Kiting in RTS Games Using Influence Maps Alberto Uriarte and Santiago Ontañón Drexel University Philadelphia 1/26 October 9, 2012.
Structures and Strategies- Basketball
1 CO Games Development 1 Week 5 Deriving a "look at" function + Graph Theory Gareth Bellaby.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
1 CO Games Development 1 Week 1 Introduction to AI Gareth Bellaby.
Object-Oriented Design Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
Video Game AI. Classical Games – Focus on optimal players using computationally expensive search techniques Video Game AI – Refers to games such as First.
1 CO Games Development 1 Week 6 Introduction To Pathfinding + Crash and Turn + Breadth-first Search Gareth Bellaby.
WAES 3308 Numerical Methods for AI
Introduction to AI Engine & Common Used AI Techniques Created by: Abdelrahman Al-Ogail Under Supervision of: Dr. Ibrahim Fathy.
Path Planning Part I: Search Space Representation Part II: Table Lookup Path Finder Path III: Convincing Hunting Ref: AIWisdom 2.
1 CO Games Development 2 Week 19 Probability Trees + Decision Trees (Learning Trees) Gareth Bellaby.
1 CO Games Development 2 Week 17 – Goal-Oriented Action Planning Gareth Bellaby.
August 31, 2005 Game Developer Conference Europe Killzone’s AI: Dynamic Procedural Tactics Guerrilla Games - 1 Killzone’s AI: Dynamic Procedural Tactics.
Ch 7.2: Performing Qualitative Terrain Analysis in MoO3.
University of Amsterdam Search, Navigate, and Actuate - Qualitative Navigation Arnoud Visser 1 Search, Navigate, and Actuate Qualitative Navigation.
Ch 7.1: Using a Spatial Database for Runtime Spatial Analysis.
CO1301: Games Concepts Dr Nick Mitchell (Room CM 226) Material originally prepared by Gareth Bellaby.
Holistic Mobile Game Development with Unity 2015 Taylor & Francis. All rights Reserved.
AI and Computer Games (informational session) Lecture by: Dustin Dannenhauer Professor Héctor Muñoz-Avila Computer Science and Eng.
Motion Planning in Games Mark Overmars Utrecht University.
Qualitative Spatial Analysis Chris Mansley. Qualitative Quantitative items are known, definable quantities (x,y) coordinates Remaining health Location.
Jumping, Climbing, and Tactical Reasoning Section 2.5 Tom Schaible CSE 497 – AI & Game Programming.
Artificial Intelligence in Game Design Complex Steering Behaviors and Combining Behaviors.
Random Map Generation and Transport Unit AI for Strategy Games By Russell Kuchar.
Games Development 2 Entity Update & Rendering CO3301 Week 2, Part 1.
Artificial intelligence IN NPCs. Early Role Playing games Npcs in early role playing games were very limited in terms of being “Intelligent”. For instance,
Instructional Objective  Define an agent  Define an Intelligent agent  Define a Rational agent  Discuss different types of environment  Explain classes.
F.E.A.R. Game AI Evaluation by Robert Rak. What is F.E.A.R. ? FEAR is a First Person Shooter game Player takes on the role of an elite strike force team.
1 CO Games Development 1 Week 13 - Revision Lecture AI Revision Gareth Bellaby.
Experimental Research Methods in Language Learning Chapter 12 Reliability and Reliability Analysis.
Artificial Intelligence in Game Design Influence Maps and Decision Making.
Artificial Intelligence in Game Design Lecture 8: Complex Steering Behaviors and Combining Behaviors.
1 CO Games Development 1 Week 3 Game Agents 2 Gareth Bellaby.
1 CO Games Development 1 Week 4 Finite State Machines + Maths Gareth Bellaby.
Artificial Neural Networks (ANN). Artificial Neural Networks First proposed in 1940s as an attempt to simulate the human brain’s cognitive learning processes.
1 CO Games Development 2 Week 16 Blackboard Model Gareth Bellaby.
Qualitative Spatial Analysis Part 2 Chris Mansley.
1 CO Games Development 1 Week 9 - part 2 Pathfinding Considerations Gareth Bellaby.
1 CO Games Development 2 Week 13 Influence Maps Gareth Bellaby.
CO Games Development 2 Week 16 Blackboard Model
Bounding Volume Hierarchies and Spatial Partitioning
CO Games Development 2 Week 22 Trees
Bounding Volume Hierarchies and Spatial Partitioning
CO Games Development 2 Week 19 Extensions to Finite State Machines
Environment Design.
CO Games Concepts Week 12 Collision Detection
Artificial Intelligence in Games Week 7
CO Games Concepts Week 22 Particle systems
Presentation transcript:

1 CO Games Development 2 Week 15 Terrain Analysis Gareth Bellaby

2 Terrain analysis ●Pre-processing ●Analysis by eye or by experimentation. ●Smart objects and locations. ●"I am a sniping point" ●"I am cover"

3 Applicability ●A wide variety of approaches. ●Team based games ●Squads ●Enemy AI. ●Moving into cover ●Adopting good firing position, e.g. sniping point ●Provide covering fire, e.g. firing at windows and doors ●Provide supporting fire.

4 Specifically ●Require a representation of the terrain. ●Also require the means to reason about that representation. ●Difficult to generalise. ●Typically custom built. ●But general points can be made.

5 Initial analysis ●As with all AI you need to decide the attributes being used in the reasoning. You cannot recognise a choke point or a sniping point unless you have already decided that these are of use to your game and things you desire to recognise.

6 Waypoints ●Reasoning using waypoints. ●This is a simplification. You need a representation of the world. ●For each waypoint calculate its offensive and defensive value. ●Directional information is needed. Shooting out of a window is different from shooting up at a window. A wall provides cover for one direction, but not for another.

7 Waypoints ●You can take various factors into consideration. ●Sterren suggests (among others): ●cover ●lack of cover at target ●distance to objects such as power-ups ●lighting level ●locations which restrict movement ●observed approaches

8 Static and dynamic ●Some static analysis is comparatively easy. Hills, shores, etc. This analysis can be pre- processed. ●Things are more difficult with dynamic terrain.

9 Clustering ●One approach is clustering. You have looked at this already. ●Here's an example, in a strategy game need to be able to recognise dynamic areas, e.g. towns and forests. You can think about these areas as composed of lots of things that touch each other. Place a small radius around each tree. A forest is an area of contiguously touching radii. ●The region is complex. Better to convert into a convex hull.

10 Clustering

11 Clustering

12 Convex hulls ●Convex hulls are good. They are easy to reason with and about. ●Nice example of optimisation in Higgins. ●Need to know what points are inside the convex hull. It would be extremely inefficient to store all of the points. Instead store one point for each x value. Associated with each x value is a series of y values indicating the start or end of the sequence.

13 Convex hulls

14 Convex hulls

15 Choke points ●Choke points. Use an influence that can grow. Each region is surrounded by uniform area. Grow this out to your required distance. Any areas that overlap can be considered to be choke points. ●The analysis can be extended to show where to hide as well. Take the centre of the choke point. Trace a route along the edge of the region going away from the choke point, until there is no direct line-of-sight to the choke point.

16 Choke points

17 Choke points

18 Influence maps ●This leads back to influence maps. This method of growing a region is a version of an influence map. You are extending the influence of the area out in order to calculate an area of interest. Influence maps have been used for terrain analysis, e.g. Age of Empires to identify locations such resource points, building placement as well as staging areas for attack, and routes for attack.

19 Influence maps and routes ●Find a route through an enemy's domain that avoids any possible early warning to the enemy. ●Similar to the identification of choke points. ●You can see the range of applications that this approach lends itself to.

20 Influence maps and routes

21 Cover behind objects ●Simplest case is single opponent firing at you. You trace a line-of-sight to the edges of the object. Any point in between the two edge points is in cover. ●Can be extended for multiple opponents but you must take account of the case where there is no cover point. ●Perfect location for cover can be calculated by calculating the centre of gravity of the object. ●Can assume that the object is 2d and that mass is evenly distributed. ●The simply trace a line from centre to opponent or opponents.

22 Sources & further reading ●Sterren, William van der, "Terrain Reasoning for 3D Action Games", Game Programming Gems 2, ●Sterren, William van der, "Terrain Reasoning for 3D Action Games", rrain_reasoning_for_3d_action_.php ●Not same article, but covers similar grounds. ●Higgins, D., "Terrain Analysis in an RTS-The Hidden Giant", Game Programming Gems 3, 2002.

23 Sources & further reading ●Dill, K., & Sramek, A., (2003), "Performing Qualitative Terrain Analysis in Master of Orion 3", AI Game Programming Wisdom 2. ●Kent, T., (2003), "Multi-Tiered AI Layers and Terrain Analysis for RTS Games", AI Game Programming Wisdom 2. ●Woodcock, S., (2002), "Recognizing Strategic Dispositions: Engaging the Enemy", AI Game Programming Wisdom.

24 Sources & further reading ●Paanakker, F., (2008). "Risk-Adverse Pathfinding Using Influence Maps", AI Game Programming Wisdom 4. ●Obelleiro, J, Sampedro, R, & Hernandez Cerpa,D., (2008), "RTS Terrain Analysis: An Image-Processing Approach", AI Game Programming Wisdom 4. ●Darken, C., & Paull, G., (2006), "Finding Cover in Dynamic Environments", AI Game Programming Wisdom 3.