Content creation guidelines for lag-free worlds

General discussions related to content creation
Post Reply
User avatar
Ilan Tochner
Posts: 4868
Joined: Sun Dec 23, 2012 8:44 am
Has thanked: 2586 times
Been thanked: 2625 times
Contact:

Content creation guidelines for lag-free worlds

Post by Ilan Tochner » Mon Aug 05, 2013 10:18 pm

The following list is not exhaustive but it does cover some of the basic recommendations for creating responsive worlds:

DO reuse objects, assets and textures after uploading them once into Kitely.
DO NOT upload multiple copies of the same assets.

DO use the lowest texture resolutions that still looks good for the object inworld when viewed at a reasonable distance for that object's placement in the world.
DO NOT use 1024x1024 texture resolutions unless the object has a large visible surface area or is used in multiple objects in the world that have a combined large visible surface area.

DO use scripts that change object properties just once when the world starts.
DO NOT use scripts that constantly update objects.

DO use object's texture properties to create texture animations.
DO NOT use scripts that constantly update objects.

DO use scripts that are triggered by an inworld event.
DO NOT use scripts that constantly check if a condition exists.

DO make objects phantom if possible.
DO NOT make hallow objects (or linked objects that form a hallow object) non-phantom.

Update (Aug-16-2015): see this comprehensive guide for how to optimize your world performance: https://kitely.atlassian.net/wiki/displ ... erformance
These users thanked the author Ilan Tochner for the post (total 11):
Constance PeregrineAda RadiusDundridge DreadlowRuby O'DegeeMin TigerpawOzwell WayfarerCarlos LoffSerene JewellPraline BLorelei Seetan and one more user
User avatar
Ada Radius
Posts: 263
Joined: Sun Dec 23, 2012 6:20 pm
Has thanked: 130 times
Been thanked: 161 times

Re: Content creation guidelines for lag-free worlds

Post by Ada Radius » Mon Aug 05, 2013 11:48 pm

I wish I could put three thumbs up here, or more.
And it's another argument for a one sim welcome center, so our visitors' graphics cards only have to process the textures from one sim's worth of textures.
Dot Mac
Posts: 219
Joined: Sun Dec 23, 2012 12:15 pm
Has thanked: 75 times
Been thanked: 205 times

Re: Content creation guidelines for lag-free worlds

Post by Dot Mac » Fri Aug 09, 2013 1:17 pm

These users thanked the author Dot Mac for the post:
Ozwell Wayfarer
Dot Mac
Posts: 219
Joined: Sun Dec 23, 2012 12:15 pm
Has thanked: 75 times
Been thanked: 205 times

Re: Content creation guidelines for lag-free worlds

Post by Dot Mac » Fri Aug 09, 2013 1:51 pm

And two more posts from Ener's blog iliveisl, this time on prims:
User avatar
Constance Peregrine
Posts: 2323
Joined: Sun Dec 23, 2012 11:35 am
Has thanked: 2764 times
Been thanked: 1422 times

Re: Content creation guidelines for lag-free worlds

Post by Constance Peregrine » Fri Aug 09, 2013 2:13 pm

I always enjoy ener's since of humor-))

ctrl shift R shows wireframe mode...
Laissez faire et laissez passer, le monde va de lui même!
My little sounds store https://www.kitely.com/market?store=2040306

Ephemeral wanderer...
User avatar
Ada Radius
Posts: 263
Joined: Sun Dec 23, 2012 6:20 pm
Has thanked: 130 times
Been thanked: 161 times

Re: Content creation guidelines for lag-free worlds

Post by Ada Radius » Fri Aug 09, 2013 10:17 pm

Thank you Dot, I'm happy to help. Ener's posts are excellent, though I'd go further in some areas:

That texture could be even smaller:
The concept that I try to carry through is to start with the smallest possible and increase only as needed. If a 4x4 will get it done, great, if not, 4x8, 8x8, and so forth in exponents of 2. It takes some persuasion with builders new at this, who think that if they can get a beloved 1024x1024 down to 512 and 256 they're doing well. And they are, for personal use sims, but not for public use sims, where visitors and audience are bringing in so many textures, that the sim itself had better be efficient, or there'll be video card crashes, gray blobbies, lag-walk and garbled sound.

Planning and teamwork
One of the things we learned to do when designing a live virtual theater set and avatars is to set up a central place or person to keep track of the pixels. The build and avatar teams come up with their minimum needs, we bring images in if we don't already have them, and everyone works from the same set. We add textures cautiously as we need them and as people come up with ideas - it's OK to spend bandwidth on important visuals, it's not OK to waste it on redundancies or textures that are too big for their purpose. It's harder to fix after you've got too many pixels out there, than if you plan it from the start. Yes, there are passionate debates and tellin each other we suk and are cra-cra idiots - artists can be quite sensitive, to their own feelings, anyway. The last big project I was directing, I delegated when I could to minimize arguments. One artist was in charge of color, so, for example, with two light more-or-less neutral toned 256x256 woods that were used on hundreds of faces with different tinting and repeats, she made sure that if it needed to match or coordinate, everyone had the right RGB values. She built a board so we could use the eyedropper thingy. If she said a color, either tinting or in the texture itself, was wrong, that meant it was wrong.

Library textures are too big!
The smallest texture that can come inworld is 4x4. The OS and SL Library default blank and alpha textures inexplicably are 8x8, which is four times as big. So those two textures are the first that go into the box. Wigs and plants alone make this one worth while - yes, all those invisible edges and blanks have to be read by your video card. Some of the so-called "best" hairmakers iSL are truly appalling at this.

Avatar system layers
Avatar skin and system layer clothing defaults to 512x512, so for theater productions I economize by combining skin and clothing layers, when possible. We could try that for giveaway stuff, maybe, as an educational thing.

Efficient textures
Designing smaller textures is not easy - I learned a lot from working with Arcadia Asylum builds, though I'm not nearly as good. But if you get it right, one texture can be used for many purposes with different repeats, offsets and tinting. The mistakes I usually see are: identical repeats on a texture when only one instance is needed, several similar textures in different colors when one would do with subtle near-neutrals and then tinting inworld, or a texture with a border plus one without, when stretching and offsetting the first would achieve the goals of the second. Also not taking advantage of sim lighting to get light and shade effects, or not re-using the four 512 region textures for buildings and shrubbery or whatever else you can think of. Or using 3 similar 128x128 sculpties, when one 64x64 rounded cube would probably do it with some resizing. Now that nearly everyone has a mesh enabled viewer, we'll phase out a lot of sculpties anyway.

Here's an example: for productions of Alice, one of the designers handed me a well thought out purse sculpt map and it's blue-with-an-ivory-beaded-border material, which I think was a 128. We were able to use that sculpt and material for her purse, ribbons and bows for her dress and hair, along with bits of costumes and props for Tweedle-Dum and Dee, the White Queen and King, Humpty, the Unicorn, the March Hare and I forget who else. The fabric part could be offset, stretched or shined to look like velvet, satin, shoes, a toy, or dinnerware, and with the beaded border, wallpaper, armour, belts and bonnets. The sculpt map went into dozens of items because textures mapped on it perfectly. Lovely efficient pixels.

SORRY long post. I could go on, and have, but y'all are prolly already asleep.
:)
Ada
These users thanked the author Ada Radius for the post (total 4):
Dot MacIlan TochnerOzwell WayfarerSelby Evans
User avatar
Dot Matrix
Posts: 1467
Joined: Sun Jul 28, 2013 3:26 am
Has thanked: 956 times
Been thanked: 1915 times

Re: Content creation guidelines for lag-free worlds

Post by Dot Matrix » Fri Jul 03, 2015 4:25 pm

Here's a useful blogpost by Andrew Thompson on hunting down existing sources of lag: Finding the source of lag on an OpenSim varregion

It covers:
  • Frames per second & Packet Loss — lag in OpenSim
  • Laggy scripts — lag in OpenSim
  • Physical Objects & Collisions — lag in OpenSim
    • Vehicles
    • Bots
    • Non-phantom objects
After looking at all the techy backend hoo-haa for hours, non-phantom objects turned out to be the cause of 99% of [the] memory leaks and subsequent crashes.
(Don't be put off by 'varregion' in the title. It also applies to ordinary and Advanced Megaregions.)
These users thanked the author Dot Matrix for the post (total 4):
Ilan TochnerZuza RittMarstol NitelyMarianna Monentes
User avatar
Dragon Ronin
Posts: 25
Joined: Wed Mar 23, 2016 3:38 pm
Has thanked: 4 times
Been thanked: 2 times
Contact:

Re: Content creation guidelines for lag-free worlds

Post by Dragon Ronin » Wed Apr 13, 2016 4:12 am

As my computer alerted me that it was not really up to the job when I discovered SL in 2007, and I (of necessity) am still using that same computer to this day, it is extremely sensitive to lag issues, and cannot get much over 15 fps under the best of conditions. any severe lag and i am at several seconds per frame if I do not crash. All this makes a hard task master for my building, and makes me very aware of such sloppiness in other folk's builds. Upon discovering Blender, I also discovered how badly many "automatic Sculpy makers" did their job, and my early attempts to make sculptys greater than 32x32 faces met with total failure though Blender would make them any size. If there is any change to this, I would be very glad as I think that 128x128 would make really awesome sculpts if they worked inworld.

All of course was before the advent of mesh, and the rigid discipline of Sculpty making went out the window. Mesh objects can be lower lag than sculptys, and will rez sooner in any case, but this should not be taken as "less lag" as my experience has shown this not to be the case. I have made a mesh gable roof that has a total of 10 faces and as a single face mesh cube has 6 faces that is pretty good, and the roof is low lag though the texturing is somewhat problematic, and it is "hollow" and needs to not be phantom. However such meshes are rare indeed.

More common is the person who "Discovers" that 50 or more prims can be exported through some program and brought in as a single prim mesh and just does it with little knowledge much less understanding what is happening on any sort of detailed level. I can usually tell that has happened as my computer lags to a frame every few minutes, while their computer barely notices. Alternatively meshes can be built well in Blender but to accomplish all the geometry, need to be a great many faces. 3d Text in exotic fonts can be a classic example of this, and even 100,000 faces can be as low as practical. The good side is that they rez quickly and announce your store name right away, while a texture sign board on the building might take me several minutes to see; however I can notice the lag especially if I am close, even if the sign is phantom.

Looking at sculptys vs mesh I will use the sculpty unless there is a compelling reason to use mesh. And I will use regular prims unless there is a compelling reason not to. The Sculpty will take longer to rez in and can contain only a single texture, where the mesh will contain 8 textures, but my experience is that they are less laggy even when they are exactly the same geometry and texture. In addition any prim or sculpty can become any other and this can speed building as only some perimeters need to change. This may be the reuse issue talked about above, and I have seen times when the change does not take (even setting to sell or changing the price), but the difficulty of changing out a mesh in a complex build where the old one had some faces with a Normal issue can be very much more work than changing a sculpty design,

Compared to mesh issues and scripting issues, and draw distance, Texture size issues pale to insignificance except on the initial rez.
That is my experience with my ancient Computer anyway.
User avatar
Marianna Monentes
Posts: 10
Joined: Sat Jan 02, 2016 1:48 pm
Has thanked: 13 times
Been thanked: 13 times
Contact:

Re: Content creation guidelines for lag-free worlds

Post by Marianna Monentes » Wed Aug 28, 2019 8:05 pm

Thank you for this excellent Post. I have been working to reduce my mesh, some I have reduced by 80% and the details are not compromised which is good. I do have pieces that are compromised so, those I just toss-too detailed for opensim. I will strive to do my part :)
These users thanked the author Marianna Monentes for the post:
Ilan Tochner
The most talented, thought-provoking, game-changing people are never normal. Richard Branson

https://www.kitely.com/market?store=10359095&wt=os
Post Reply