Treet TV’s Pathfinding Episode

Character Tilt

Lorca or may be Falcon brought up how using a vertical and horizontal character behaves. I didn’t really understand. I’ll have to play with the settings and see what the deal is it. But, using a vertical character a cow looks funny walking up a steep hill. Using a horizontal character is supposed to change that… I take it to mean mitigate some.

Treet.TV Pathfinding Show

Navmesh Conformance

When obstacles are placed in the world the Navmesh adjust to them. A tree that is set to a PF Static Obstacle will have its shape cut out of the Navmesh. There is a simplification algorithm that simplifies the shape cut out. But, the bigger the tree the more accurate the shape cut.

Batch Processing

The Lindens built in a Batching System for editing PF attributes. They anticipated that people were not going to want to change every item in a region filled with 15,000 prims. So, it is possible to set PF attributes in batches.

Pathfinding Caps

All of the PF processes have caps to prevent slowing scripts or regions. PF performance will degrade before other functions and services degrade. Even within PF functions there are caps to keep PF functions from completely stalling.

Many of these caps depend on the average time of a process over several frames. A process will be skipped until the average per frame time comes back within a limit. Currently even more work is being done on this aspect of PF.

In the Linden Wilderness Experience they ran into the Pile of Spiders problem. They had a PF Character spider and a bunch of them in the region. When the spiders started to bump into each other they began to lag the PF functions and services. As more spiders collided with the pile, they too piled up and caused even more collisions and loads on the physics calculations driving the PF caps to drop more cycles. It made a messy pile of spiders.

Various steps have apparently been taken to reduce those types of problems. Also, ways to limit the pile up problems by detecting them and then having the PF Characters die and derez have been figured out.

Performance

The Lindens have run 250 PF Characters in reasonably complex areas without lagging the region, I suppose meaning PFPS stayed in the 43-45 FPS range and the regions had free script time.

So far the most PF Characters the Lindens have seen in a resident region is about 200.

The theoretical limit in a region is 1,000 PF Characters. This limit is based on the minimum Land Impact cost of the PF Character’s 15 LI.

The Lindens think the reasonable number of PF Character is 50. That will give excellent PF performance and have little if any affect on a region.

The Future

Within a month or so advanced creator experience tools for tuning PF characters will be out.

More information will be added to the Wiki. The Wilderness Experience scripts will be made available in the Wiki. They don’t have an ETA on those.

Animation improvement is the next thing the Pathfinding Team would like to work on. That decision has not been made yet. So, I am taking it they are not sure what is next. For the immediate future it is going to be finding and fixing bugs and problems… like the annoying Rebake Region button.

They plan to give Pathfinding some time to see how people use the feature. Find out what people are most interested in and how things are working for them. Once they have that information they will decide what next step has the most priority.

One possibility is adding Volumetric Pathfinding. That would allow Pathfinding to be used for flying and swimming critter. They expect to get a sense of how much demand there is for Volumetric Pathfinding over the next couple of months.

If they go with Volumetric it will be with a number of caveats. It isn’t as hard as one might think, but there are some problems that will be too hard to solve. I suspect boats will be a significant problem, but I could be wrong. To implement the feature with the caveats will take a couple of months.

Future Uses

The Lindens expect to see more pets, NPC’s in RP, and chase vehicles being created. I think most of us expect those. However, an odd idea, at least odd to me, is the use of static pathing (LlGetStaticPath) by merchants to direct people to merchandise. The teleport directories we see in many stores may get replaced by NPC that will guide you to the correct section of the store or light up a pathway or in other waus move your avatar to the correct location.

Obviously there is a use for weapons. One could make a heat seeking missile.

There are a number of ecological models in SL. The butterflies, bees, birds, and other creatures could be modeled with the new PF functions. They would be much more efficient and allow regions to do more.

 Griefing

Has it occurred to you that making a pursuing creature would be a good way to annoy someone? Well, it will occur to griefers. But, Pathfinding was designed with that in mind.

To stop a pursuing PF characteryou can fly or teleports out of region. Also, jump over a fence. Parcels set to No Object Entry also stops PF characters.

There is no command to tell a PF Character to stop as that would make games impossible.

After the Video

Lorca Linden took a few minutes to answer audience questions. During that time he provided some information on performance. There are loads of misinformation out there. So, the Lindens went into the logs and dug out the pre-Pathfinding roll out performance and the post-roll out performance to compare them. The data follows:

 [15:42] Lorca Linden: here is what we found :

PRIVATE ISLANDS

Before pathfinding, Saturday, June 23, 2012: 44.43 average sim_fps
After pathfinding, Saturday, September 22, 2012:
Dynamic pathfinding NOT enabled: 44.41 average sim_fps
Dynamic pathfinding enabled, NO pathfinding objects: 44.29 average sim_fps
Dynamic pathfinding enabled, at least 1 pathfinding object: 44.25 average sim_fps
Dynamic pathfinding enabled, at least 10 pathfinding objects: 44.70 average sim_fps

MAINLAND

Before pathfinding, Saturday, June 23, 2012: 44.66 average sim_fps
After pathfinding, Saturday, September 22, 2012:
Dynamic pathfinding NOT enabled: 44.46 average sim_fps
Dynamic pathfinding enabled, NO pathfinding objects: 44.44 average sim_fps
Dynamic pathfinding enabled, at least 1 pathfinding object: 44.25 average sim_fps
Dynamic pathfinding enabled, at least 10 pathfinding objects: 44.79 average sim_fps

[15:42] Lorca Linden: So, in short, while there are certainly cases in which it’s possible for PF to have some performance impact the data is showing that in the great majority of cases PF is not causing performance harm, since the grid-wide averages are within 1% pre and post PF

[15:44] Sandry Logan: I’d vouch for that Lorca. As you know we’ve been using it on various of our sims with the dogs for months and I don’t see any noticeable impact on performance.

Pathfinding References

 

One thought on “Treet TV’s Pathfinding Episode

  1. Wow! I completely missed this at the time. If only I’d known, I’d have invited you over to the Isle of Dogs to meet the animals.

    Just for info: Isle of Dogs is the VKC private workshop, it’s not usually publicly accessible. But, you can meet the dogs, puppies and cats too at our dog parks at Turing Isle.

Leave a Reply

Your email address will not be published. Required fields are marked *