Pathfinding in Second Life/2012-05-17

==Attendees List==
*any1 Gynoid (any1.gynoid)
*Areal Loonie (areal.loonie)
*Dahlia Trimble (dahlia.trimble)
*Falcon Linden (falcon.linden)
*Horatio (horatio)
*Hyper (hyper.mole)
*Jira Helper (jira.helper)
*Jonathan Yap (jonathan.yap)
*Lorca Linden (lorca.linden)
*Motor Loon (motor.loon)
*Moundsa Mayo (moundsa.mayo)
*Nal (nalates.urriah)
*Object (object)
*Rex Cronon (rex.cronon)
*Sandry Logan (sandry.logan)
*SMILE (sigma.avro)
*Stinson Linden (stinson.linden)
*TheBlack Box (theblack.box)
*Vincent Nacon (vincent.nacon)
*Will Webb (will.webb)
*Yuzuru (yuzuru.jewell)
==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) https://jira.secondlife.com/browse/PATHBUG-129
[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 https://jira.secondlife.com/browse/PATHBUG-95
[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 https://jira.secondlife.com/browse/PATHBUG-96
[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 https://jira.secondlife.com/browse/PATHBUG-95
[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 	http://wiki.secondlife.com/wiki/Pathfinding_Public_Beta
[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 pathfinding-beta@lindenlab.com
[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 http://nwn.blogs.com/nwn/2012/05/sl-pathfinding-potential-problems.html
[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) https://jira.secondlife.com/browse/PATHBUG-129
[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 https://jira.secondlife.com/browse/PATHBUG-96
[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 http://nwn.blogs.com/nwn/2012/05/sl-pathfinding-potential-problems.html
[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 	but...well...no 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) 	...is 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 g2g.tc 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 	http://wiki.secondlife.com/wiki/Pathfinding_in_Second_Life
[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!
Generated by the 'Wikify SL Chat Log' utility by DG Products for Second Life (DGP4SL)