So, there are just over 7 million walkable surfaces in the Felucca map alone of Ultima Online. After a good deal of tweaking, I've managed to get the nodes identified properly. It's kind of difficult to visualize 7 million points in space, though, so I'm sticking with the 2D visualization: 7 million navgraph nodes (3mb png). It uses Z values for color this time so you can see where there are multi-story buildings and underground caves and stuff of that nature.
Next phase is linking up all the nodes, assigning edge costs, and pushing everything into a higher level data structure to make searching faster. At the moment I'm thinking an Octree format, where the leaves will subdivide until all nodes in a given leaf can be reached by all others. The leaves will be treated as higher level navgraph nodes, and link depending on if edges cross between leaves.
So, yeah, still needs work, obviously, but it's moving along. Once I get this huge-navgraph-of-doom thing licked, I can move on to the more fun actual AI design and implementation. Yay.
3 comments:
I'm actually following your blog, this is Necrosis, keep it up. It's interesting seeing someone with my attitude in the game industry. Maybe you got my pm in your inbox saying what I do for a living.
Anyways, just wanted to drop a few words and keep you inspired to write, people are watching this!
You're lucky... UO is loads easier to develop a navgraph for than say, wow. Maybe you've already done so, but look up polygon merging. In the case of UO, it would be really easy as you just merge all the tiles that are adjacent to eachother and that would form rectangles into 1 node, with very little geometry required.
I would do that, but there's the problem of UO's kind of pseudo-3D world. Nice to see you're still around, Rain!
Post a Comment