Jump to content

How can Linden Lab encourage better content?


Kyrah Abattoir
 Share

You are about to reply to a thread that has been inactive for 2065 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

I figured this could be the good category to have a discussion on this topic.

 

Even as far as 2003, anytime Linden Lab established some limits when it comes to content, creators have found ways to circumvent them.

  • Back when I joined, using multiple scripts to bypass built-in cooldowns placed on expensive script functions was already commonplace.
  • People exploited the fact that "temp on rez" prims didn't count against their land allotment to constantly re-rez temporary structures, making them essentially permanent at no cost.
  • The "no pushing" parcel flag had to be implemented once people figured out how to fling other avatars so fast that falling back down would take hours.
  • After flexi prims came out, hair creators took it to the extreme and only became more conservative when LindenLab implemented a client change that makes it so the more flexi prims you use, the worse they look.
  • Even today you can still wear almost a third of a region's prim count allotment on your avatar (255 prims x 32 slots).
  • LOD scalping is becoming more and more common to drop down L.I and Complexity.

The new L.I calculation was a step in the right direction, however it is mostly taking in account the "server"'s point of view and ignores completely the texture usage. This does nothing to encourage people to make good lods, or use textures more conservatively, if anything it has led to an extremely aggressive quest for "low land impact" at the expense of everything else (you know, those objects that turn into mush if you take two steps away) which is really rooted in the sculpted furnitures days where creators where promoting the "just raise your object detail to see my product properly" mindset.

Complexity on the other hand is typically ignored for rezzed objects since it doesn't count against anything, and while it should be a reasonable metric for avatars and their attachments, in practice, grossly favors rigged meshs (if you wondered why things that have no reason for being rigged are rigged anyway?) and lod scalping (due to a flaw in their rendering code, rigged meshs almost never use their lod)

Please Note that I'm not bashing on all creators here, SL is full of good people who genuinly want to make SecondLife a better place. But there is also a lot of people who are literally flooding our world with pretty, yet horribly made content, and they are NOT going to change their ways just by being told "it would be better if you...".

At this point, a lot of products in SL are not designed with actual use in mind, but solely to look good for the storepage or in blogger screenshots.

In summary

We currently have two metrics that matter at all in secondlife:

  • L.I: Only matters for people who own land, only considers serverside performances.
  • Complexity: Only matters for attachments, only considers clientside performances.

Neither of them is doing a good job at encouraging quality content, how do we fix this?

How do we make it so properly made content is the only way to get a low L.I or Complexity?

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

Linden Lab are working on a new land impact system and that may help a bit (provided they have the courage to avoid compromises and try to make the numbers fit the actual load regardless of how unpopular that may be among some powerful content creators).

Apart from that:

  • Lead by example. "Do what I say, not what I do" simply doesn't work in the long run.
  • Hire somebody to write adequate documentation. The official docs we have now is full of holes, hard to find, even harrder to understand and often downright misleading.
  • Hire a mathematician.
  • Replace faulty builder tools (such as GLOD) with better ones.
  • Fix the fitted mesh LoD bug. I think that one is by far the biggest cause of excessive client side and streaming load at the moment.
  • Encourage the builders who actually try to make better content.

If I understood @Vir Linden correctly, LL is trying to find a solution for the fitmesh bug. As for the rest of the list... well I can dream, can't I?

Edited by ChinRey
Typos
  • Like 3
  • Thanks 1
Link to comment
Share on other sites

1 hour ago, ChinRey said:
  • Fix the fitted mesh LoD bug. I think that one is by far the biggest cause of excessive client side and streaming load at the moment.

I heared there is one that is abused quite frequently but how will that affect us (I really would feel uncomfortable if my cloth fold into a triangle in a General rated region)?

Edited by Fionalein
  • Like 1
Link to comment
Share on other sites

19 minutes ago, Fionalein said:

I heared ther is one that is abused quite frequently but how will that affect us

That is a very good question and it's why I tried to page Vir in my post. I don't think LL has a solution to the problem but they surely must have some thoughts about it. As far as I can see, their only "easy" solutions would be to either to break a lot of existing content or aknowledge and accept the fact that QuickGraphics and the entire LoD system is broken for fitted mesh. The third possible solution would be to add a brand new system with automatically generated LoD models for fitted mesh but that would be a major undertaking and might well be beyond what LL is able to achieve at this stage.

  • Like 1
Link to comment
Share on other sites

11 hours ago, ChinRey said:

The third possible solution would be to add a brand new system with automatically generated LoD models for fitted mesh but that would be a major undertaking and might well be beyond what LL is able to achieve at this stage.

Yes. There are many programs for automatically simplifying meshes. I've been trying some of them. They seem to fall into three categories:

  • Not very good. (The built-in LOD model generator falls into this category.)
  • Reasonably good, but brittle - any flaw in the mesh makes them crash. (Typical of open source code from academia.)
  • Quite good, and really expensive - one is US$25,000 per seat. Another is "call for quote". That's what the AAA titles are using.

However, detecting overly detailed mesh is easy. That's just a triangle size check. It would not be hard to have the mesh uploader generate messages such as "At 1m range, 80% of your triangles are smaller than 4 pixels. Please simplify this mesh before uploading." That would filter out those objects where the wireframe view looks solid because the triangles are so tiny. Those aren't helping anybody.

After a period of nagging, the upload fee for bad mesh could be increased, and bad mesh on Marketplace could show a warning such as "This product does not meet current Second Life mesh quality standards but is still available for purchase." Move those down in search results, too.

Edited by animats
Used markdown by mistake.
Link to comment
Share on other sites

7 hours ago, animats said:

It would not be hard to have the mesh uploader generate messages such as "At 1m range, 80% of your triangles are smaller than 4 pixels.

That's not a bad idea at all. It might be a bit problematic since meshes can be resized inworld but that should be solvable.

It wouldn't cure the fitmesh bug though.

For those familiar with it, the bug means that the LoD models are never - or hardly ever - used for fitted mesh at all, they are always rendered at full resolution. This causes rendering problems in two ways. It means the render engine has to handle far more triangles - and thus data - than necessary. But it also means there are far more triangles than there is actually room for on the screen so the render engine has to work hard to calculate how to merge those triangles. And since it's flexible mesh, it has to redo that calculation for every single frame. Both problems add a lot to the gpu load and the second can also cause serious instability. I'm beginning to wonder if that is the main cause of fitted mesh flickering.

To make matters even worse, the render complexity formula does not take this bug into account, it calculates the complexity as if LoD models were used the same way as with static mesh. The result is that the calculated value is completely off for fitted mesh and does not in an way indicate the actual render cost. If you have a modern all fitted mesh avatar with a calculated render complexity of 100,000, the actual complexity may well be several millions.

  • Like 1
Link to comment
Share on other sites

Most models are created and uploaded much larger (scale) than presented in world, mainly due to the default working scale of 3rd part tools. A message in the uploader would be irrelevant.

That said, the bulk of performance issues caused by mesh is entirely down to avatars. It's your mesh head, butt and shoes. Mainly shoes.

Unless if you're into kink, then it's your cuffs. This just has me speechless . CYLINDERS. F-ING CYLINDERS.

nSwbdFF.png

  • Haha 1
Link to comment
Share on other sites

5 hours ago, CoffeeDujour said:

Most models are created and uploaded much larger (scale) than presented in world, mainly due to the default working scale of 3rd part tools. A message in the uploader would be irrelevant.

If that's happening, there's something wrong. COLLADA files have a unit specification. Look in a .dae file (which is XML) and  you should find a line like

<unit name="meter" meter="1"/>

The uploader should import dimensions accordingly.

Blender understands units, but they're not enabled by default. Early versions of Blender didn't have that feature, and some older users may not know about it.

Link to comment
Share on other sites

5 hours ago, ChinRey said:

That's not a bad idea at all. It might be a bit problematic since meshes can be resized inworld but that should be solvable.

It wouldn't cure the fitmesh bug though.

Which is a bug. Is there a JIRA for it?

It's clear that there's a weak spot in the Second Life asset pipeline, where the beautifully detailed meshes created by artists get turned into in-world assets with various detail levels. The high-detail levels have too many triangles and choke the system, while the automatically generated low-detail models have too few triangles in the wrong places and look terrible.

What are the better creators using to work around this? There are many tools used by game developers to deal with these problems. What are people using?

Link to comment
Share on other sites

7 hours ago, CoffeeDujour said:

Unless if you're into kink, then it's your cuffs. This just has me speechless . CYLINDERS. F-ING CYLINDERS.

Ummm...

That brand... They are updating their old prim build to unrigged mesh, so first of all, that mesh doesn't benefit from the "Rigged Mesh LoD bug" people whine about, second, there tend to be a lot of options on their stuff for different "styles", which involve multiple meshes in the same place, with the unused ones "alpha blended out"...

You want bad, try their mesh body harness, it has options to choose fitted mesh for Classic, Slink & Maitreya bodies. Because it's sold as mod/trans/no-copy, they do not provide 3 fitmesh versions, wear the one thats your size, instead they provide ONE version with "alpha blended out" components. The thing weights in at over 100k RCI (presumable they don't know the LoD Bug trick), but if you are brave enough to edit and unlink the "speciality size" pieces that you don'y use on your body, you can drop the RCI to 30 k.

But if you want REAL RCI horror, check out their "Deluxe Straps"...

It's a shame because their stuff looks nice and has great scripts & poses, it's just that optimising their mesh isn't something they have learned well yet.



 

Link to comment
Share on other sites

1 hour ago, animats said:

Which is a bug. Is there a JIRA for it?

At least three:

https://jira.secondlife.com/browse/BUG-40665

https://jira.secondlife.com/browse/BUG-214736

https://jira.secondlife.com/browse/BUG-11627

And interestingly, this one is listed as related:

https://jira.secondlife.com/browse/BUG-40616

That must mean LL has identified the bug as one cause for render failures during teleports.

 

Link to comment
Share on other sites

2 hours ago, animats said:

Which is a bug. Is there a JIRA for it?

Some people call it a bug, some call it a feature, there's a case for both, theoretically, a rigged mesh dress LoDing down to a couple of un-strategically placed triangles could be bad...

Imagine getting AR'd for being naked on a G-Rated sim because the person filing the AR is 2 m too far away at their "LL Default" RendervolumeLoDfactor setting, to see your nice mesh dress as anything but a triable over your left boob and another over your right butt cheek...

Worn mesh... Disable LoD's... You can see why they did it that way back when...

2 hours ago, animats said:

It's clear that there's a weak spot in the Second Life asset pipeline, where the beautifully detailed meshes created by artists get turned into in-world assets with various detail levels. The high-detail levels have too many triangles and choke the system, while the automatically generated low-detail models have too few triangles in the wrong places and look terrible.

It's more a weak spot in the "Too lazy to learn" Blunder-3D users and their reliance on "Generate stuff for me" Make-Art-AutoFail" buttons. Bloody awful cookie cutter UV mapping, that wastes 40% of the pixels on the too many oversized texture maps, bloody awful "texture bakes" where every damn piece of an item needs it's own "Blunder-3D Crap-Cycles" produced attack of "Aerial Squid Ink Boimbing" AO-Bake-Fail, again on bloody 1024 cookie cutter uv's, etc.

2 hours ago, animats said:

What are the better creators using to work around this? There are many tools used by game developers to deal with these problems. What are people using?

They use this amazing thing that allows you to produce lower poly models with non twisting LoDs, a thing that's slow and hard to aquire, too slow and hard to aquire for most of the Blunder-3D crowd and their damn "Make-Art-Auto-Fail" buttons...

You might have heard of it, it's called... SKILL.

You DO NOT count on some damn auto-fail uploader poly reduction tool to make your LoD's for you, you make them your self, by hand, using skill, and specify the separate .dae's for them at upload, same as you make your own physics hitbox  model again in it's own .dae. You DO NOT rely on some autofail routine to do your UV mapping for you.



 

  • Like 4
  • Thanks 1
Link to comment
Share on other sites

1 hour ago, Klytyna said:

Some people call it a bug, some call it a feature, there's a case for both, theoretically, a rigged mesh dress LoDing down to a couple of un-strategically placed triangles could be bad...

Yes, you do have a point there but there are two problems with it. One is that an avatar fully fitted up with high poly mesh body, mesh head, mesh hair, mesh clothing and fitted mesh jewelry can easily have more active triangles and vertices than a whole sim crammed full of content. It's a tall order to expect any gpu to handle that load, especially if there are a crowd of them in the same place. The other problem is that this LoD override isn't accounted for in teh render complexity calculation making LL's desperate attempt to control avtar render load - QuickGraphics with ARC and jellydolls - is completely useless since it has no diea whatsoever which avatars actually are the hardest to render.

Of course, an alternative solution would be to make fitted mesh with appropriate LoD models covering the bits that need to be covered for the sake of modesty. Just a wild thought...

 

3 hours ago, animats said:

What are the better creators using to work around this?

I do it the way Klytyna suggested, making each and every LoD model. I don't even let the uploader generate "zero models" for me anymore. On the very rare occasions I use a zero model at all, I make a better one myself than the garbage GLOD can deliver. It's hardly rocket science, is it?

Edited by ChinRey
Link to comment
Share on other sites

3 hours ago, Klytyna said:

Imagine getting AR'd for being naked on a G-Rated sim because the person filing the AR is 2 m too far away at their "LL Default" RendervolumeLoDfactor setting, to see your nice mesh dress as anything but a triable over your left boob and another over your right butt cheek...
 

That would probably result in action too :/

  • Sad 1
Link to comment
Share on other sites

17 hours ago, ChinRey said:

It wouldn't cure the fitmesh bug though.

For those familiar with it, the bug means that the LoD models are never - or hardly ever - used for fitted mesh at all, they are always rendered at full resolution.

In Firestorm, there's a slider in Preferences->General->Max # of non-impostor avatars. That causes avatars beyond the set number to be rendered as flat sprites, updated about 3 times a second. This has a huge effect on frame rate. I was just trying it in some clubs. 25 avatars at 30 FPS is no problem when all but three of them are impostors. The dancing looks jerky, but avatars that aren't moving much look fine. With that feature disabled, frame rate drops to about 5 FPS. Would be great for busy shopping areas.

That, plus fixing avatar LOD to bring background avatars down to a few thousand triangles, should make crowds more workable.

Link to comment
Share on other sites

1 hour ago, animats said:

In Firestorm, there's a slider in Preferences->General->Max # of non-impostor avatars. That causes avatars beyond the set number to be rendered as flat sprites, updated about 3 times a second. This has a huge effect on frame rate. I was just trying it in some clubs. 25 avatars at 30 FPS is no problem when all but three of them are impostors. The dancing looks jerky, but avatars that aren't moving much look fine. With that feature disabled, frame rate drops to about 5 FPS. Would be great for busy shopping areas.

err animats... as you are in in FS already: just hit "show friends only" for even more speed increase ;)

Edited by Fionalein
Link to comment
Share on other sites

17 minutes ago, Fionalein said:

err animats... as you are in in FS already: just hit "show friends only" for even more speed increase ;)

That looks much worse.

The viewers may have the detail thing backwards. Maybe you should set the frame rate, and impostors, LOD, and draw distance are adjusted to keep it constant.

Link to comment
Share on other sites

13 hours ago, ChinRey said:

Yes, you do have a point there but there are two problems with it. One is that an avatar fully fitted up with high poly mesh body, mesh head, mesh hair, mesh clothing and fitted mesh jewelry can easily have more active triangles and vertices than a whole sim crammed full of content.

 

I assume you've tested this using the Ktris/frame function in the viewer?

(Actually, I'm sort of assuming it's Opposite Day, because I have.)

Link to comment
Share on other sites

22 minutes ago, Theresa Tennyson said:

Show us the numbers then.

This avatar isn't even anywhere near "fully fitted up" with fitmesh and it still has three times as many active triangles as the scene around it:

5b09348a66e28_Skjermbilde(1181).thumb.png.ca1263a9ef856002e3d9ef118347aff1.png

Edit: Maybe there was a misunderstanding here. I shold have said "scene", not "sim". How many triangles there are at the other end of a sim well out of view, is of course irrelevant. My fault.

Edited by ChinRey
Link to comment
Share on other sites

4 hours ago, animats said:

The viewers may have the detail thing backwards. Maybe you should set the frame rate, and impostors, LOD, and draw distance are adjusted to keep it constant.

Don't be daft...

You tp into some busy area, the viewer drops your draw distance to 1 m, non imposters to zero, and lod to "a single mud coloured triange for ewvery thing" and you are effectively blind, what good does it do you to set your FPS to "clueless gamer-geekz" 90 fps, if the viewer then blinds you, see nothing at all, 90 times a second, wooohooo,..

No, you set a level of quality you are prepared to endure, and the frame rate varies, depending on whats there. It's how it's done.

If you gave the typical MMORPGFPS thumb-typer a single control, called "desired fps" every one of those idiots would set it to some mad number (almost certainly higher than the damn refresh rate on their monitors) and then scream blue murder because they can only see a muddy triangle with a rendered sprite slapped on it if its under 1 meter away.

SL has enough problems NOW with the idiot friendly "one graphics slider to RULE them all", where people set the slider to "ultra" because they assume their rig is"leet", then scream because "ultra" sets their draw distance too damn high, and to get back to their "magic tec-illiterate gamer-geekz" FPS numbers they have to drop the stupid slider to medium or worse, rather than using the advanced controls and just lowering the darw distance while keeping acceptable quality.

In addition, why the obsession with "constant FPS", hmmm let me guess, still thinking SL is a "game" for shooting and racing and all that console gamer 60 fps based action?


 



 

Link to comment
Share on other sites

5 hours ago, animats said:

In Firestorm, there's a slider in Preferences->General->Max # of non-impostor avatars.

All viewers have that. Interestingly the gain doesn't show up in the active triangles count.

Crowded club with the default number of non-impostor avatars (16):

5b093f1ca1cb9_Skjermbilde(1182).png.ba92741bf980d8a3c9a36d100436ac42.png

20 million active avatar attachments triangles!!!!

With the number of non-impostor avatar reduced to 1 it still show up at 20 millions:

5b093fe8e5b64_Skjermbilde(1183).png.f56d35f40896f88c0485879a17c98568.png

Derendering or impostoring help reduce the lag of course but there are several problems.

One is that newcomers won't know about it, those features are well hidden. So they don't help the first impression people get of SL. You log on for the first time, go to a crowded palce because you want to meet people and are met with a scene that takes two minutes to load and causes massive lag. Goodbye SL.

Another problem is that they are not very efficient. When I took those two snapshot I got 2 fps with 16 non-impostors, 6 fps with just one. The scene at that club is quite simple, if it had been empty, I would have expected 30-40 fps with the graphics settings I had there. I didn't try the derendering option Fionalein suggested but I take anmats' word that it performs even worse.

A third problem is: What's the point? If you have to reduce the render quality of avatars around you to a level where they just become annoying eyesores (or derender them completely which at least is better visually), why go to crowded places at all?

Link to comment
Share on other sites

So yeah fixing rigged lods would break a lot of content, however LL already broke invisiprims before.

Should they really care about content that relies on a glitch? It's not like creators cannot push an update, (It would justify the price people pay for it)

  • Like 1
Link to comment
Share on other sites

1 hour ago, Klytyna said:

No, you set a level of quality you are prepared to endure, and the frame rate varies, depending on whats there. It's how it's done.

Indeed but let's face it, you need to be a diehard hardcore SL user to endure a single digit fps over a prolonged time. Even 20-30 fps may be too low for people who expect "modern game performance".

And before anybody starts coming up with those trite old "things used to be worse" or "you can't expect that in SL" excuses, they don't matter one single bit. Because smooth performance with good graphics quality is what people expect when they join SL and it is what they are led to believe they will get. When SL fails to deliver, the loose interest and leave.

Edited by ChinRey
Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 2065 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...