Mesh/Archive/2012-11-05

==Agenda==
#Is it possible to provide more info regarding develop -> redermetadata since some of these are really handy to evaluate mesh object and to have a better understanding of the complete picture [Zed Tremont]
#We know that the highest o the calculation values in the uploader is what sets the LI. If the physics is the highest contributor, that can be fixed with a custom physics mesh. What, specifically, should we be looking to do to our model that effects "Download" and what effects "Server", so we know the difference, in more laymen like terms, and how we can lower LI through changing the model to affect Download or Server values? [Eleanora Newell]
# Is it on purpose that the exact values of the default Avatar can not be reached with the SL shape editor ? i.e.: When i set a default value to itself with a slider, then the new (true) floating point value sometimes differs slightly from the default. This makes trouble with external tools, because it is not clear how to support this in a meaningful way. Is there any chance for a fix such that all default values can be set by the SL sliders ? [Gaia Clary]
==Meeting Notes==
==Attendees List==
*Aki Shichiroji (aki.shichiroji)
*Darien Caldwell (darien.caldwell)
*Drongle McMahon (drongle.mcmahon)
*Eleanora Newell (eleanora.newell)
*Liisa Runo (liisa.runo)
*LRaven Avedon (lraven.avedon)
*Martin RJ (martinrj.fayray)
*Nyx Linden (nyx.linden)
*peetee Jewell (peetee.jewell)
*Qie Niangao (qie.niangao)
*Sera Lok (sera.lok)
*Phoenix-FirestormViewer Rocks (tankmaster.finesmith)
*Theresa Tennyson (theresa.tennyson)
*Tillie Ariantho (tillie.ariantho)
*Bazz Fazz (vir.linden)
*Yuzuru (yuzuru.jewell)
*Zed de Tremont (zed.tremont)
==Transcript for Monday November 5, 2012==
[11:59]	Nyx Linden 	greetings all
[12:00]	Eleanora Newell 	hihi
[12:00]	peetee Jewell 	Hi Nyx
[12:00]	Sera Lok 	hello^^
[12:01]	Phoenix-FirestormViewer Rocks (tankmaster.finesmith)	I see 3.4.1 is not set for release
[12:01]	Phoenix-FirestormViewer Rocks (tankmaster.finesmith)	now*
[12:02]	Nyx Linden 	a bit light on topics this week, feel free to add more: http://wiki.secondlife.com/wiki/Content_Creation/Mesh_Import_User_Group
[12:02]	Martin RJ (martinrj.fayray) 	Hi:-)
[12:02]	Aki Shichiroji 	Greetings
[12:03]	Darien Caldwell 	not a topic, but just a FYI, Runitai just posted a build of the Mesh Upload fix that's been highly anticipated by many. Link is on the Jira: https://jira.secondlife.com/browse/SH-3055
[12:04]	Darien Caldwell 	pre-beta, so at your own risk ^.^
[12:04]	Eleanora Newell 	thanks, darien
[12:05]	Nyx Linden 	first topic: "Is it possible to provide more info regarding develop -> redermetadata since some of these are really handy to evaluate mesh object and to have a better understanding of the complete picture [Zed Tremont]"
[12:06]	Zed de Tremont (zed.tremont) 	:)
[12:07]	Zed de Tremont (zed.tremont) 	Quite a few of those can be handy to evaluate sims/objects
[12:07]	Darien Caldwell 	the only info on the wiki I have found is this: https://wiki.secondlife.com/wiki/User:Viktoria_Dovgal/bbox
[12:07]	Zed de Tremont (zed.tremont) 	only I haven't dound any legend
[12:07]	Nyx Linden 	so this is one of the debugging options we use to test our graphical systems. Zed you passed me a notecard regarding specific points you had questions on, mind if I share that list?
[12:07]	Zed de Tremont (zed.tremont) 	Indeed Darien
[12:08]	Zed de Tremont (zed.tremont) 	Of course it can be shared
[12:08]	Nyx Linden 	the short answer is that we can certainly provide more documentation, and I'll let our doc team know that there is interest in having more formal documentation around this.
[12:08]	Nyx Linden 	informally we can try and answer a few of those here.
[12:08]	Nyx Linden 	1. Bounding boxes:
[12:09]	Nyx Linden 	14 Build queu
[12:09]	Nyx Linden 	long list, but we currently don't have any other topics this week so let's dive in
[12:10]	Phoenix-FirestormViewer Rocks (tankmaster.finesmith)	long list indeed :P
[12:10]	Zed de Tremont (zed.tremont) 	If somebody likes it on a NC I can pass it if not done already
[12:11]	LRaven Avedon 	hey guys
[12:11]	Nyx Linden 	first: 1. Bounding boxes:
[12:14]	Nyx Linden 	admittedly a lot of these things I'm going to have to look up myself :)
[12:14]	Eleanora Newell 	nyx, i also added to the agenda
[12:15]	Nyx Linden 	so at a high level the bounding boxes show the bounding box for various objects in the scene, the layers, thickneses, etc I will have to look up
[12:17]	Nyx Linden 	at the moment our documentation around this *is* the source code, most of these displays are mostly used by our graphics engineers, they're not intended to be general-use displays (hence the lack of documentation)
[12:17]	Nyx Linden 	2. Normals -> what exactly
[12:18]	LRaven Avedon 	someone pls tell me what is happening here? :/
[12:18]	Nyx Linden 	hi LRaven, we're having a meeting here discussing various content creation topics
[12:18]	Nyx Linden 	the agenda is here: http://wiki.secondlife.com/wiki/Content_Creation/Mesh_Import_User_Group
[12:18]	LRaven Avedon 	oh really??? shit. sorry to interrupt. i didnt know. LOL
[12:18]	Liisa Runo 	you are welcome to join us
[12:18]	Nyx Linden 	we're currently on the first topic discussing the develop->render metadata topic
[12:19]	LRaven Avedon 	i dun knw anything bout this meeting of urs. im just a normal SL user for socialising.
[12:19]	Nyx Linden 	you're welcome to stick around if you'd like and ask questions. Additional topics should be posted on the wiki
[12:19]	Martin RJ (martinrj.fayray) 	Hello LRaven
[12:19]	LRaven Avedon 	oh. tats nice. =)
[12:20]	LRaven Avedon 	oh. hey =)
[12:20]	Nyx Linden 	the normals display shows a line that represents the normal vector, or what direction a particular triangle or surface "faces"
[12:20]	Nyx Linden 	3. Octree -> what exactly
[12:21]	Nyx Linden 	The octree display shows how the world is divided up into different "zones" for purposes of updating, etc. You see colors change as various items need to get updated - the higher the frequency of updates, the more load
[12:21]	Nyx Linden 	you can see a bunch of updates happen as you zoom in and out
[12:22]	Nyx Linden 	4. Shadow frusta
[12:22]	Nyx Linden 	this deals with our shadow rendering, its more for devleopers, less helpful for creators
[12:22]	Nyx Linden 	5. Physics shape:
[12:23]	Zed de Tremont (zed.tremont) 	This one I use regularly now
[12:23]	Nyx Linden 	physics shapes are more helpful, as it shows you what shapes the server uses for detecting collisions. This is particularly important for imported meshes and pathfinding characters
[12:23]	Zed de Tremont (zed.tremont) 	To see if, if not it is wise to use convex hull or for mesh
[12:24]	Nyx Linden 	exactly. This is probably the most useful one for creators trying to optimize their content
[12:24]	Drongle McMahon 	I shows you that the default convex hull is smaller than it should be!
[12:25]	Zed de Tremont (zed.tremont) 	Indeed but you regularly get see colour codes
[12:25]	Drongle McMahon 	Or has that been fixed now?
[12:26]	Nyx Linden 	the colors are determined in the code, I'll have to look up what the various ones mean
[12:26]	Drongle McMahon 	Blue=good, red=bad
[12:26]	Eleanora Newell 	:)
[12:26]	Darien Caldwell 	yes I heard that hehe
[12:26]	Darien Caldwell 	though what = bad would be good to know
[12:26]	Nyx Linden 	more or less yes
[12:26]	Zed de Tremont (zed.tremont) 	True
[12:27]	Nyx Linden 	6. occlusion tris visible
[12:27]	Nyx Linden 	this is a debugging display for our rendering engine, shouldn't really be relevant
[12:28]	Nyx Linden 	most of these are fairly technical in nature, only a handful of them are potentially useful actually
[12:29]	Nyx Linden 	I'll skip around a bit for the purpose of brevity
[12:30]	Zed de Tremont (zed.tremont) 	Render badges?
[12:30]	Zed de Tremont (zed.tremont) 	If we can see how rendering of certain spots on a sim goes
[12:30]	Zed de Tremont (zed.tremont) 	we might be able to detect problem areas on sims
[12:31]	Nyx Linden 	render batches are groups of content that can be drawn together in one pass. Every time you change the properties of an object (textures active, shiny, etc). then the whole pipeline needs to stop in reset, so batching things is good
[12:32]	Nyx Linden 	the next relevant display is collision skeleton, which shows you the bones that your camera can focus on for picking
[12:33]	Nyx Linden 	next important would be "render complexity" which uses the display weight algorithm to give a "score" to each avatar in view as to how complex they are to draw
[12:34]	Nyx Linden 	there actually is documentation on this one! Keeping these numbers low will help with your performance.
[12:34]	Nyx Linden 	use the "display weight" metric in the build tools while working on attachments to help here
[12:36]	Nyx Linden 	attachment bytes - shows how much data is needed to store each avatar's attachments
[12:36]	Nyx Linden 	and sculpt - shows the size of the sculpt maps used in sculptie objects
[12:36]	Nyx Linden 	we have a couple other topics to get to, are there any immediate questions here?
[12:37]	Drongle McMahon 	Eleanora is 0.0Kb!
[12:38]	Nyx Linden 	I'll talk with our doc team to see if we can get the ones that would be helpful for builders documented better
[12:38]	Eleanora Newell 	yay
[12:38]	Nyx Linden 	please note that these are internal developer tools and could change at any time
[12:38]	Yuzuru (yuzuru.jewell) 	Nyx, I can't turn "render complexity" to checked.
[12:38]	Tillie Ariantho 	Where do I display those values?
[12:38]	Nyx Linden 	(anything under 'develop' is subject to change)
[12:38]	Qie Niangao 	Yuzuru, me neither.
[12:39]	Nyx Linden 	hrm, looks like a bug :)
[12:39]	Nyx Linden 	you should still be able to use the display weight while creating objects, I'll look at the debug display for avatar numbers
[12:39]	Nyx Linden 	moving on
[12:39]	Drongle McMahon 	You can turn it on under Advanced->Performance....
[12:40]	Nyx Linden 	next topic: "We know that the highest o the calculation values in the uploader is what sets the LI. If the physics is the highest contributor, that can be fixed with a custom physics mesh. What, specifically, should we be looking to do to our model that effects "Download" and what effects "Server", so we know the difference, in more laymen like terms, and how we can lower LI through changing the model to affect Download or Server values? [Eleanora Newell]"
[12:40]	Nyx Linden 	great question!
[12:40]	Tillie Ariantho 	Ok... Cool VL Viewer has no advanced/performance. ;)
[12:40]	Tillie Ariantho 	Seems to be the Info Displays...
[12:41]	Drongle McMahon 	The others are in the Develop menu .... I can't remember how to turn that on.
[12:41]	Nyx Linden 	so the details for the weight algorithms are in the wiki: http://wiki.secondlife.com/wiki/Mesh/Technical_Overview (see the box in the right)
[12:42]	Drongle McMahon 	If you like maths, you could also look at http://community.secondlife.com/t5/Mesh/Download-weight-and-size-Some-graphs/m-p/1058609#M5642
[12:42]	Nyx Linden 	"streaming" or "download" weight is the geometric complexity of the model you are uploading. You can reduce this by reducing the number of triangles in your model, or adjusting how much your LODs downscale the number of vertices
[12:42]	Nyx Linden 	http://wiki.secondlife.com/wiki/Mesh/Mesh_Streaming_Cost
[12:43]	Nyx Linden 	"server" weight is less easy to affect, as it sets a weight for how many pieces or prims an object is broken up into, and whether those prims are considered "dynamic"
[12:43]	Nyx Linden 	http://wiki.secondlife.com/wiki/Mesh/Mesh_Server_Weight
[12:43]	Drongle McMahon 	Basically ... minimising the complexity of the lowest relevant LOD for the mesh size will have the greatest effect in lowering streaming weight.
[12:44]	Eleanora Newell 	nyx, can we rez here?
[12:44]	Eleanora Newell 	yes, drongle, that seems to be key
[12:44]	Nyx Linden 	prefer to rez on the grassy hill immediately to the west, but yes, just a sec
[12:44]	Darien Caldwell 	the Grassy Knoll heh
[12:45]	Nyx Linden 	build is on, feel free to rez examples
[12:45]	Drongle McMahon 	There are fixed cutoff sizes above which each lower LOD becomes irrelevant.
[12:45]	Drongle McMahon 	A cube!
[12:46]	Eleanora Newell 	heh
[12:46]	Eleanora Newell 	i'm still working on the lower lods on this
[12:46]	Nyx Linden 	indeed, if an object is small enough that we never actually use LODs, then the lower LODs aren't relevant to the cost
[12:47]	Eleanora Newell 	it was 25K tris for level one
[12:47]	Darien Caldwell 	yeh, that's a lot
[12:47]	Eleanora Newell 	yes
[12:47]	Nyx Linden 	that's a ton of triangles for an object that size
[12:47]	Eleanora Newell 	normally i don't do that much
[12:48]	Eleanora Newell 	this is the kind of thing that the normal maps will soooo be good for
[12:48]	Nyx Linden 	there are some good quality full avatars that weigh in under 10k triangles
[12:48]	Eleanora Newell 	yes
[12:48]	Nyx Linden 	indeed, hopefully normal maps will help in these types of situations
[12:49]	Zed de Tremont (zed.tremont) 	Imagine the opposing I made a huge bridge element of 60*80 due to the size it wan't get fast on LOD2 so this one could be reduced also a lot I presume. Impossible to upload in aditi yesterday
[12:49]	Nyx Linden 	please do report back if you're able to remake it with normal maps in the future and let us know how many triangles you are able to save :)
[12:49]	Eleanora Newell 	actually, that is on my list, so i will
[12:49]	Nyx Linden 	thanks!
[12:49]	Nyx Linden 	does that answer your question on weights?
[12:49]	Eleanora Newell 	i have one with 65K that is even better, and that's the one i'm trying with a normal map
[12:50]	Eleanora Newell 	yes, nyx, ty
[12:50]	Drongle McMahon 	Nyx .... I think it's the other way round. Big objects never use the lower LODs .... small ones nearly always use the lowest LOD unless you are very close.
[12:50]	Nyx Linden 	moving on then :)
[12:50]	Aki Shichiroji 	/me agrees.
[12:50]	Nyx Linden 	you're right Drongle, I misspoke :)
[12:50]	Eleanora Newell 	i would agree, drongle
[12:50]	Nyx Linden 	next topic: "Is it on purpose that the exact values of the default Avatar can not be reached with the SL shape editor ? i.e.: When i set a default value to itself with a slider, then the new (true) floating point value sometimes differs slightly from the default. This makes trouble with external tools, because it is not clear how to support this in a meaningful way. Is there any chance for a fix such that all default values can be set by the SL sliders ? [Gaia Clary]"
[12:51]	Darien Caldwell 	Gaia couldn't come, and asked me to be her proxy
[12:51]	Eleanora Newell 	heh, yes, we spoke as well
[12:51]	Darien Caldwell 	I think i already know the answers hehe
[12:51]	Nyx Linden 	I don't believe this was on purpose
[12:51]	Darien Caldwell 	to give an example,
[12:52]	Darien Caldwell 	Saddlebags morph ranges from -0.5 to 3.0
[12:52]	Darien Caldwell 	so at it's default of 0, that comes out to a slider of 14
[12:52]	Darien Caldwell 	but in reality, the value is 14.285714285714286
[12:52]	Bazz Fazz (vir.linden) 	This has to do with the way we send parameters encoded as 8 bits in some contexts.
[12:52]	Nyx Linden 	we've been running into some similar quirks as we've been trying to work on server side avatar appearance / texture baking.
[12:52]	Darien Caldwell 	so later if someone enters a value of 14 to set it to 'default'
[12:52]	Bazz Fazz (vir.linden) 	Can't fix without a big overhaul, unfortunately :-(
[12:53]	Darien Caldwell 	the morph actually set to -0.010
[12:53]	Darien Caldwell 	i imagine high accuracy was just never seen to be a necessity
[12:53]	Darien Caldwell 	and until mesh and the deformer, probably wasn't one
[12:54]	Eleanora Newell 	nods
[12:54]	Bazz Fazz (vir.linden) 	I think in the early days there was a lot of concern about minimizing network bandwidth.
[12:54]	Nyx Linden 	there are three number spaces - the sliders have 100 points of accuracy, the individual morphs are floating point values with varying ranges, and we send a single byte over the network. the translation from one number space to the others is not always 100% accurate
[12:54]	Drongle McMahon 	Can't you just make the sliders emit the right values?
[12:55]	Darien Caldwell 	I see
[12:55]	Drongle McMahon 	Make them 0..255
[12:55]	Darien Caldwell 	the network aspect is part I wasn't aware of
[12:55]	Nyx Linden 	over the network, there are 256 possible values for each parameter, that are then expanded into the floating point values
[12:56]	Nyx Linden 	it was done to make the avatar appearance messages as small as possible
[12:56]	Phoenix-FirestormViewer Rocks (tankmaster.finesmith)	255 I think actually :P
[12:57]	Nyx Linden 	0 to 255 :)
[12:57]	Phoenix-FirestormViewer Rocks (tankmaster.finesmith)	ah, figures
[12:57]	Drongle McMahon 	Use 0..255 and a lookup table on the server?
[12:57]	Eleanora Newell 	256, 0 to 255
[12:57]	Eleanora Newell 	chat lag
[12:57]	Bazz Fazz (vir.linden) 	There are also some bugs in the way we do the conversions - I'm a bit afraid to touch it for fear of introducing some change in people's content.
[12:58]	Darien Caldwell 	Gaia and Magus re-created the slider system in Blender, only i've been badgering them because it's not matching SL
[12:58]	Darien Caldwell 	and the more we dig into it, the messier it gets
[12:58]	Nyx Linden 	it is....rather messy :)
[12:58]	Darien Caldwell 	*giggle*
[12:58]	Eleanora Newell 	lol
[12:58]	Nyx Linden 	I've been talking about this issue with Oz recently, to see what we can do about it
[12:59]	Darien Caldwell 	/me nods
[12:59]	Darien Caldwell 	I know oz brought up the possibility of a COllada Export for the avatar
[12:59]	Darien Caldwell 	I think that could potentially help in some instances
[12:59]	Tillie Ariantho 	There is a bug still with invisiprims too, I think. Not rendered right. Afaik Henry fixed it in his client.
[12:59]	Theresa Tennyson 	How important are the 1-100 settings? Could they be translated to 0-255?
[13:00]	Drongle McMahon 	If it's just one default that needs to be exact, you could intercept that byte value and translate it into the desired fp number?
[13:00]	Martin RJ (martinrj.fayray) 	Invisiprims aren't supported, Tillie
[13:00]	Darien Caldwell 	not to nitpick, but they are 0-100 settings
[13:00]	Martin RJ (martinrj.fayray) 	That's expected behaviour
[13:00]	Theresa Tennyson 	101? Now that's just silly.
[13:00]	Darien Caldwell 	yes, that was the first issue I prodded Gaia about
[13:00]	Tillie Ariantho 	MartinRJ: So what? Ignore the hundreds of crying girls that cant use their shoes anymore they paid thousands of lindens for?
[13:01]	Darien Caldwell 	they were doing a 100 range
[13:01]	Nyx Linden 	yes there are a variety of silly things in this part of the code :)
[13:01]	Martin RJ (martinrj.fayray) 	They can stick to an outdated rendering engine
[13:01]	Nyx Linden 	is there a specific way I can help with this?
[13:01]	Theresa Tennyson 	I have found the Holy Grail of sandal alphas - fixed many shoes.
[13:01]	Aki Shichiroji 	the invisiprim breakage doesn't bother me so much in terms of attachments. I do wish there were some way of obscuring water without it though.
[13:02]	Darien Caldwell 	well, I think basically i can say we know why and that it wasn't really 'on purpose'
[13:02]	Darien Caldwell 	but I guess the question is, will it be improved?
[13:02]	Eleanora Newell 	:) nods
[13:02]	Aki Shichiroji 	alpha layers have been out for what.. two years? if shoe-makers haven't learned to use them, they shouldn't complain about not being able to move product.
[13:02]	Tillie Ariantho 	The invisiprim fix must be relatively easy. Maybe someone look at Henry's code. :P
[13:03]	Darien Caldwell 	they work tillie, but with shadows they look like crap, they cast shadows
[13:03]	Darien Caldwell 	so, no longer supported
[13:03]	Theresa Tennyson 	Dolphin uses it now. It works pretty well - actually I wish Lance would give the option to turn them off.
[13:03]	Tillie Ariantho 	It's not the creators who whine, but the people you paid lots of L$ for the items which are broken with the new renderer.
[13:03]	Nyx Linden 	well I can assure you that we're having just as much difficulty with it internally as you're having externally, but we'd have to be careful not to break old content if we looked at changing any part of this.
[13:03]	Qie Niangao 	I'm with Aki on this: Invisiprims were always hideous, but we need anti-water
[13:03]	Aki Shichiroji 	we also need water on a prim :B
[13:03]	Tillie Ariantho 	:P
[13:03]	Qie Niangao 	and that. :)
[13:03]	Darien Caldwell 	fair enough Nyx. I wish you much success with your struggles :)
[13:04]	Nyx Linden 	/me forms a protest for anti-matter primitives and runs away :D
[13:04]	Darien Caldwell 	lol
[13:04]	Eleanora Newell 	grins
[13:04]	Aki Shichiroji 	Tillie: my thoughts on the matter are that the shoes still operate under the conditions they were purchased.
[13:04]	Martin RJ (martinrj.fayray) 	I want an lsl call for anti matter primitives
[13:04]	Nyx Linden 	thanks for coming out all!
Generated by the 'Wikify SL Chat Log' utility by DG Products for Second Life (DGP4SL)