Second Life Performance
Second Life Performance: Avatars, Lag, FPS, and Optimization
Do not automatically blame people with complex avatars
In Second Life, we should not automatically blame only the people who wear complex avatars.
Many users do not even know that their avatar may be heavy or poorly optimized. They simply buy a body, clothes, hair, or accessories that they find beautiful, without always understanding the technical impact these products can have on other people’s performance.
Most users choose an item because they like its appearance, not because they understand its polygon count, texture memory, materials, or rendering cost.
Server lag and FPS drops are not the same thing
Many people use the word lag for every performance problem, but Second Life can experience several different types of slowdown.
Simulator or region lag
Scripts, physical objects, vehicles, collisions, and complex server-side systems can slow down a region.
This becomes more noticeable when there are many scripts or when they are poorly written or badly optimized.
Region lag affects the simulator’s ability to process scripts, physics, movement, and interactions.
FPS drops and graphical slowdown
Heavy meshes, large textures, detailed hair, transparency, materials, lighting effects, mirrors, shadows, and many accessories mainly affect the user’s computer.
These elements reduce the number of frames the Viewer can display every second.
FPS problems are mainly related to graphical rendering, the Viewer, and the performance of the user’s computer.
The computer itself can also be the problem
Very often, performance problems also come from the hardware used to run Second Life.
A user may be playing with:
- an old processor;
- a weak or outdated graphics card;
- too little system memory;
- insufficient video memory;
- a slow storage device;
- an unstable internet connection;
- graphics settings that are too high for the computer.
In that situation, the user may experience serious FPS drops as soon as they enter a club, event, store, or region containing several detailed avatars.
Sometimes an avatar is not technically disastrous; the other person’s computer simply cannot display it smoothly.
Second Life can still be extremely demanding
Second Life is an old virtual world, but that does not mean it is easy for every computer to run.
Unlike a traditional game, Second Life must download and display user-created content from many different creators in real time.
A crowded region may contain dozens of avatars, each wearing a mesh body, mesh head, hair, clothing, jewelry, accessories, animations, textures, materials, and scripts.
The Viewer has to assemble and render all of this content without the same level of global optimization found in a traditional game where developers control every object.
Some avatars really are poorly optimized
It is also important not to ignore the opposite problem: some avatars and products genuinely are technically excessive.
Common optimization problems include:
- an excessive number of polygons;
- too many separate mesh objects;
- too many materials and separate surfaces;
- multiple unnecessary high-resolution textures;
- large amounts of alpha transparency;
- too many animated or scripted accessories;
- unnecessary lights and visual effects;
- poorly designed levels of detail;
- hidden geometry that is still being rendered.
Artistic detail is not the problem. Poor technical optimization is.
Creators also have a responsibility
The person wearing an item is not always the only person responsible for its performance impact.
Creators should make a reasonable effort to optimize their meshes, textures, materials, scripts, and levels of detail.
A product can be beautiful, detailed, stylish, and creative while still being reasonably optimized.
- Use an appropriate polygon count.
- Create functional levels of detail.
- Avoid unnecessary hidden geometry.
- Use texture sizes appropriate to the visible surface.
- Limit unnecessary materials and alpha transparency.
- Remove scripts that are no longer required.
- Avoid separating an object into too many individual attachments.
Good optimization does not require sacrificing artistic quality. It requires better technical decisions.
Users can also reduce unnecessary scripts
Users also have some responsibility for keeping their everyday avatar reasonably clean.
Many clothes, hair products, shoes, jewelry, and accessories contain scripts used by a HUD to change colors, textures, materials, shine, transparency, or other options.
Once the final appearance has been chosen, these scripts may no longer be needed during everyday use.
Important precaution
Never remove scripts from the only copy of an item.
Always keep an original version in your inventory before making any permanent modification.
Script removal is only possible when the creator has provided the necessary permissions or included a safe script-removal option.
A clean and safe inventory method
A simple method can help keep both an original version and a lighter everyday version of an item.
- Keep the original item with its scripts and HUD in a clearly named folder.
- Make a copy of the item before changing anything.
- Wear the copied version and use the HUD to choose your preferred color, texture, material, or style.
- Save or finalize the selected appearance.
- Remove the scripts from the copied version only when the creator allows it and the option is available.
- Rename the lighter copy so that it is easy to identify, for example: “Black — Final — Scripts Removed.”
- Keep the original scripted version in case you later want to change the color or restore another option.
This method prevents users from wearing many items filled with scripts that are no longer actively being used.
Do not confuse scripts with graphical complexity
Removing unnecessary scripts can help reduce pressure on a region, but it does not automatically reduce an avatar’s graphical complexity.
A highly detailed hair mesh with large textures may still reduce FPS even after all scripts have been removed.
Likewise, a visually simple object may contain scripts that affect the simulator without having a major impact on FPS.
Script weight and graphical weight are related to different parts of Second Life’s performance.
Avatar users
Users can remove unnecessary scripts, avoid stacking many unused attachments, lower their graphics settings when needed, and keep clean copies of their items.
Creators
Creators can reduce unnecessary polygons, textures, materials, scripts, and hidden geometry while providing better levels of detail.
Computer performance
Users should choose graphics settings appropriate for their processor, graphics card, memory, video memory, and connection.
The real cause is usually a combination of factors
Performance problems in Second Life rarely come from only one source.
They may result from a combination of:
- poorly optimized avatars;
- unnecessary scripts;
- heavy meshes and textures;
- large numbers of avatars in the same region;
- complex lighting and visual effects;
- weak computer hardware;
- graphics settings that are too high;
- an overloaded simulator;
- an unstable network connection.
Blaming only avatar users, only creators, or only Linden Lab does not accurately explain the complete situation.