Mesh/Archive/2012-11-05
< Mesh
Jump to navigation
Jump to search
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) (User's Wiki Page)
- Drongle McMahon (drongle.mcmahon)
- Eleanora Newell (eleanora.newell)
- Liisa Runo (liisa.runo)
- LRaven Avedon (lraven.avedon)
- Martin RJ (martinrj.fayray)
- Nyx Linden (nyx.linden) (User's Wiki Page)
- peetee Jewell (peetee.jewell)
- Qie Niangao (qie.niangao) (User's Wiki Page)
- Sera Lok (sera.lok) (User's Wiki Page)
- Phoenix-FirestormViewer Rocks (tankmaster.finesmith)
- Theresa Tennyson (theresa.tennyson)
- Tillie Ariantho (tillie.ariantho) (User's Wiki Page)
- 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! |