Pathfinding in Second Life/2012-05-17

From Second Life Wiki
Jump to navigation Jump to search

Transcript for Thursday May 17, 2012

[16:02] Lorca Linden hello all
[16:02] Motor Loon lol lorca
[16:02] TheBlack Box heya
[16:02] Lorca Linden I rather like my stalker wall, not gonna lie ;)
[16:02] Motor Loon stalker
[16:02] Yuzuru (yuzuru.jewell) Hello Lorca.
[16:02] Moundsa Mayo /me waves at Lorca!
[16:02] Will Webb omg, a mole; dont see those often
[16:02] SMILE (sigma.avro) Hello lorca
[16:02] Rex Cronon heello lorca
[16:02] Motor Loon You need to get out more Will °͜°
[16:02] Hyper (hyper.mole) /me waves
[16:02] Lorca Linden hyper is our ambassador of pathfinding
[16:03] Dahlia Trimble I tried to set up a ramp as a walkable and it geve me some vague error message and wouldnt let me add it to the navmesh
[16:03] Lorca Linden you can ask her to help you with builds / retrofitting existing content to work with pathfinding
[16:03] Lorca Linden she's an expert
[16:03] Dahlia Trimble cant remember the exact error
[16:03] Dahlia Trimble but it was very vague
[16:03] Falcon Linden Yup. That's better.
[16:03] Motor Loon haha falcon
[16:03] Motor Loon +1
[16:03] Lorca Linden ok, well let's get this show on the road
[16:04] Falcon Linden You're not going on any road, Lorca, you're stuck behind bars.
[16:04] Lorca Linden have any of you had the chance to play around with the height values for characters?
[16:04] SMILE (sigma.avro) /me looking for a path
[16:04] Dahlia Trimble couldnt get that far
[16:04] Falcon Linden What kind of vague error message?
[16:04] Sandry Logan sadly not enough to offer any useful comment
[16:04] TheBlack Box height as in flying ? or height as in capsule-length ?
[16:05] Hyper (hyper.mole) capsule
[16:05] SMILE (sigma.avro) I have been playing in Agni, Lorca
[16:05] Dahlia Trimble cant remember exactly but on the order of "error creating navmesh"
[16:05] Lorca Linden great, what have you discovered?
[16:05] SMILE (sigma.avro) And have many issues there
[16:05] TheBlack Box capsule length works alright for me
[16:05] Falcon Linden Many, sigma?
[16:05] Dahlia Trimble no usable information :/
[16:05] SMILE (sigma.avro) Really toomany for residents
[16:05] Falcon Linden dahlia: usable to you or to me :P
[16:05] Motor Loon /me feeds Horatio poison
[16:05] Falcon Linden TheBlack Box: the capsule length right now is a function of the object's AABB when you create the character
[16:05] Falcon Linden so it varies
[16:05] SMILE (sigma.avro) This is wierd PATHBUG-129
[16:05] Jira Helper [#PATHBUG-129] Vehicles, pathfinding, crossing regions in Agni: Computer out of control or other severe issues in Agni pathfinding enabled regions (Stopover issue)
[16:05] Falcon Linden there is no current size
[16:05] Dahlia Trimble well I guess if you could grep the server code it might be usable to you
[16:06] Horatio whispers: Greeting Will .
[16:06] Falcon Linden sigma: It sounds kind of unlikely that the viewer would crash your machine on agni but not aditi, but hey, who knows?
[16:06] Dahlia Trimble I can show you in agni later
[16:06] SMILE (sigma.avro) It is so Falcon
[16:06] Falcon Linden Dahlia: As an engineer, grepping the server code is fairly easy for me ;)
[16:06] Areal Loonie i may not understand the height value thing.. but.. wouldnt a lower value be better.. becase you could always use an invisivle prim to stop taller characters
[16:06] Falcon Linden err, as a Linden engineer
[16:06] SMILE (sigma.avro) There are other issues on sit that cnhage rotations
[16:07] SMILE (sigma.avro) I mst say I have not optimized as recomended
[16:07] Falcon Linden Areal: well, yes, you could do that
[16:07] Falcon Linden I think...
[16:07] Falcon Linden No
[16:07] Areal Loonie but cant do the other way around
[16:08] Falcon Linden it would mess with things like evasion, which uses the height of the capsule, and other physics interactions (raycasts, bullets, etc)
[16:08] Areal Loonie aah.. yes.. nm
[16:08] Falcon Linden It sounds like the answer is going to be "max avatar physics height"
[16:08] Falcon Linden which will mean your pets never go under the table/bed
[16:08] SMILE (sigma.avro) lol
[16:08] Falcon Linden but c'est la vie.
[16:09] Vincent Nacon yeah, sorry you couldn't get better idea, Falcon
[16:09] TheBlack Box CHARACTER_ORIENTATION VERTICAL together with CHARACTER_RADIUS and CHARACTER_LENGTH works fine as far as i can tell ...
[16:09] Vincent Nacon but... like I said.... told ya
[16:09] Vincent Nacon :P
[16:09] Lorca Linden were you able to test out different character heights, smile?
[16:09] SMILE (sigma.avro) me, I have not Lorca
[16:09] Falcon Linden TheBlack Box: Read PATHBUG-95
[16:09] Jira Helper [#PATHBUG-95] Suggested Character Height
[16:10] SMILE (sigma.avro) Yes, I have, from Aditi to Agni
[16:10] Falcon Linden Vincent: it's fine. See, we asked y'all residents for feedback, you didn't give it, we're going to pick a number, and y'all ain't gonna have no right to complain post-release!
[16:10] TheBlack Box ah i see
[16:10] Lorca Linden we can't change this after release
[16:10] Vincent Nacon but but... I did
[16:10] Vincent Nacon :P
[16:11] Motor Loon /me hands Vince a hankie
[16:11] Vincent Nacon don't make me smack you!
[16:11] Falcon Linden Nalates, you around?
[16:11] Vincent Nacon what about the walking type?
[16:11] Vincent Nacon 96?
[16:11] SMILE (sigma.avro) Lorca, I am displeased to ,ask this, but can I ask to revert back my sims to a non pathfinding in Agni ?
[16:12] Lorca Linden sure, just send me an email with the region name
[16:12] SMILE (sigma.avro) thanks a lot Lorca
[16:12] Lorca Linden np
[16:12] Vincent Nacon PATHBUG-96 ?
[16:12] Jira Helper [#PATHBUG-96] Suggested Character Types
[16:13] SMILE (sigma.avro) my residents are not willing to use development viewer, that is the main reason
[16:13] Falcon Linden Sigma: hold off on that, actually, if you don't mind
[16:13] Falcon Linden I want to let our viewer QA staff investigate the issue before we revert the region
[16:13] SMILE (sigma.avro) ok , Thanks Falcon
[16:13] any1 Gynoid <-- wonders what CHARACTER_RADIUS is by default, ru measuring our character linksets?
[16:14] Lorca Linden we got some good feedback on pathbug-96, though honestly the default character hieght question is more pressing
[16:14] SMILE (sigma.avro) If issue is solved, I would not revert
[16:14] Falcon Linden any1: yes, we are
[16:14] Falcon Linden lorca: methinks we're not going to get any good feedback on PATHBUG-95 :P
[16:14] Jira Helper [#PATHBUG-95] Suggested Character Height
[16:14] Lorca Linden you may be right falcon, in which case we'll just make our best guess
[16:15] Hyper (hyper.mole) waht are you leaning towards Falcon?
[16:15] Motor Loon I'd suggest 42... but probably won't be better than your random numbers
[16:15] Vincent Nacon told ya so many times! no one listens to me anymore :(
[16:15] Moundsa Mayo I'm STILL not clear on what the downside is to making it much lower than the Avatart Physics height. So pets, miniature vehicles, and eventually microAvatars CAN navigate under tables and such.
[16:15] Object Hello, Avatar!
[16:15] Hyper (hyper.mole) I"d make it small, by default
[16:16] Falcon Linden Moundsa: bad physics interactions
[16:16] SMILE (sigma.avro) what about dragoons
[16:16] SMILE (sigma.avro) big ones
[16:16] any1 Gynoid if you can measure radius, why not measure height?
[16:16] Moundsa Mayo Oy, always the trade3offs ! B^D
[16:16] Areal Loonie i am for shorter
[16:16] Hyper (hyper.mole) at what height do those bad interaction stop?
[16:16] Falcon Linden any1: it's not about that. Long, complicated, read the jira :)
[16:16] Falcon Linden hyper: when the height of the capsule matches the height of the visible representation
[16:16] Vincent Nacon can't character be phantom and go through stuff?
[16:16] Falcon Linden vincent: no
[16:16] Vincent Nacon lame
[16:17] Motor Loon lol
[16:17] Vincent Nacon no support for ghosts then
[16:17] Falcon Linden it wouldn't work for a number of reasons. We thought about it and threw it out
[16:17] Falcon Linden sorry
[16:17] Will Webb there's a function to get av height, not sure why its result cant be used for this too; jira's loading up on my now
[16:17] Lorca Linden so if any of you want to experiment with height numbers and make suggestions, it neds to be very soon
[16:17] Motor Loon make your walls phantom
[16:17] Lorca Linden we've got to make a call on this question shortly
[16:17] Jonathan Yap When I mouse hover over a character my pointer changes to a hand but I cannot "grab" and move the character--is that expected or a bug?
[16:17] Falcon Linden Will: because it's not that we can't detect the height. We do that now.
[16:17] Hyper (hyper.mole) I'll play with it more this week Lorca
[16:17] Falcon Linden The problem is that there will only ever be one "optimal" height in terms of getting the best paths on the navmesh
[16:17] Lorca Linden awesome, thanks hyper. You rock, as usual ;)
[16:18] Falcon Linden because of the algorithm used to build the mesh
[16:18] SMILE (sigma.avro) Yes, that height stuf was asked a coples of week ago yet. We shold urge
[16:18] Falcon Linden Jonathan: expected
[16:18] Falcon Linden Well...actually, it probably shouldn't turn into a hand
[16:18] Falcon Linden oh, nvm, it always does that
[16:18] Will Webb ah, read the jira too now; we need to decide the best "average"
[16:18] Falcon Linden in that case: expected
[16:18] Areal Loonie how will the poor mice find the cheese?
[16:18] Moundsa Mayo Trading granularity for computational efficiency?
[16:18] Falcon Linden moundsa: essentially, yes
[16:19] Falcon Linden if you supported, say, 5 different heights, you'd need 5 different navmeshes which means 5x the generation cost and 5x the per-frame cost
[16:19] Lorca Linden any other questions about the default height?
[16:19] Falcon Linden We considered ways to add proper height support but determined they would take several months to implement
[16:19] Moundsa Mayo Phase II
[16:20] Falcon Linden In the Glorious Future, yes.
[16:20] SMILE (sigma.avro) Yes, but any idea when pathfinding would be on agni ?
[16:20] Falcon Linden it is on agni ;)
[16:20] Will Webb what channel is it on?
[16:20] Lorca Linden 100 regions in fact ;)
[16:20] Falcon Linden Second Life RC PF
[16:20] SMILE (sigma.avro) Oh, ok, myne is one. But was asking as a RC
[16:20] Will Webb oh, right, the pathfinding sims that got spammed a few weeks ago
[16:20] TheBlack Box
[16:21] Falcon Linden spammed?
[16:21] Lorca Linden smile, we want to make sure we get appropriate baking time in beta for pathfinding before releasing to the whole grid. If anyone you know of is interested in having their sim be a part of pathfinding, tell them to email
[16:21] Will Webb will it go to another RC first (like bluesteel) or directly to deploy once testing is complete on RC PF?
[16:21] Lorca Linden we still have some more slots
[16:21] Lorca Linden we will do an RC
[16:21] Will Webb yeah, there was an ojbect and texture spammer hogging the sims when i tried testing them
[16:22] Falcon Linden will: it will go to an RC once we are highly confident in its stability and all prerequisite server maintainence work is completed
[16:22] Falcon Linden i.e., necessary back-end infrastructure
[16:22] Will Webb kk
[16:22] Falcon Linden will: ah
[16:22] SMILE (sigma.avro) OK. That is a big work seems to me
[16:22] Lorca Linden well I'm not ready to give out dates but we aren't too far off from RC ;)
[16:23] Will Webb well, mainstream RCs are used for many sims, cant risk destabilizing them
[16:23] Vincent Nacon just date it already
[16:23] Falcon Linden RC can be expected AT LEAST within the next 4-8 years.
[16:23] Falcon Linden :)
[16:23] Will Webb ballpark?
[16:23] Vincent Nacon no ballpark, just date it
[16:23] Hyper (hyper.mole) haha
[16:23] Will Webb expected ETA at current dev pace?
[16:23] Falcon Linden less than 4-8 years.
[16:23] SMILE (sigma.avro) rteally Falcon ? lol
[16:23] Lorca Linden and as I mentioned, anyone who is interested can take part in pathfinding so long as they own a region
[16:23] Hyper (hyper.mole) around 4 - 8 years
[16:23] Will Webb i remember that estimate on havok 2 as well :-p
[16:23] Dahlia Trimble only 4-8? wow LL‚Ñ¢ is really improving :)
[16:23] Vincent Nacon get a dart, get a calenteder and pick a day
[16:23] Falcon Linden lorca: We should consider moving some mainland regions onto pathfinding again now that much of the performance issues have been resolved
[16:24] Moundsa Mayo Are those Martian years?
[16:24] Moundsa Mayo B^D
[16:24] Falcon Linden the only issue is mesh crossings
[16:24] Will Webb :-p
[16:24] Lorca Linden falcon, we have a few on right now, but I agree we need more
[16:24] Hyper (hyper.mole) mesh crossings?
[16:24] Lorca Linden to do adeqate testing prior to RC
[16:24] SMILE (sigma.avro) Well, I am admirative of how plans are prepared long before
[16:24] Falcon Linden meshes (other than attachments) cannot cross from a PF region to a non-PF region
[16:24] Vincent Nacon mesh acrossing as in Sim acrossing or the physic bump crossing?
[16:24] Hyper (hyper.mole) I have a long list of mainland sims that could be put on pathfiding!
[16:24] Lorca Linden so, moving on to another topic,
[16:24] Vincent Nacon nm
[16:24] Lorca Linden some of you may have seen the post on
[16:25] Falcon Linden so vehicles will get stopped at the border if moving from PF->main channel, but not vice versa
[16:25] TheBlack Box one stabiity issue i came across with pathfinding was with creatures and collisions ... when i spawn a lot of creatures and shoot them ... often the sim gets knocked out ... not sure what the cause is
[16:25] Vincent Nacon yeah saw it, don't like it
[16:25] Lorca Linden there are several misconceptions there about the way pathfinding works
[16:25] any1 Gynoid great publicity imho
[16:25] SMILE (sigma.avro) Have not read this yet Lorca. Looks interesting
[16:25] Falcon Linden theblack box: still running debug which slows collisions
[16:25] Lorca Linden we are probably going to have an official response
[16:25] TheBlack Box ah i see
[16:25] Lorca Linden falcon, you want to give the overview to this group?
[16:26] SMILE (sigma.avro) Falcon: my veghicles get blocked at PF to PF sim border crossing !
[16:26] SMILE (sigma.avro) PATHBUG-129
[16:26] Jira Helper [#PATHBUG-129] Vehicles, pathfinding, crossing regions in Agni: Computer out of control or other severe issues in Agni pathfinding enabled regions (Stopover issue)
[16:26] SMILE (sigma.avro) Sorry for repeating
[16:26] Falcon Linden sigma: different issue
[16:26] Falcon Linden Sorry, I was reading PATHBUG-96
[16:26] Jira Helper [#PATHBUG-96] Suggested Character Types
[16:26] Will Webb i need me a copy of that tool :-)
[16:27] Falcon Linden yes, about that article
[16:27] Falcon Linden Let's see:
[16:27] SMILE (sigma.avro) ok
[16:27] Falcon Linden First, the true parts
[16:27] Will Webb are we talking about 96 or 129 now?
[16:27] Falcon Linden 1) Doors will need to be made differently IF you want them characters to cross the doorways
[16:27] Lorca Linden we are talking about
[16:27] Will Webb check
[16:28] SMILE (sigma.avro) I see no technical question in this article. Just blabla
[16:28] Falcon Linden what that means is that your house (which will be walkable) will need to rez out its door as a separate keyframed object
[16:28] Falcon Linden since you can't move prims around on a walkable object. You'll need to rely on the dynamic navmesh cutting to handle doors.
[16:29] Falcon Linden Now, for other bits of the article
[16:29] any1 Gynoid <-- disagrees with Hamlet and Nalates that there are "drama" issues with PF... they speculating on untested hypotheses
[16:29] Dahlia Trimble what about phantom doors?
[16:29] Falcon Linden dahlia: if a door doesn't block your path, how is it a door?
[16:30] TheBlack Box this is SL ... there is always drama ... no matter what
[16:30] Hyper (hyper.mole) Very little drama actually, I've dealt with fully populated (with objects) regions turned onto pathfinding
[16:30] Dahlia Trimble it looks like one :)
[16:30] Will Webb there are drama issues with all updates; didnt we learn that in the meeting with oskar ? :-)
[16:30] Hyper (hyper.mole) it's pretty straight forward
[16:30] Falcon Linden 1) The very long and slow part (usually only tens of seconds, really, but sometimes a few minutes) is is navmesh generation
[16:30] Motor Loon a bit like Lorca's cell bars haha
[16:30] SMILE (sigma.avro) mmh, I must restate
[16:30] Moundsa Mayo And drama when there are NO updates ...
[16:30] Will Webb damned if you do...
[16:30] Falcon Linden However, that only has to happen when you modify objects that are pathfinding enabled, which you won't do very often after you initially set things up
[16:30] Lorca Linden lol motor
[16:31] Falcon Linden 2) Movable objects do NOT cause the navmesh to be regenerated
[16:31] any1 Gynoid exactly
[16:31] Vincent Nacon and that goes the same for SetFramedMotion object?
[16:31] Falcon Linden The problem with movable objects is that each one does incur some cost each frame in order to cut its silhouette out of the navmesh
[16:31] Falcon Linden vincent: yes
[16:31] Vincent Nacon k
[16:31] Falcon Linden actually, it only applies to moderate-to-low velocity movable objects
[16:32] Vincent Nacon ah, how low?
[16:32] Falcon Linden if an object is moving quickly it incurs minimal cost as avoidance is handled by an entirely different system
[16:32] Falcon Linden let me check
[16:32] Dahlia Trimble does the navmesh display in the viewer show effects from movable objects?
[16:32] Falcon Linden (that's a very good question)
[16:32] Dahlia Trimble or can it?
[16:32] Falcon Linden dahlia: no
[16:32] Falcon Linden it can't :(
[16:32] Dahlia Trimble :(
[16:32] Falcon Linden not until we have client side prediction/physics
[16:32] Falcon Linden in the Glorious Future
[16:32] any1 Gynoid my measurements indicate that Characters.. even animated ones.. only incure 1/5th millisecond Physics TIme each... very lightweight lagwise
[16:32] Dahlia Trimble 40/80 years from now?
[16:33] Falcon Linden hmm, I'll need to get back to you for the velocity
[16:34] Vincent Nacon k
[16:34] Lorca Linden in the vast majority of cases, pathfinding characters are significantly more performant than objects created using LSL scripting logic. Not to mention the pathfinding characters more much more naturally and intelligently.
[16:34] Vincent Nacon 1mps should be good i think
[16:34] Falcon Linden 3m/s
[16:34] Falcon Linden if the object is going 3m/s or faster, it will not incur the penalty
[16:34] Vincent Nacon ahh close enough
[16:34] Nal (nalates.urriah) This different system that handles movable objects, where is it running, what computer?
[16:34] SMILE (sigma.avro) Well, it is because we are not inteligent scripters :)
[16:35] SMILE (sigma.avro) kiding
[16:35] Motor Loon remember those breedable chickens who, when stuck, could bring a region to its knees? °͜°
[16:35] Falcon Linden Nal: it's running on the same machine and in the same thread as the main step
[16:35] Falcon Linden also, characters and avatars are never treated as "navmesh cutters"
[16:35] Falcon Linden so they will never incur the cost
[16:35] Falcon Linden Motor: yes. Yes, I do
[16:35] any1 Gynoid Motor has a great point.... PF can be used for griefing....
[16:35] Falcon Linden However, we have taken significant steps to reduce the cutting costs
[16:35] Motor Loon I still have nightmares about those chickens... °͜°
[16:36] Falcon Linden Here's how it works:
[16:36] Vincent Nacon get over it, fight your fear with some KFC
[16:36] SMILE (sigma.avro) What is the maximal distance for PF ?
[16:36] Motor Loon Oh I do... I do
[16:36] Falcon Linden Full regions are permitted to spend up to 4ms of their frame time, on average, cutting the navmesh
[16:36] Falcon Linden Homesteads get 1ms
[16:36] Vincent Nacon ahhh
[16:36] Falcon Linden if cutting takes >4ms on one frame, some frames are skipped in order to keep the average down
[16:37] SMILE (sigma.avro) That is about 80 characters ?
[16:37] Falcon Linden so you may see some spikiness, but the average frame time spent in cutting will be under 4ms
[16:37] Falcon Linden sigma: it's not about the number of characters (which are throttled independently)
[16:37] Vincent Nacon might be ok
[16:37] Lorca Linden depends smile, on the terrain / walkables and what the characters are doing
[16:37] Falcon Linden it's about the number of slow-moving or non-moving "movable obstacles"
[16:37] SMILE (sigma.avro) oh, ok
[16:37] Dahlia Trimble "cutting"?
[16:37] Falcon Linden Again, characters and avatars NEVER cut the navmesh so they never contribute
[16:37] Lorca Linden we were able to get over 200 characters in wilderness regions while staying at 45fps server side
[16:37] Falcon Linden "cutting" is the process of removing the object's silhouette from the walkable surface
[16:38] Hyper (hyper.mole) a great deal depends on what the characters are moving on, and what they have to navigate around
[16:38] Falcon Linden dahlia: cutting is done as a way to dynamically uipdate the navmesh to account for newly placed or moved objects without regenerating the whole thing
[16:38] any1 Gynoid I confirm that Lorca... 200 characters are my standard stress test
[16:38] Falcon Linden In any case, the point is that massive performance issues should not occur
[16:39] Moundsa Mayo Falcon, is that silhouette on the normal to the navmesh at that centroid or vertical wrt the global coordinate system?
[16:39] Hyper (hyper.mole) any1 - and that was on a fully loaded regoin, full of non-pathfinding friendly objects. :)
[16:39] Falcon Linden A tradeoff will happen instead, with paths being less accurate on sims that have too many movable obstacles
[16:39] Dahlia Trimble so like changing heuristic properties for a navmesh polygon where the pf object occupies?
[16:39] Falcon Linden moundsa: the latter (world Z)
[16:39] Moundsa Mayo And it's a projection of the character capsule?
[16:39] Falcon Linden dahlia: yes. The polygon is actually subdivided and the shadowed areas removed
[16:40] Dahlia Trimble interesting
[16:40] Falcon Linden moundsa: no, it's a projection of the movable object which is cutting it. And characters never cut the navmesh.
[16:40] Moundsa Mayo Ah. Thanks
[16:40] Falcon Linden We're hoping to get more of this documented with pictures at some point before release
[16:40] Falcon Linden promises :)
[16:40] Lorca Linden we are certainly going to flesh out the existing documentation before launch
[16:41] Nal (nalates.urriah) So, if I understood that, a 10k prim region that comes on PF will have a load of movable objects. But, rather then the region slowing down, the accuracy of PF's degrades?
[16:41] Lorca Linden i very much believe in the importance of providing best practice guidlines to the residents for a feature like pathfinding
[16:41] Moundsa Mayo Before lunch? KEWL!!
[16:41] SMILE (sigma.avro) Is there already a viewer where terrain can be modified for PF , as non wakable as so on?
[16:41] Motor Loon hehe
[16:41] Falcon Linden Nal: that's correct
[16:41] Falcon Linden If the region was already performing poorly, it may slow down further (i.e., if it didn't have 4ms of spare time on a full region or 1 on a homestead)
[16:41] Stinson Linden sigma, terrain can only be Walkable currently.
[16:42] SMILE (sigma.avro) ok
[16:42] Will Webb sideq for attendees: how do you define moving and static objects and change them? (i'm not entirely uptodate)
[16:42] Falcon Linden technically, you could set its walkability to 0 for all 4 character types, but that wouldn't affect CHARACTER_TYPE_NONE characters...
[16:42] Stinson Linden Falcon and I did discuss what it would mean to make it a static obstacle and allow the residents to only build walkable paths, but that would be for a Phase II release.
[16:42] Vincent Nacon when object is moving more than 3mps
[16:43] Falcon Linden sigma: you asked about the max distance for pathfinding
[16:43] Will Webb so it's actual movement and not a flag somewhere?
[16:43] Lorca Linden I want to reiterate, though, that over the long and even medium run, pathfinding should improve performance across the grid as people replace clunky and non performant scripted moving objects with characters that use the pathfinding calls
[16:43] SMILE (sigma.avro) yes Falcon
[16:43] SMILE (sigma.avro) is it distance or meshes ?
[16:44] Dahlia Trimble does a movable object with non-zero velocity "cut" the navmesh?
[16:44] Falcon Linden although it's not been tested, it should be possible to navigate between any two points in SL subject to the condition that there exist a path between them traversible by the character and that that path moves from region to region in such a way that each region makes some progress toward the goal
[16:44] Falcon Linden dahlia: yes
[16:44] Falcon Linden dahlia: and those are the worst offenders
[16:44] Falcon Linden dahlia: because there's no reason they /need/ to cut the navmesh
[16:44] Vincent Nacon if I understand this correctly... if it moved within 3mps from distance in time, I'd say it fall under that
[16:44] Falcon Linden vincent: "3mps from distance in time"?
[16:45] Dahlia Trimble it would seem it woudlnt need to unless pa PF object is actve nearby
[16:45] Moundsa Mayo So when a movable object cuts the navmesh its bounding box is added to (projected onto and intersected with) the navmesh?
[16:45] SMILE (sigma.avro) ok. But with viewer now, it seems that there is a limit distance, that is rather limited
[16:45] Falcon Linden moundsa: we actually use an oriented bounding box for each prim
[16:45] Dahlia Trimble *a PF object
[16:45] Vincent Nacon like if I move object with set position and put it back under 3mps, it doesn't "cut"
[16:45] SMILE (sigma.avro) kinda 100 meter
[16:45] Falcon Linden sigma: you can't test a path on the viewer that requires viewing more than 2 region
[16:45] SMILE (sigma.avro) I will Falcon
[16:45] Falcon Linden vincent: if you move an object with set position, I've stopped caring about you or your region
[16:45] Nal (nalates.urriah) When a region with lots of prims converts to pathfinding do all of the prims act as movable? Or only those that touch the ground and intersect the PF area?
[16:46] Falcon Linden don't use set position for movement :)
[16:46] Will Webb :-p
[16:46] SMILE (sigma.avro) on a single region
[16:46] Vincent Nacon muhaha!
[16:46] Moundsa Mayo Ah, better detail, and more important now with 64m prims.
[16:46] Falcon Linden llSetPosition actually prevents us from using the velocity threshold
[16:46] Lorca Linden and we expect, given the data we've seen so far plus the failsafes we are building into the system, that pathfinding will not have a negative impact performance wise on the majority of regions. A minority of regions (esp on the mainland) may have some performance issues at launch.
[16:46] Will Webb llsetpos is the default for quite some movement still
[16:46] Falcon Linden I've tried to make some changes so that llSetPos, if used too frequently, prevents the object from EVER cutting the navmesh or being avoided by characters.
[16:46] Will Webb that and llsetregionpos now
[16:46] Falcon Linden Translation: don't use llSetPos to move your objects except as a one-time movement
[16:47] Falcon Linden i.e., it's fine as a teleport once in a while but should never be used to simulate continuous or semi-continuous motion
[16:47] Vincent Nacon right... so it doesn't fall under 3mps rule?
[16:47] Lorca Linden and the negative performance impact on a minority of regions at launch will be throttled as falcon described earlier
[16:47] Falcon Linden no, it does not
[16:47] Vincent Nacon lame
[16:47] Will Webb what should be used for movement then?
[16:47] Falcon Linden llSetKeyframedMotion ;)
[16:47] Dahlia Trimble heh there goes non-physical vehicles
[16:47] Will Webb i still use while and llsetpos often
[16:47] Vincent Nacon yeah
[16:47] Will Webb and i always move nonphys
[16:47] Falcon Linden dahlia: non-physical vehicles suck
[16:47] Falcon Linden will: don't.
[16:47] Will Webb it's far more accurate
[16:47] Falcon Linden they're horrible for performance in every way imaginable
[16:48] Vincent Nacon yup
[16:48] Falcon Linden llSetKeyframedMotion is pretty accurate. It has a couple bugs, but generally is quite well behaved
[16:48] Dahlia Trimble but they are fun :D
[16:48] Vincent Nacon I hate it too
[16:48] Will Webb otherwise i have to make an object phys and then nonphys again
[16:48] Will Webb that must cost something too
[16:48] Falcon Linden they're not necessary now that you can use physics shape type none to keep your physics cost below 32 :)
[16:48] Will Webb switching all the time
[16:48] SMILE (sigma.avro) they are good for railroads, lol
[16:48] Falcon Linden will: llSetKeyframedMotion works on nonphysical objects
[16:49] Falcon Linden and keyframed objects are always handled correctly by the pathfinding system :)
[16:49] Dahlia Trimble lots of legacy content out there
[16:49] Vincent Nacon I think I was more annoyed that before the Fast param set, they were using more than 10 scripts per root objects, jamming with FOR or WHILE statement
[16:49] Falcon Linden Yup. We should have nipped llSetPos in the bud, but oh well.
[16:49] Lorca Linden 10 minute warning
[16:49] Falcon Linden vincent: yeah, isn't that awesome?
[16:49] Vincent Nacon no, ban them to hell
[16:50] Falcon Linden heh
[16:50] Will Webb ah, yes, fast param saved us from a lot of overhead
[16:50] Falcon Linden were there any questions I didn't answer?
[16:50] Nal (nalates.urriah) When a region with lots of prims converts to pathfinding do all of the prims act as movable? Or only those that touch the ground and intersect the PF area?
[16:50] Will Webb so did getobjdetails with regards to scanners
[16:50] Hyper (hyper.mole) all
[16:50] Falcon Linden nal: it's a bit complicated. There are different levels optimization involved
[16:50] Areal Loonie I am trying to use PF on an existing mainland build. Twice now, the server side navmesh build process has stopped working and only way ive been able to fix it is to restart the sim... seems to work fine and then when i change something to walkable.. it dies. Any ideas?
[16:51] TheBlack Box are all PF sims currently run in debu-mode ? or is there one where i could test all full performance ?
[16:51] Hyper (hyper.mole) I have run across that problem also Areal
[16:51] Dahlia Trimble a in-world pathfinding group would be nice to have :) </hint>
[16:51] Will Webb but isnt physmovement collision sensitive; when i move nonphys i dont have to worry about other objects blocking my way
[16:51] Nal (nalates.urriah) So.. is not all realistic but incomete a good way to say it?
[16:51] Lorca Linden currently they are all in debug mode (at least on Agni)
[16:51] SMILE (sigma.avro) Is there PF sims pgrades ?
[16:51] Hyper (hyper.mole) We can make a PF group on AGNI, I'm sure
[16:51] Falcon Linden nal: for example, every movable object (i.e., everything, initially) will be checked each frame (assuming we're doing cutting that frame, per the 4ms/frame average rules I discussed above)
[16:51] Lorca Linden I'd be amenable to putting one of the public pathtest regions on a non-debug build for performance testing if that is something you all would find useful
[16:51] Lorca Linden on aditi
[16:51] TheBlack Box i d love that yeah !
[16:52] TheBlack Box that would be very nice
[16:52] Dahlia Trimble tell us which one
[16:52] SMILE (sigma.avro) I would Loprca
[16:52] SMILE (sigma.avro) *Lorca
[16:52] Falcon Linden nal: then those whose AABBs DO NOT intersect the navmesh are eliminated from consideration
[16:52] Falcon Linden Nal: finally, the remaining movable obstacles are checked for whether they've moved since the last cut.
[16:52] Lorca Linden alright, we'll convert pathtest 4
[16:52] any1 Gynoid if you reproduce Paris 1900 (or similar) would be useful.. to stress test
[16:52] Lorca Linden to a non-debug build
[16:52] TheBlack Box thanks a lot
[16:52] Lorca Linden np
[16:53] Falcon Linden nal: it's a bit more complicated than that, but it's generally optimized and accurate
[16:53] Nal (nalates.urriah) Thx Falcon
[16:53] Falcon Linden it does the least work necessary to get it right
[16:53] SMILE (sigma.avro) Lorca, are PF regions on Agni pdated also ?
[16:53] SMILE (sigma.avro) or FAlcon, I dont knwo whom takes care of this
[16:53] Lorca Linden i believe they are running server code about 10 days old
[16:53] Lorca Linden so fairly up to date, but not cutting edge
[16:53] Falcon Linden Will: llSetKeyframedMotion will push other objects out of the way if they are physical, but the moving object itself will never be affected by a collision
[16:54] Falcon Linden Areal: I've added extra debug info to try to track down the problem you mentioned
[16:54] Vincent Nacon oh yeah, did it ever get fixed when an avatar is in the way?
[16:55] Falcon Linden Areal: please file a jira immediately the next time that happens and give the name of the region and time that the problem occurred. Even better, give the vincent: you know, I haven't gotten to look at that one. It's very strange and never made any sense to me
[16:55] Falcon Linden because it usually works fine pushing avatars
[16:55] Vincent Nacon hmm
[16:55] Will Webb good; cause llmovetotarget always ended up bouncing into stuff
[16:55] Will Webb no wonder ppl use llsetpos
[16:55] Areal Loonie it is stuck now.. or was before meetings
[16:55] Vincent Nacon maybe there's a axis direction issue involved with it
[16:55] Falcon Linden yeah, llSetKeyframedMotion is a better, more controllable form of llMoveToTarget
[16:55] Falcon Linden vincent: if you can get a solid repro, it'll be much easier to fix
[16:55] Falcon Linden areal: which region
[16:56] Dahlia Trimble how about objects moving with llApplyImpulse()?
[16:56] Falcon Linden dahlia: those move like normal physical objects.
[16:56] Will Webb and a lot of scripters are still taught that nonphys moving is lighter on the sim that phys moving since the phys engine isnt called in
[16:56] Areal Loonie campello....mainland
[16:56] Falcon Linden will: that is SO wrong
[16:56] Falcon Linden the physics engine is put under very heavy load moving nonphysical objects
[16:56] Falcon Linden it actually has to convert them to keyframed, move them, and convert them back
[16:57] Falcon Linden the conversions are expensive and the movement is expensive
[16:57] Will Webb heh, i feel a "best practices" list coming up :)
[16:57] Dahlia Trimble and non-phys movement generates a ton of network traffic
[16:57] Lorca Linden If you could see the look on falcon's face right now, you would all crack up ;)
[16:57] Falcon Linden areal: thanks, I'll look into it. Don't restart it
[16:57] Lorca Linden 5 minute warning, any other burning questions?
[16:57] Will Webb :-p
[16:57] SMILE (sigma.avro) haha
[16:57] Vincent Nacon burning questions?
[16:57] Will Webb lorca: smartphone and instagram ;)
[16:57] Vincent Nacon oh I got one.... are you gonna hire me so I can rule over SL with iron fists?
[16:58] Falcon Linden You didn't get the offer letter yet? (:P)
[16:58] Will Webb heh, make sure to build a throne like oskar :-)
[16:58] SMILE (sigma.avro) Yes I have qestion:..
[16:58] Lorca Linden ask it quickly!
[16:58] SMILE (sigma.avro) pathfinding algorythm fixed ?
[16:59] Falcon Linden ?
[16:59] Vincent Nacon /me sighs... " no wonder why things don't get done quickly..."
[16:59] Will Webb is there another meeting after this one or are we done for the day? :-)
[16:59] Falcon Linden You mean the issue where it can choose the long way around sometimes?
[16:59] any1 Gynoid imho... what I'm hearing... pathfinding code is 2D .so we need to set default character height so that 2D code can work with reasonable assumptions
[16:59] SMILE (sigma.avro) Well, not finding always the shortest path
[16:59] Moundsa Mayo Things change when you become a cost instead of a revenue source, Vincent.
[16:59] Will Webb oh, pathfinding isnt 3d?
[16:59] Falcon Linden any1: more or less. Call it 2.5D
[16:59] Vincent Nacon it's not really 2D
[16:59] SMILE (sigma.avro) yes GFAlcon
[16:59] Falcon Linden it's locally 2D but globally 3D
[16:59] Vincent Nacon flat surface, but could have ramp
[16:59] Will Webb elaborate plox?
[16:59] Will Webb aha
[16:59] Falcon Linden sigma: that's a fundamental limitation in the algorithm
[16:59] SMILE (sigma.avro) ok
[17:00] Vincent Nacon top sided 3D, if you will
[17:00] SMILE (sigma.avro) ndestrand
[17:00] Will Webb so no using in the air
[17:00] Falcon Linden sigma: but it will only happen in cases where some navmesh edges are much longer than others
[17:00] Lorca Linden will, not for right now
[17:00] Falcon Linden sigma: so it's less likely to happen in a real world build than on a mostly empty, flat region
[17:00] SMILE (sigma.avro) Ah: so in meshes it is the shortest always ?
[17:00] Lorca Linden volumetric pathfinding is something we could add down the road, but it would be a significant amount of additional work
[17:00] Will Webb i think a lot of ppl will expect it being 3d
[17:00] Dahlia Trimble does havok have 3d pathfinding?
[17:00] Falcon Linden there is a possible workaround, but it would make pathfinding generally a bit more expensive, so we want to see if it becomes a real issue in production on agni
[17:01] Will Webb mostly the ones that already reject sl's image of a land&sky based world
[17:01] SMILE (sigma.avro) well, it is not an issue actally, just a whished feature
[17:01] Will Webb true
[17:01] Falcon Linden Dahlia: yes, but it has limitations that we thought made it unsuitable for general application.
[17:01] Lorca Linden if pathfinding turns out to be popular and enough people want volumetric pathfinding, then we could tecnically add it. but it would take the pathfinding team several months ish to impliment that feature.
[17:01] Falcon Linden lorca: that's not true.
[17:02] Falcon Linden :P
[17:02] Will Webb hey, job security ;-)
[17:02] Falcon Linden It would take 1-2 devmonths assuming: (1) no viewer integration
[17:02] Jonathan Yap It will take 4-8 years, get with company policy :P
[17:02] Will Webb :-p
[17:02] Moundsa Mayo Ain't no such thing, Will.
[17:02] Falcon Linden (2) no region crossing
[17:02] Lorca Linden I know aerial dogfights with pathfinding would be awesome
[17:02] Will Webb that's what i'm thinking of
[17:02] Falcon Linden (3) flying characters don't bank and there's no automated way to make them land
[17:02] Falcon Linden basically, they'd move like hot air ballons, blimps, or fish
[17:02] any1 Gynoid <-- agrees with Lorca
[17:03] Will Webb abbotts couldve used it back in the day :)
[17:03] Falcon Linden oh, and I'm not sure how many of the behaviors would work
[17:03] Dahlia Trimble we want battleblimps :D
[17:03] Lorca Linden yeah, i've learned from experience to double all of falcon's time estimates :P
[17:03] Vincent Nacon muhaha!
[17:03] any1 Gynoid dead funny
[17:03] Vincent Nacon put blimps on a flat 100% alpha mega prim in sky
[17:03] Falcon Linden pursuit and navigate-to would work, evasion might, flee might not...
[17:03] Will Webb so pathfinding is ground based, or can the flat pane be defined at any altitude?
[17:03] Falcon Linden lorca: uh huh
[17:03] SMILE (sigma.avro) haha, Falcon forgot the time to prepare the reports, lol
[17:03] Falcon Linden sigma: true
[17:04] Falcon Linden If people left me alone, I could do it in a week ;)
[17:04] any1 Gynoid pursuit, wander.. and patrol are the only REALLY useful behaviors imho
[17:04] Vincent Nacon I kept telling you, ban them and mute them!
[17:04] Will Webb falcon: i've used that line soooo many times already; always true too ;-)
[17:04] Jonathan Yap Lorca, I think you need to give Falcom a week of vacation
[17:04] Falcon Linden patrol would obviously work, it's nothing more than navigate-to, really
[17:04] Lorca Linden being able to go to a point is also quite useful
[17:04] Lorca Linden very flexible within scripts
[17:04] Rex Cronon i everybody
[17:04] Lorca Linden yes time is up
[17:04] Lorca Linden thank you all
[17:04] Falcon Linden same here. I want to go investigate Campello :)
[17:05] Falcon Linden Lorca, you'll grab the log?
[17:05] Lorca Linden next week, same time same place
[17:05] any1 Gynoid hee hee terrific meeting
[17:05] Hyper (hyper.mole) /me waves
[17:05] Moundsa Mayo Falcon, Lorca, Stinson, Hyper, thanks for your time and hard work!
[17:05] TheBlack Box thx and cu
[17:05] SMILE (sigma.avro) yes. Pathfind : NO_REPROT, TRUE
[17:05] SMILE (sigma.avro) *report
[17:05] Falcon Linden :P
[17:05] Lorca Linden I'll post the log on the pathfinding wiki page
[17:05] Falcon Linden kk
[17:05] Will Webb check; cya guys
[17:05] Falcon Linden Cheers!
[17:05] Lorca Linden
[17:05] Lorca Linden by all, thank you for your interest
[17:05] Will Webb back to agni, or do we have another meet to struggle through? :-)
[17:05] SMILE (sigma.avro) THanks Falcon Lorca anbd Stinson
[17:05] Dahlia Trimble ty, bb :)
[17:05] Vincent Nacon take care all
[17:05] Will Webb bye vince
[17:05] Areal Loonie bbye
[17:05] any1 Gynoid CONGRATS TO THE LINDEN PF TEAM... U GUYS ROCK... PF is soooo rock solid stable.. and navimesh rebuilts are instantaneous... awesome progress! Woooot!