This was an interesting meeting. I met Horatio, a tiny polar bear AI character. I think Horatio is an excellent example of what Pathfinding can do. He/she is an awesome little polar bear.
Horatio will obey commands like ‘come’ and ‘sit.’ Plus Horatio is soooo cute. This is one of Motor Loon’s creations if I understood correctly.
Lorca Linden says they have had a few bugs in the ADITI Pathfinding packages during week 23.
Show & Tell
A bit of a show and tell was done. Horatio and a Rottweiler, named Killer, were shown. The Rottweiler version was using an older LSL AI type script. Horatio was using AI based in Pathfinding. Horatio is quick. Fun demo.
The current version available today is: Second_Life_3-3-2-259040_ProjectViewer-Pathfinding. A link is in the left column here.
Lorca is looking for people that have played with the viewer to give feedback. One of Falcon’s questions is whether the viewer has a good work flow for retrofitting existing regions. While Lorca won’t give dates, the release of Pathfinding is getting close. So, get your feedback in or live with what you get.
Sandry Logan has found the workflow reasonably workable. Still updating a region was described as a grind, which is understandable. But, the Lindens are working to make it as painless as possible.
Stinson Linden has built most of the Pathfinding interface in the viewer.
In response to a question on aerial Pathfinding Falcon Linden said, “Someday it might be possible to provide aerial Pathfinding, but issues like banking (should characters bank? how?), dynamic updating of the nav volumes, and takeoff/landing make it hard.”
Build Panel Changes
Rex Cronon thinks … the build window should have a new tab with all the properties regarding pathfinding.
Falcon answered, “That’s harder than you’d think. Instead, we’ll provide a right-click option to open selected in linksets/characters floater as appropriate.” I suspect that the Build Panel is already too overloaded and the Lindens are unlikely to add another tab to the panel.
I do think there should be a button or some other hint of how to get to the Character and other Pathfinding settings in the build panel. It seems like a logical path. I know I would expect that and I suspect other people in SL would make the same assumption. Object editing is in the Build Panel (Ctrl-B) and one does not have to use the top menu to get to it. In fact I seldom use the top menu for anything other than the stop animations and landmarks.
But, I understand that a crowded Build Panel can be intimidating and people do over look things they don’t understand. So, a button in the confusion may not help that much.
Falcon exemplifies the problems well saying, “We also think that in German you shouldn’t have to wait for the names of the tabs to scroll by and that the build panel shouldn’t take up the entire viewport. But we can’t have everything we’d like, just like you’re not gettin’ rainbows or ponies.”
TriJin Bade reports Pathfinding performance is good in regions TriJin manages. I think we still have a goodly amount of debug code in the Pathfinding code.
llGetStaticPath() is a new LSL function coming to Pathfinding in the next release, which we should see in week 24. This function will use Havok to return a list of waypoints between ‘start’ and ‘end’ through which a character of effective radius ‘x’ can pass.
This is a feature a number of creators have been asking for. It is great that the Lindens are providing it. I think I’ve hear the phrasing, ‘Don’t Hold Your Breath’ applied to requests for the feature. So, this is a nice surprise.
Falcon says, “llGetStaticPath will NOT take into account any object not marked as static. I envision three main uses for llGetStaticPath.
- In attachments in a fully Pathfinding region (where everything important has been marked walkable/obstacle)
- As a fallback method for Pathfinding objects in Pathfinding-disabled regions. (yes, it will work in pathfinding-disabled regions)
- For use with llSetKeyframedMotion() to determine waypoints
Mæstro Linden says, “I guess it would be correct to say that the list of points should roughly match what the viewer’s “Test Path” shows.” Falcon agreed.
Some of the restrictions are: Your start and end points must be within a character radius of the Navmesh. That brings up a bunch of questions about the PF Disabled regions… Falcon explains, “llGetClosestNavPoint(start, [GCNP_RADIUS, radius]) must return a hit. So if your radius is small, you should use llGetClosestPoint first with a bigger search radius to find a better start/end.”
The last element in the returned list of points will either be: 0 if the path is good or it will match a PU_FAILURE_… constant (in which case the list will be size 1).
For now there is no cap on the list size, other than memory available. If that proves to be a problem they will add a cap.
Any1 Gynoid is providing training in-world for those wanting to learn how to script Pathfinding.
The Lindens are making a list of the regions in the Pathfinding Beta. Any1 will soon have it available for students, provided the Lindens get Any1 a copy, which they are planning to do.
Mæstro Linden points out the snack sandbox regions in the main channel are PF enabled.
Lorca announced they also plan to move more of the public sandboxes onto the PF channel next week on AGNI. Premium sandboxes are running the PF enabled code.
Expect to see some Premium Member Pathfinding pets or other critters offered soon.
Joining the Pathfinding Beta
Next week will likely see the last set of additions to the Pathfinding Beta. So, if you want to get in on this email firstname.lastname@example.org to have your region added.