Resizer Development

kesscoat_002

Okay, so you know those shoes you have that you can resize in a single click? Apparently, the script that does this has to multiply itself per prim that’s being resized… so your 255 prim hair with the resizer script has 255 scripts in it. “WHOA, OMG! NO WONDER I’M LAGGING.” As my friend says, “griefer technology.”

Thankfully, there appears to be a solution to this. Nicocci Denfu has developed a script that resizes an entire linkset at once. The script resize time is a bit slower, however, the end result of lack of lag is worth the milisecond-slower resize time.

The documentation:

Rescale
A single-script tool for customizing no-modify attachments through menus

Why one script?
The entire goal of Rescale is to cut down on the amount of scripts that must be worn per attachment, thus preventing lag.
For very primmy objects, for example more than 128 prims, the simple method would be to keep a script in each prim.
This means 128 or more scripts just to resize such an object, which means 2MB or more of simulator memory will be in use (A LOT for one object).
Having several such objects worn or rezzed piles on yet more memory usage.
Not only does this degrade sim performance in general, it is particularly destructive during teleports.
Teleports must transfer each script’s state to another sim, and transferring all those scripts causes a large delay in some cases.
This delay is extremely noticeable, and often painfully so.
Avatars wearing hundreds of scripts can cause a sim to hang for even as much as 10 seconds when they teleport in or out of the sim.
To avoid all of this, Rescale can replace hundreds of resize scripts by having one per whole object rather than one per prim.
The only trade-off when using a single script versus hundreds is an increase in the time necessary to resize all prims at once.
However, resizing is often only done once or twice to fit an object when first purchased, or on occasion.
An increase in rarely needed resize time is far preferable to constant, horrid sim lag and possibly failed teleports.

Features
Resize a whole object
Resize a single prim on all axes at once, or in a single dimension
Move individual prims
Restore the whole object to its original state
Restore individual prims to their original state
Coordinate multiple, separate objects to resize or restore all prims simultaneously
One script
Extremely sim-friendly
Free support and updates for life

License and terms of use
Rescale is provided with copy and transfer permissions.
This script is designed to facilitate end-user customization your own products in situations when you need them to be no-modify.
It must be used only for this purpose and may not be resold or redistributed on its own.
You may make the permissions on this script more restrictive than the default within your own products, as necessary.
Only at the time of any installation (whenever ‘Setup’ is chosen from the menu), Rescale verifies your purchase against a database of purchases to ensure its validity.

Installing Rescale (guide for content creators)
The following steps will prepare your object for use with Rescale. The script itself will give you these instructions.
1.  Rez your object on the ground.
+   If you are setting up coordinated objects, rez all of them.
2.  Drop Rescale into the root prim of the object(s).
+   If you are setting up coordinated objects, touch each object and choose ‘Coordinate’ from their menus, then follow steps 3 to 8 for each object.
3.  Touch the object(s) and select “Setup” from the menu.
+   If the object is only one prim, no further steps are needed.
4.  The object will soon tell you that it should be picked up. Take the object.
5.  Rez the new copy that you have taken back onto the ground.
6.  Select this new copy, and from the menu bar at the top, select Tools -> Set Scripts to Running in Selection.
7.  A panel will appear displaying the progress of the operation. Wait until the script says that it is ready, then close this panel.
8.  The object is now ready for customization by future customers.

Using Rescale (guide for end users)
To begin using Rescale, click on one of your object’s prims, and a blue dialog menu will appear.
You may first see the these two options: “This Object” and “All Objects”.
This means the creator has made it possible for multiple objects to be resized or restored simultaneously.
Choose “This Object” to only resize or restore the one that has been touched.
Choose “All Objects” to resize or restore all objects that have been set to work together (such as a boot with multiple attachment parts).
If you chose “This Object” (or did not see that option), You will see two options: “Linkset,” and “Touched.”
Choosing “Linkset” will cause all further menu choices to modify the entire object.
This lets you resize the whole object or restore the whole object to its original state.
When resizing all prims in an object with a large number of prims, it may take some time to finish an operation.
Choosing “Touched” will cause all further menu choices to modify only the prim you touched.
This lets you resize or move an individual prim, or restore both the size and position of an individual prim.
When resizing a single prim, you can resize it on any individual axis or change its overall size.
When moving an individual prim, you can move it on any individual axis.
All menus time out after 1 minute without a response, and the object must be touched again to continue.

Changelog
1.1.0
Initial release
1.2.0
Added coordinated mode

Support
For all questions, comments, bug reports, and direct support, please contact Nicocci Denfu in world, or email nicocci.denfu@gmail.com.
Additional support, updates, and information can be found in the ‘Niccoci’s Products’ group.

If you want to check it out, this is available on XStreet for $150L, copy and transfer permissions… which basically means for you big-time content creators… it’s free.

Blog Widget by LinkWithin