What's a 'node'?

Started by
9 comments, last by GameDev.net 19 years ago


Genericly, a node is a symbolic object type which can be used to manipulate a data set (ie- 'nodes' are used in trees and link lists).

To use A* you divide up your map into 'tiles' or 'regions' in order to search out a 'good' path. You use node objects that correspond 1 to 1 with your subdivisions
and define relations between them to create a data network. You perform your algorithm upon this network using knowledge about the relations (ie- like the adjacency of cartesian base tiles).

Often because the path search is done frequently and is a significant user of CPU resources, the node functinality is imbedded into the base map data structures
to lower the setup overhead of building the 'node' network.


An frequently used optomization of A* is to make 2 levels of hierarchy -- the low 'tile' level amd a higher 'region'/'area' level. By searching out a generalized path first (on a much smaller network) and then only having to do shorter (within 'area' - subset) low level pathfind, ALOT less processing is needed (CPU requirements to search networks usually grow geometricly with node count.

This topic is closed to new replies.

Advertisement