Download presentation
1
Artificial Intelligence in Game Design
Map Representation and Path Finding
2
Path Creation Strategy Path Planning Movement
“Where to move to” “How to get there” “Get there” Current location Idea: Specify goal location and let AI find path from current position to goal
3
Waypoints Path = graph structure Vertices = waypoints on path
Edges between waypoints directly reachable from one another Current location
4
Waypoints and Costs Goals:
Provide waypoints that let characters reach all locations on level Can SEEK any location from some waypoint Minimize number of waypoints Cost of path planning = O(number of waypoints)2 Key idea: Waypoint creation done offline (during game design) Path planning done many times during gameplay
5
Defining Waypoints Defining waypoints manually
Usually at points where direction change necessary Corners Intersections Doors Character must be able to directly seek waypoint from any adjacent waypoint Character must be able to directly seek all points in map from some waypoint
6
Defining Waypoints Manually
7
Defining Waypoints Convenient to generate waypoints automatically
Simplest case: simple 2D grid (square or hex) Some points impassible (water, mountains, etc.)
8
Defining Waypoints Automatically
Can often use floor tiles Used by level designer to create level Used to define visibility, lighting areas, where sounds can be heard, etc. Usually triangular or rectangular
9
Defining Waypoints Automatically
One waypoint per tile Usually in center Link waypoints in adjacent tiles May still need to tweak manually Make sure all points directly reachable from a waypoint Add strategic waypoints (cover, shadow, etc.) Make special waypoints for door entry, exit, etc.
10
Triangular Mesh Generation
Automatically generating triangular tiles that cover level Connect some two adjacent walls to form a triangle Continue connecting adjacent walls and/or adjacent borders Continue until all walls are part of some triangle
11
Waypoint Cleanup Can automatically remove some “redundant” waypoints
Not an endpoint (degree > 1) All adjacent points can directly reach each other without using that waypoint Often based on visibility (ray tracing)
12
Path Creation Path = list of adjacent waypoints
Move along path using FollowPath steering Seek “close enough” to next path waypoint 73 73 27 21 45 Desired path 27 45 21
13
Path Creation Initial waypoint = May need to test each
Waypoint in same tile as character Closest waypoint to character May need to test each Avoid going backward initially Less of a problem with small tiles Seek that first waypoint Goal:ATM Should seek this first
14
Path Creation Reaching goal = Arrive at goal from that last waypoint
Character in same tile as goal Character at waypoint nearest goal Arrive at goal from that last waypoint
15
Hierarchical Paths Simple maps at different levels of detail
Better than single map with thousands of points Single best solution to minimizing pathfinding costs Connect points on high-level maps to entrances/exits on low level maps
16
Hierarchical Paths Requires hierarchical representation of location Me
At podium Path to room 301 exit Room 301 Path from 301 exit to Meshel Hall exit Meshel Hall Path from Meshel Hall exit to Kilcawley Center entrance Holy Grail Path from Kilcawley Center entrance to Computer Lab entrance Under seat D001 Computer Lab Path from Computer Lab entrance to seat D001 Kilcawley Center
17
Path Planning Good path May have several possible paths from current location to goal Need to find “best” path Otherwise character does not look intelligent! Goal Bad path
18
Edge Costs “Best” path defined by edge costs
Good path Cost = 22 “Best” path defined by edge costs Time to travel path Distance, etc. Best path = path with smallest total cost 6 4 4 3 5 4 Goal 7 5 4 Bad path Cost = 47 5 4 2 5 3 4 4
19
Terrain-based Costs Can base cost on terrain type
Grass = 1 Desert = 2 Forest = 3 River = 20 Often multiply by edge distance 5 miles of desert = cost of 10 8 miles of grass with ¼ mile river = cost of = 13
20
Other Edge Costs Danger
Cost of traveling through enemy territory = 5 * normal cost Important part of tactical movement
21
Other Edge Costs Visibility Dark = factor of 3 Fog = factor of 2
Can also add to danger Long path now best
22
Character Edge Costs Different characters may have different edge costs Grass = 2 Desert = 2 Forest = 10 River = 30 Grass = 1 Desert = 3 Forest = 2 River = 10 Squad cost = max(individual costs)
23
Non-Symmetric Edge Costs
Often harder to go one direction than another Stairs Jumping from one level to lower level Will have different costs in each direction Two directed edges instead of one directed edge No second edge in “one way” path 1 4 2
24
Turning Costs Some characters require time to realistically make a direction change Part of edge cost Separate edge from location to same location Align Arrive 3 5 4 Seek
25
Inflection Points Waypoints often near convex corners
Shortest path in wide areas Better than putting waypoint in center of area Path given by floor tiles Faster path
26
Inflection Points Put waypoint at each convex corner
Move out some safeRadius from corner Connect waypoints visible from one another safeRadius safeRadius
27
Inflection Points Potential problem: “jagged” areas could create too many waypoints Solution: Only add waypoints for obstacles between critical areas (such as doors) Recursively add waypoints until critical areas connected Irrelevant inflection points
28
Inflection Points Automatic creation of waypoints on arbitrary racing track
29
Path Smoothing Problem: Grid-based floor tiles with waypoints at center Jagged” paths Too many unnecessary turns Better to create path using non adjacent nodes
30
Path Smoothing Recursive algorithm: Draw line between start and goal
Stop at obstacle Continue
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.