utahdigicon 2014 - bringing life to your games

66
PathFinding RayCasting Dave Geurts www.davegeurts.com sims11tz ing Life Into Your Ga

Upload: david-geurts

Post on 16-May-2015

152 views

Category:

Technology


1 download

DESCRIPTION

Pathfinding, Raycasting

TRANSCRIPT

Page 1: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding

RayCasting

Dave Geurtswww.davegeurts.com

sims11tz

Bring Life Into Your Games

Page 2: UtahDigiCon 2014 - Bringing Life to your Games

#UtahDigiCon#pathfinding

sims11tz

Page 3: UtahDigiCon 2014 - Bringing Life to your Games

Win Prizes!!!!!

Page 4: UtahDigiCon 2014 - Bringing Life to your Games
Page 5: UtahDigiCon 2014 - Bringing Life to your Games
Page 6: UtahDigiCon 2014 - Bringing Life to your Games
Page 7: UtahDigiCon 2014 - Bringing Life to your Games
Page 8: UtahDigiCon 2014 - Bringing Life to your Games
Page 9: UtahDigiCon 2014 - Bringing Life to your Games

Pop QUIZ!

Page 10: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding

RayCasting

Bring Life Into Your Games

Page 11: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding

Page 12: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Search Area

Break your level up into any type of Grid System

Your hero needsTo get from

Point A

To

Point B

Page 13: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*

Each Square on our Grid is

Called a Node

Search AreaBreak your level up into any type of Grid System

Walkable

NOT Walkable

SLOW but Walkable

Page 14: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*

Open List

and

Closed List

Shopping list of Nodes

Page 15: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*

Calculating an F score for a Node

F = G + H

Page 16: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Calculating G for a Node

F = G + HGTotal Sum of F scores from the starting Point to Node

Page 17: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Calculating H for a Node

F = G + HHCount # of Nodes To get to the destination * 10

heuristic

Page 18: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*

F = G + H

Open Listand

Closed List

Search Area - NodesBreak your level up into any type of Grid System

Walkable NOT Walkable

Page 19: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Starting Node

Destination Node

Page 20: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 21: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 22: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopG

Page 23: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopH Count Nodes To get to the destination * 10

Page 24: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

F = G + H

Page 25: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 26: UtahDigiCon 2014 - Bringing Life to your Games

Recursive A* loopPathFinding – A*

Page 27: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 28: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopG

Page 29: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopH

Page 30: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

F = G + H

Page 31: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopG

Page 32: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopH

Page 33: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

F = G + H

Page 34: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 35: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 36: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopG

Page 37: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopH

Page 38: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

F = G + H

Page 39: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopG

Page 40: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopH

Page 41: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

F = G + H

Page 42: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 43: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 44: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopG

Page 45: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopH

Page 46: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

F = G + H

Page 47: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopG

Page 48: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loopH

Page 49: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

F = G + H

Page 50: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*Recursive A* loop

Page 51: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding – A*

Page 52: UtahDigiCon 2014 - Bringing Life to your Games

PathFinding

Demonstration

Page 53: UtahDigiCon 2014 - Bringing Life to your Games

Questions?

PathFinding

Page 54: UtahDigiCon 2014 - Bringing Life to your Games

Pop QUIZ!

PathFinding

Page 55: UtahDigiCon 2014 - Bringing Life to your Games

RayCasting

Page 56: UtahDigiCon 2014 - Bringing Life to your Games

RayCasting

Page 57: UtahDigiCon 2014 - Bringing Life to your Games

RayCasting

Broad Phase Determine which things the ray might collide with.

Narrow Phase Test the ray against each possible thing to determineWhat it hits and where

Page 58: UtahDigiCon 2014 - Bringing Life to your Games

RayCasting

Search AreaBreak our level up into Nodes

Page 59: UtahDigiCon 2014 - Bringing Life to your Games

RayCasting

Shoot RayShoot out a ray from our point in an angle

Page 60: UtahDigiCon 2014 - Bringing Life to your Games

RayCasting

Check every nth measurementCheck for collision along the angle every nth pixels

Page 61: UtahDigiCon 2014 - Bringing Life to your Games

RayCasting

Broad Phase List of all Nodes that the ray touches, until the lengthOf the ray is reached.

Page 62: UtahDigiCon 2014 - Bringing Life to your Games

RayCastingNarrow Phase

Test the ray against each possible thing to determineWhat it hits and where

Page 63: UtahDigiCon 2014 - Bringing Life to your Games

RayCasting

Demonstration

Page 64: UtahDigiCon 2014 - Bringing Life to your Games

Questions?

RayCasting

Page 65: UtahDigiCon 2014 - Bringing Life to your Games

Pop QUIZ!

RayCasting

Page 66: UtahDigiCon 2014 - Bringing Life to your Games

Results!