Over the past week and a half, 3 or 4 people who had previously had NO problems using LoopRez Deluxe, started experiencing a weird problem.
The problem:
- autolink stopped working
- the panels needed to be MANUALLY linked, possibly in a specific order
- after the /1 DONE command, the skirt was not releasing from the original LoopRez ball, and had to be unlinked manually
The problem seems to be intermittent. Last week, I was able to perfectly replicate the problem in Linji Sim, and yet LoopRez Deluxe worked fine in Peronaut Sim. Today, it works fine in both sims. I contacted someone else who had been having the problem, and it's resolved for him as well.
Because the script hadn't been changed at all, and the problem seemed to be Sim-specific AND intermittent, my assumption is that it's just another LL / SL bug, and NOT due to a script problem.
Still, if it occurs to you, first, PLEASE contact me and tell me what sim it's happening in. Then, I would suggest trying again either in a different sim / sandbox, or in a few days. Another thing to try, is adding in a delay for rezzing (like /1 DELAY 1), in case it has to do with Sim / Client lag.
But for now, I'm just glad the problem seems to have gone away.
Showing posts with label looprez. Show all posts
Showing posts with label looprez. Show all posts
Thursday, November 29, 2007
Wednesday, April 4, 2007
LoopRez texture problems? Need comments!
Recently, LoopRez users have described a really mysterious sounding bug (or BUGS), with textures reverting to previous ones, textures changes after linking (although I'm not clear why a user would be re-linking a skirt, after starting to work on it), etc.
Because several people have mentioned these problems, and yet I can't reproduce the problem on my own, I'd love it if people could post comments to this blog entry, describing in step-by-step detail what they did, and what happened. That way, I'm much more likely to be able to figure out what happened, and try to fix it.
Please post! And if you have the ability to host pictures, and think pictures would make it more clear, please do that too!
I hope, once I have more of a clue, to be able to get together with LoopRez users in-world, in-person, to come to a solution, too.
Thanks!
Because several people have mentioned these problems, and yet I can't reproduce the problem on my own, I'd love it if people could post comments to this blog entry, describing in step-by-step detail what they did, and what happened. That way, I'm much more likely to be able to figure out what happened, and try to fix it.
Please post! And if you have the ability to host pictures, and think pictures would make it more clear, please do that too!
I hope, once I have more of a clue, to be able to get together with LoopRez users in-world, in-person, to come to a solution, too.
Thanks!
Saturday, March 3, 2007
Comments on LoopRez Deluxe
This is what makes it all worth it :)
- OMG this is a very very big help for rush orders. Typically yes I will take the time to meticulously put each prim in the proper place but sometimes, some jobs don't requre so much detail. I think this is great, Thanks for this great tool - NG
- Some days ago I got the LoopRezzer - its a wonderfull tool ,never made a skirt easy like this. -UD
- Your free version of this little gem was great this was even better. I was hunt for something that free me up from the tedious task of tweaking numbers and let me get to the core of designing, this dose the trick. I foucs on texturing my strength and do on the fly adjustment much as would as if I were really sewing with real fabric. (I am master level costume designer in RL) -Q
- I just purchased this item and I have to say I'm very excited about it's ease of use and how quickly you can make a prim skirt! I look forward to a full wardwrobe!!
Thanks for making something so very helpful!!! - anonymous - great working tool,and at half the price of other's that do the same exact thing.....a bargain.Many thanks for making this tool. - KA
- This product is an absolute MUST for dress/clothes makers.
I have arthritis & it helps me immensley.
Not so much fiddling about. I can now concentrate on making good clothes in great time.
Thanx so much Ged for coming up with this fantastic gadget :) - BS - I bought this item on about February 15, 2007 for about L$2200. I actually already had another prim skirt maker, which is quite good, that cost more than twice as much as the LoopRez. I like the LoopRez better. The first advantage of the the LoopRez is that it has copy permission so I'm not nervous all the time about the possibility of accidentally deleting it or messing it up. Also I find that the center ball makes it easier to adjust a skirt properly on an avatar. The the Parameter Template DropScript works great too. I'm very pleased with the skirts I've made using this tool. I recommend it for making prim skirts. -KK
- This is a must-have product for the beginning dressmaker, and even for experienced dressmakers.
I'd previously tried the ###### and been dissatisfied with it's functionality, so was hesitant to buy another product. But, after trying the personal version, I was completely sold on this script and invested in the commercial version.
Even if you like to modify your skirts afterward (which isn't necessarily a requirement when using this product), the LoopRez Deluxe will save you hours of time creating your baseline skirt.
Thank you for taking the time to create this product, and for making it so flexible and easy to use!! -RD - I just bought your LoopRezDeluxe, and I just want to say that I love it. You're a true genius! ;) -SS
- Hello Ged, I just bought your LoopRez Deluxe and I love it -NS
- I am very sorry to bother you with a direct IM , but I just wanted to say how much I am enjoying the LoopRez Generator , its a fantastic invention :-) Thank you very much. -ID
- I just had to tell you thank you for making the Looprez deluxe commercial. it is so cool. I hope you continue to make more cool items. thank you again. -KS
- Hey, it's cool, hon! I just got the LoopRez Deluxe yesterday, and for the first time, I've been able to make clothes! -LC
- From a happy customer: Thank you ever so much for developing the Free LoopRez script. I've played about with it, and loved it. It made my life so much easier in SL! You made my day when I discovered it. I've treated myself to your commercial edition and I look forward to having lots of fun with it. Thanks again! -UP
- thanks for making such a wonderfully useful script! - RH
- Ged, your device is simply fantastic. I picked it up today and have been tinkering to get the hang of it. Having made panel skirts 'by hand' before I nearly fell off my chair when I saw there was a way to automate the process! Thank you so much! -MC
- I'd like to ... thank you so much for proceeding with your plans and releasing the LoopRez Deluxe. As an owner of both products now, I can say with all honesty that there simply aren't any improvements to your product that could be suggested based on his. The LoopRez is far superior in every way. - BD
- I love your LoopRez!!!! I just took the class on it - IE
- I just wanted to stop by and say "Thank You!" for your looprez script. Really, you cannot imagine how tedious making a flexidress was before this. - VT
(If anybody does NOT want me to share their comments with others, let me know, and I'll happily remove it.)
Wednesday, February 14, 2007
"Smoke" texture and subtle permissions problems, crud crud crud
The "Edit Linked Part" feature of the newly released LoopRez Deluxe v0.8 had a critical failure with textures, with the "Smoke" texture being substituted. This is due to the inconsistent and flawed permissions system on SL, and was missed because it was not apparent to me, because I had full permissions on all objects during testing.
I released a version 0.81 fix for both the Commercial and Personal editions.
Technical explanation: inconsistencies / holes in the SL Permissions system:
Users should be aware that a serious hole in the SL permissions system is that any object, even if "NO COPY / NO TRANSFER" can be physically copied, if they are "MOD"-able.
The way it works is that you write a script that reads off ALL the prim parameter settings of an object and reports them, and then you drop it into the "MOD / NO COPY / NO TRANSFER" object. With the prim parameter settings, you can recreate the object, and you could have another prim "listen" to this report of settings, and duplicate the object.
This has been known a long time, and caused quite an outcry when the technically excellent and ethically conscientious scripter Jeffrey Gomez released an incredibly helpful tool, that as a side-effect, revealed more publicly the already-present and known-to-some short-coming in the SL permissions system. He tried to work with LL to close this permissions hole, but LL was not interested. He tried to release an entire LSL-based system to close the hole, and was attacked by the user community.
So, the hole remains. As you might have guessed, the way the DropScript works is by reporting all prim parameters to the LoopRez object. It could copy objects that are NO COPY / NO TRANSFER, except that I coded it so that it checks permissions and refuses to run, unless FULL perms are present. I have no wish to be attacked the way Jeffrey Gomez was.
There was a time when even textures could be copied in this way; however, LL did patch the permissions system so that texture UUID's can not be read unless full permissions are present, while other prim parameters CAN be read. I was aware of this, and figured that would not be a problem, because I warned LoopRez Deluxe users that they would need full permissions on any template prims.
Here's the subtle problem that I missed: if an object that you have FULL permissions to is linked to an object that you do NOT have full permissions to, you will not even be able to read the texture UUID of the object that you DO have full permissions to.
And, when you try to read a texture UUID that you're not allowed to, it returns the NULL_KEY (all 0's). And when you try to set a texture with NULL_KEY, you get... the "Smoke" texture.
The Commercial Edition fix was easy -- the Little Metal Ball is now full permissions. Early testers of the latest version of LoopRez Deluxe sometimes had a metal ball that was full permissions, sometimes not, which is why the problem seemed unpredictable and intermittent.
The Personal Edition can NOT be fixed, because the panels are all NO TRANSFER (by definition of the Personal Edition.) You can still do the "Edit Linked Parts", but I edited the script so it would not try to read the textures (because it can't). Textures can still be read by the DropScript, because it is dropped onto an unlinked prim which you have full permissions on.
I apologize to all LoopRez Deluxe users who received this product with the "Edit Linked Parts" initially not working.
I released a version 0.81 fix for both the Commercial and Personal editions.
- Commercial Edition has full functionality restored.
- Personal Edition can still do the "Edit Linked Parts" --> "Touch" to update skirt, but textures will not be propagated. All other prim parameters will be sent to the rest of the skirt. I'm sorry that I was not able to keep ALL features identical between Personal and Commercial Editions
- the Template DropScript can still be used with both versions, to send texture information
Technical explanation: inconsistencies / holes in the SL Permissions system:
Users should be aware that a serious hole in the SL permissions system is that any object, even if "NO COPY / NO TRANSFER" can be physically copied, if they are "MOD"-able.
The way it works is that you write a script that reads off ALL the prim parameter settings of an object and reports them, and then you drop it into the "MOD / NO COPY / NO TRANSFER" object. With the prim parameter settings, you can recreate the object, and you could have another prim "listen" to this report of settings, and duplicate the object.
This has been known a long time, and caused quite an outcry when the technically excellent and ethically conscientious scripter Jeffrey Gomez released an incredibly helpful tool, that as a side-effect, revealed more publicly the already-present and known-to-some short-coming in the SL permissions system. He tried to work with LL to close this permissions hole, but LL was not interested. He tried to release an entire LSL-based system to close the hole, and was attacked by the user community.
So, the hole remains. As you might have guessed, the way the DropScript works is by reporting all prim parameters to the LoopRez object. It could copy objects that are NO COPY / NO TRANSFER, except that I coded it so that it checks permissions and refuses to run, unless FULL perms are present. I have no wish to be attacked the way Jeffrey Gomez was.
There was a time when even textures could be copied in this way; however, LL did patch the permissions system so that texture UUID's can not be read unless full permissions are present, while other prim parameters CAN be read. I was aware of this, and figured that would not be a problem, because I warned LoopRez Deluxe users that they would need full permissions on any template prims.
Here's the subtle problem that I missed: if an object that you have FULL permissions to is linked to an object that you do NOT have full permissions to, you will not even be able to read the texture UUID of the object that you DO have full permissions to.
And, when you try to read a texture UUID that you're not allowed to, it returns the NULL_KEY (all 0's). And when you try to set a texture with NULL_KEY, you get... the "Smoke" texture.
The Commercial Edition fix was easy -- the Little Metal Ball is now full permissions. Early testers of the latest version of LoopRez Deluxe sometimes had a metal ball that was full permissions, sometimes not, which is why the problem seemed unpredictable and intermittent.
The Personal Edition can NOT be fixed, because the panels are all NO TRANSFER (by definition of the Personal Edition.) You can still do the "Edit Linked Parts", but I edited the script so it would not try to read the textures (because it can't). Textures can still be read by the DropScript, because it is dropped onto an unlinked prim which you have full permissions on.
I apologize to all LoopRez Deluxe users who received this product with the "Edit Linked Parts" initially not working.
Sunday, February 11, 2007
Varying skirt pleat lengths (and colors) -- skirt scripting language?
Voila, the ugliest skirt in existence!

One of the things about LoopRez is that it generates skirts where all the panels are essentially the same -- same color, same length -- just varying in position and rotation in space. Varying the length can give a much more interesting effect. One of my favorites is Natalia Zelmanov's formal gown.
When LoopRez was modified to have a "BACKANGLE" setting, where the back panels can have a different amount of flare angle compared to the front of the skirt, I started thinking that it ought to be possible to do more with varying each panel.
I experimented with a rather extreme case of varying textures across the panels, by tiling a texture completely around the skirt. This worked, but had to be hand-coded, adjusting the script for the specific skirt size and texture. This wouldn't be terribly accessible to the general public.
So, what about varying lengths (and colors) across skirt pleats, but making it more usable to the general public? I've been thinking about this for a while now, and even mentioned it a little while back. Well, in the past few days, I wrote my first notecard reader (for product updates, actually), but realized that a notecard might be a way for a skirt designer to tell LoopRez what they wanted in varying lengths.
Here's what I've come up with -- the LoopRez Skirt Programmer
- there are 360 degrees in a circle: moving counter-clockwise looking down on a skirt,
- 0 degrees is the front of your skirt;
- 90 degrees is your left side;
- 180 degrees is the back;
- 270 degrees is the right side; and
- 360 degrees is the front again
- prim sizes are described (in the Edit Menu and in scripts) as three numbers <x,y,z>, a vector. Generally, the Z size is the length of a skirt, depending on how you rotated your prim
- I create a notecard, and consisting of some lines that describe the lengths at various "degree positions" on a skirt. Here's an example:
The first line tells my script that you want to vary the size. Notice that X and Y are always 0.2 -- those sizes don't vary. Notice that Z, however, varies from short (0.2 m) at the front of the skirt, a little longer (0.3 m) at 30 degrees, and full length (1.0 m) for all the degree range from 60 degrees to 300 degrees, then symmetrically back to 0.3 and 0.2 meters as you come around the front-right of the skirt again.TYPE~SIZE
0~<0.2, 0.2, 0.2>
30~<0.2, 0.2, 0.3>
60~<0.2, 0.2, 1.0>
300~<0.2, 0.2, 1.0>
330~<0.2, 0.2, 0.3>
360~<0.2, 0.2, 0.2>
IMPORTANT: there's been some confusion about when to use the SkirtProgrammer. Essentially, what you need to do is ALL the things to generate a skirt, and THEN run the /1 PROGRAM command. The Skirt Programmer works on a skirt that has already been rezzed, but NOT yet completed with the /1 DONE command.
Start with a default 30 panel LoopRez skirt:

After dropping the above notecard (named "skirt open front") onto the LoopRez central little Metal Ball, and typing "/1 PROGRAM skirt open front", the panel sizes get adjusted to look like this (no adjustments needed for position or rotation, so it took just a few seconds to go from the first picture to this one):

Well, it turns out that like sizes, colors are also described in SL by 3 value vectors, <RED, GREEN, BLUE>, with values ranging from 0 to 1 for each color. So, it wasn't hard to write the script to vary colors as well. I don't remember exactly what the Notecard contained, but it was probably something like:
TYPE~COLOR
0~<1,0,0>
180~<0,0,0>
360~<1,0,0>
In other words, pure bright red at 0 degrees (the front), varying to no color (black) at 180 degrees (the back), and then back to bright red at 360 degrees (the front) again. Here's how it looks:
Ever wonder how to generate a rainbow in RGB space? No? Well I did, and I found one way here:

TYPE~COLOR
0~<1,0,0> // pure red
60~<1,1,0> // red + green
120~<0,1,0> // pure green
180~<0,1,1> // green + blue
240~<0,0,1> // pure blue
300~<1,0,1> // red + blue
360~<1,0,0> // back to pure red
There are 6 segments in the progression, so I divided the 360 degrees of a circle, to get 60 degree increments around the skirt. After typing "/1 PROGRAM skirt rainbow", the result makes me think of 60's tie-dye hippiedom:
To adjust 30 panels manually to get a smooth rainbow gradient would have been rather tedious. To run it with the Script Programmer took a few seconds. Fun!
Granted, the skirt is ugly enough to make a real SL fashion designer want to claw their eyes out, but hey, I just make the tools -- it's up to them to make beautiful things with them.
Comments? What do you think?
Friday, February 9, 2007
bye-bye DropScript, yay!
The "Template Parameter DropScript" is probably one of the more powerful but most confusing parts of the LoopRez Deluxe setup. It's really useful, because you can adjust a skirt AFTER it's already been rezzed, without editing each panel separately.
But, it's SO unintuitive -- why would you drop a panel on the floor next to you, and then drop a script onto it, to adjust a skirt you were working on? Wouldn't it make much more sense to edit the actual skirt you were working on? I think it's pretty clear that if I couldn't come up with a simpler name than "Template Parameter DropScript," it had to go.
(And for the truly paranoid, the DropScript does not communicate securely with the LoopRez object -- it uses spoken commands on a hidden channel, but an enterprising industrial spy hell-bent on obtaining your secret texture UUID could conceivably intercept it. In contrast LinkMessages within a linked object are secure.)
I've (yet again) re-written LoopRez Deluxe so that panels can be edited in place, and the changes propagated through the rest of the skirt in progress. Here's what it looks like:
Like it?
But, it's SO unintuitive -- why would you drop a panel on the floor next to you, and then drop a script onto it, to adjust a skirt you were working on? Wouldn't it make much more sense to edit the actual skirt you were working on? I think it's pretty clear that if I couldn't come up with a simpler name than "Template Parameter DropScript," it had to go.
(And for the truly paranoid, the DropScript does not communicate securely with the LoopRez object -- it uses spoken commands on a hidden channel, but an enterprising industrial spy hell-bent on obtaining your secret texture UUID could conceivably intercept it. In contrast LinkMessages within a linked object are secure.)
I've (yet again) re-written LoopRez Deluxe so that panels can be edited in place, and the changes propagated through the rest of the skirt in progress. Here's what it looks like:
- First, you rez and link your skirt, just as before. Then bring up the edit window and check off the "Edit Linked Parts" checkbox:
- After clicking the checkbox, click on any panel you'd like to edit, and make all changes as you would normally do. Here, I've applied a texture to the outward-facing surface.
- Finally, "touch" the panel you just edited. Because you have an edit window up, the easiest way to activate a touch is to RIGHT-CLICK the panel you just edited, and choose TOUCH. All parameters will automatically be transmitted, and the changes will spread to the rest of the skirt.
The Personal Edition will not be able to spread textures, because of the permissions system in place. However, all other prim parameters will be transmitted. - Voila! The entire skirt is updated, and you didn't have to go around dragging any panels to the ground or scripts from inventory.
Like it?
Tuesday, February 6, 2007
Tiling a texture across many panels
I had some fun playing with texture offsets and writing a script that would send different offsets to each panel of a LoopRez-created object.
For a test, I wanted to run a long, skinny picture across the bottom of a "skirt." I used an image from the web, at the WHTour:Gugong:Nine Dragons Wall scrolling panoramic view. Here's an excerpt, with 4 of the 9 dragons:

To test the script, I created a LoopRez object with maybe 10-12 panels, and tiled the texture across it, yielding this:

It seemed to work, other than some distortion issues, so I told LoopRez to increase it to ~20-24 panels, and ran the texture tiler. So, from the first object to the second object only took a few seconds, with no manual editing of texture offsets. Cool!
And, just because movies are fun, here's a video of the object rotating around, so you can see more of the dragons, and how the textures are split across the flexi panels when they move:
I don't think this script could ever be useful as a releasable tool, though. Essentially, I think for every project, the script would have to be re-coded, which would probably not be worth it. But it was a fun little hack :)
For a test, I wanted to run a long, skinny picture across the bottom of a "skirt." I used an image from the web, at the WHTour:Gugong:Nine Dragons Wall scrolling panoramic view. Here's an excerpt, with 4 of the 9 dragons:

To test the script, I created a LoopRez object with maybe 10-12 panels, and tiled the texture across it, yielding this:

It seemed to work, other than some distortion issues, so I told LoopRez to increase it to ~20-24 panels, and ran the texture tiler. So, from the first object to the second object only took a few seconds, with no manual editing of texture offsets. Cool!

I don't think this script could ever be useful as a releasable tool, though. Essentially, I think for every project, the script would have to be re-coded, which would probably not be worth it. But it was a fun little hack :)
Monday, February 5, 2007
Product support, and LSL aaarrgghhh's...
Cut and pasted, basically straight out of a notecard sent to some LoopRez Deluxe users who have had some problems: two people who can not link more than 6 to 8 objects at a time, and a crazed (and I mean it in the nicest way) individual who makes 60 prim skirts, and has run into grey goo problems.
After writing it, I thought other users might be interested in the progress / troubleshooting.
LoopRez Deluxe v0.67 BETA
- NOT well tested yet
Linking problems, can not link more than 6 - 8 panels
Grey goo barrier problems
Memory of prim parameters
Pretty much failed attempt to get rid of that DropScript
After writing it, I thought other users might be interested in the progress / troubleshooting.
LoopRez Deluxe v0.67 BETA
- NOT well tested yet
Linking problems, can not link more than 6 - 8 panels
- added the option to have the LoopRez do all the linking by itself, without user input
- this will add a 1 second per panel delay (llCreateLink has a built-in delay), so people without linking problems wouldn't want this
- to activate it, type /1 AUTOLINK, BEFORE you touch to rez the panels, and it'll give you a message that autolink is ON
- to deactivate it, type /1 AUTOLINK again, and it'll tell you that it's off again
- with the 2 users who were having this problem, AUTOLINK seems to have resolved the problem
Grey goo barrier problems
- added the option to slow down rezzing, to prevent running into the grey goo barrier
- type: /1 DELAY ##, where ## in the per panel delay in seconds
- the default is 0.0 seconds
Memory of prim parameters
- split out some functions of LoopRez into yet another script (the package now includes 5 distinct scripts, all inter-communicating), to see if that would free up enough memory to "remember" prim parameters after changing number of objects / "die" commands / between sessions
- /1 reset will reset all scripts, clearing out the prim parameter memory
- I've had a script crash once, with memory running out, but it hasn't been reproducible
- I need to make sure memory issues won't recur..
Pretty much failed attempt to get rid of that DropScript
- I was hoping that by using "edit linked parts" on a skirt that has been rezzed, a new method to tweak skirts would be possible
- Goal: in edit menu, check off "Edit linked parts", and then edit ONE isolated panel within a rezzed skirt; then "Touch" that edited panel, and a dialog window would allow you to propagate the change through the rest of the skirt
- after doing a heck of a lot of script re-writing, I *then* found out that you can NOT change "flexi" parameters even if "Edit Linked Parts" is checked. DANG DANG DANG
- well, it does seem to work for size / color / texture, at least
- I disabled rotations for now, because that would involve more rotation math, and I'm not fond of rotation math
- back to the drawing board. I hate LSL sometimes
Friday, February 2, 2007
LoopRez idea hodgepodge
Just collecting some random thoughts here about future things to play with (sort of a public journal of silly ideas).
Too many things to play with, too little time.
On the other hand, I've FINALLY bought some clothes in SL. Yes, after nearly 2 months, I actually bought a pair of shoes, and a sweater or two. I'm not much of a fashionista, am I? :)
- Right now, LoopRez duplicates a single object repeatedly in the path of an ellipse. Although each panel is at a different location with a different rotation, each object is otherwise identical.
But, there's no reason why this has to be the case! It should be possible to send each panel a distinct, separate instruction that varies, for example: length (to form those dresses with a "V"-shaped cut-out in front, or high on one side + low on the other), color (maybe a gradient of a hue, from light to dark). In fact, this is exactly how the "BackAngle" adjustment works to increase the "poof", just in the back of a skirt.
The only problem is that it would pretty much need a custom script written each time. The script wouldn't be complicated (I could see it being just a dozen lines long, and mostly the same each time), but would put it out of reach for most users. - when a dress is in progress, each panel contains an active script (that's what the little green asterisks are signifying); when the dress is completed, the scripts delete themselves.
Here's an idea that might cause horrendous lag, or might be fine (e.g., touch-activated + link messages): leaving some scripts in place. What might that be useful for? - saving different sizes (S / M / L / XL), or lengths (mini-skirt through ankle length), triggered by user commands
- user-selected colors / tints
- a brief change in parameters, maybe even combined with an Animation or Gesture? I've always thought it'd be cute to have a Marilyn Monroe gust of wind effect. How might that be implemented? Perhaps a 1 or 2 second change in the flex prim gravity to negative JUST in the side panels, and then returning it to normal, combined with that famous pose of hers :) Anyone want to design a Monroe skirt and animation for me to play with?
- I really don't like the kludginess of the DropScript. I think perhaps actually editing a panel already in place (using Edit Linked Parts), and having the change propagate through the rest of the skirt, would be far more intuitive. This is probably #1 on my list of things to do.
Too many things to play with, too little time.
On the other hand, I've FINALLY bought some clothes in SL. Yes, after nearly 2 months, I actually bought a pair of shoes, and a sweater or two. I'm not much of a fashionista, am I? :)
Thursday, February 1, 2007
Some ideas?
I met a charming individual named Meni Kaiousei in SL today, who suggested that perhaps LoopRez might benefit from a User Group, for announcements of new versions, updates, and help.
I like the idea!
But, if we had a group (which, I believe, requires at least 3 people, so if nobody else is interested, I'll hold off), I do have one concern. While it would be great if users were willing to help out other users having problems, I'm worried that if I'm not logged in at the time, I won't hear about the problem or difficulty. And if anything was confusing enough that people had to ask for help to get it to work, I'd rather hear about it, so I can try to improve it. We'll see :)
An unrelated idea: I'd like to collect a photo gallery here on the blog of objects (dresses, skirts, buildings, whatever) created with the assistance of any version of LoopRez. I really like seeing what so many talented designers have been able to create. (For example, when I met Meni, she was wearing a lovely floral print skirt, with lace trim -- very nice!)
If you'd like to share, please send me a photo of your creation ("full permission", so I can download the picture off SL and upload it here). I'd also be happy to list your name, store name, or SLURL store location too, if you'd like!
Interested?
I like the idea!
But, if we had a group (which, I believe, requires at least 3 people, so if nobody else is interested, I'll hold off), I do have one concern. While it would be great if users were willing to help out other users having problems, I'm worried that if I'm not logged in at the time, I won't hear about the problem or difficulty. And if anything was confusing enough that people had to ask for help to get it to work, I'd rather hear about it, so I can try to improve it. We'll see :)
An unrelated idea: I'd like to collect a photo gallery here on the blog of objects (dresses, skirts, buildings, whatever) created with the assistance of any version of LoopRez. I really like seeing what so many talented designers have been able to create. (For example, when I met Meni, she was wearing a lovely floral print skirt, with lace trim -- very nice!)
If you'd like to share, please send me a photo of your creation ("full permission", so I can download the picture off SL and upload it here). I'd also be happy to list your name, store name, or SLURL store location too, if you'd like!
Interested?
LoopRez Deluxe, now available

LoopRez Deluxe v0.8 is available at:
Sirena Fashion & Hair, at West Sunset (160,50,22)
Script Thingies, at Linji (151, 230, 67)
Also available at SL Exchange!
Current version is v0.8, released 13-Feb-2007
Unfortunately, I am unable to make LoopRez available on the Teen Grid.
However, the free LoopRez script could be used.
Current version is v0.8, released 13-Feb-2007
Unfortunately, I am unable to make LoopRez available on the Teen Grid.
However, the free LoopRez script could be used.
Saturday, January 27, 2007
LoopRez for making buildings
I came across a blog entry: ArtsPlace SL: LoopRez and buildings, where there's a very nice example of a building created with some assistance from LoopRez.
The enclosure looks very bright and airy.



Sort of made my day to know the script was helpful to someone :)
I'll be away for the next half week. Will I survive SL scripting withdrawal?
The enclosure looks very bright and airy.



Sort of made my day to know the script was helpful to someone :)
I'll be away for the next half week. Will I survive SL scripting withdrawal?
LoopRez Deluxe Documentation
LoopRez Deluxe Documentation
This is primarily a list of commands. If you are new to using LoopRez Deluxe, the following are the most useful places to start:
Command List
/1 AUTOLINK
/1 BACKANGLE ##
/1 CHANNEL ##
/1 CIRCLE ##
/1 DELAY ##
/1 DEPTH ##
/1 DIE
/1 DONE
/1 EVENELLIPSE
/1 FLARE ##
/1 HELP
/1 NUMBER ##
/1 OBJECT ##
/1 PROGRAM ##
/1 RESET
/1 ROTX ##
/1 ROTY ##
/1 ROTZ ##
/1 TOUCH
/1 WIDTH ##
This is primarily a list of commands. If you are new to using LoopRez Deluxe, the following are the most useful places to start:
- Introducing LoopRez Deluxe (general info and full collection of links)
- Quick-Start Tutorial (walk-through, using most useful commands)
- Frequently Asked Questions (first place to go for troubleshooting)
Command List
/1 AUTOLINK
- rezzed panels are automatically linked together
- must be typed BEFORE rezzing the panels
- type it again to turn it off
- causes a 1 second per panel delay (because LSL's llCreateLink command forces a delay)
- with Second Life being so buggy and laggy, some users were unable to link more than 6-8 panels at a time; this command should bypass that problem, at the cost of a 1 second per panel delay
/1 BACKANGLE ##
- adds an extra ## degrees of flare angle to the backside of a skirt
- helps prevent the effect of prim panels emerging from the buttocks and upper thighs of avatars
/1 CHANNEL ##
- changes the channel that LoopRez Deluxe listens on for chat commands
- i.e., if you typed /1 channel 0; all subsequent commands would be listened to on the public, regular chat channel
- default is 1
/1 CIRCLE ##
- changes both WIDTH and DEPTH to ## meters, forming a circle instead of an ellipse
/1 DELAY ##
- delays panel rezzing by ## seconds between each rez
- helps if you are having problems running in the SL "grey goo" barrier
- if the "grey goo" barrier prevents some panels from rezzing, the best way to recover is:
- select and link all the panels that DID manage to rez with the central Metal Ball
- issue a /1 DIE command
- increase /1 DELAY to 0.5 or 1 second
- touch the rezzer again to re-rez the panels
/1 DEPTH ##
- changes the front-to-back DEPTH of the skirt to ## meters
- contrast to /1 WIDTH
/1 DIE
- causes all panels LINKED to the central Little Metal Ball to delete themselves
- does NOT reset the scripts, so parameters are retained for use with the next rezzing (i.e., number of objects, width, depth, and seen prim parameters / textures)
- contrast with /1 RESET
/1 DONE
- issues when you are FINISHED with the skirt
- causes all scripts with the skirt panels to self-delete, as well as re-linking the skirt to a new central object
/1 EVENELLIPSE
- this toggles between placing the skirt panels evenly around the ellipse versus allowing them to bunch up a little bit on the ends
- even spacing is a LOT slower, but might look better with low flare angles
- the default is NOT even spacing, which is faster and generally looks better with the usual flare angless
/1 FLARE ##
- this adjusts the number of degrees that each skirt panel will "poof" outwards
- 90 degrees has the panels sticking straight out, like a ballerina's tutu; 0 degrees has the panels all hanging straight down
- /1 BACKANGLE adds extra flare angle to the backside of a skirt
/1 HELP
- lists the available commands and current settings
/1 NUMBER ##
- changes the number of skirt panels to rez
- if entered AFTER a skirt has already been rezzed, will make the existing panels disappear, and then re-rez the new number of panels, and then (new to v0.8) re-apply any skirt prim parameters it has seen to all the newly rezzed panels
- limited to 60 now, but if more are needed, the theoretical maximum would be ~255
/1 OBJECT ##
- changes the name of the Object within the central Little Metal Ball that is rezzed; the default name is "Object"
- this object MUST contain the morphTarget script
- the creator of this Object becomes the creator of the final finished skirt (AFTER the /1 DONE command is issued), so replacing this object is the goal of reconfiguring LoopRez Deluxe Commercial Edition to change the skirt creator listed
- Commercial Edition Users could conceivably load multiple objects with different names, and use this command to have lots of different "starting panels" available
/1 PROGRAM ##
- this activates the Skirt Programmer to execute a notecard named "##"
- it MUST be run AFTER the panels have all been rezzed and linked
- it's probably best to run this command as the LAST thing you do before the /1 DONE command
- the Skirt Programmer allows you to define a program of skirt panel sizes or colors that varies from panel to panel, all the way around the skirt
- the notecard must be in the central Little Metal Ball
- LoopRez Deluxe ships with two notecards in the Little Metal Ball: "skirt rainbow" and "skirt open front"
- examine these notecards to get a sense of how your own Skirt Programs could be written
- Skirt Program Notecards
- must be in the little metal ball
- start with a line "type~size" or "type~color"
- optionally follow with the lines:
- "alpha~##" (## is the color alpha, default 1.0), or
- "face~##" (## is an integer describing which face to color, default ALL_SIDES)
- lines:
- 0~<X, Y, Z> (vector describing the starting size or color at 0 degrees, facing forward)
- any number of lines ##~<X, Y, Z>, describing size / color at points moving around the skirt to the left
- 360~<X, Y, Z> (vector describing the end position size or color, after coming completely around the skirt)
- this command is complex enough that I can't promise to fully support it; think of it as a potentially powerful freebie that's included
/1 RESET
- causes all panels LINKED to the central Little Metal Ball to delete themselves
- and then RESETS the scripts, so all parameters are returned to default settings
- clears the "prim parameter" memory, so newly rezzed objects will not have the prim parameters of the previous object
- contrast with /1 DIE
/1 ROTX ##
- changes the rotation of each panel, around its X-axis
- if your panels are upside down, but facing outwards correctly, "/1 ROTX 180" might help
- changing this might mess up the evenness of the hemline
/1 ROTY ##
- changes the rotation of each panel, around its Y-axis
- if your panels are upside down and inside out, "/1 ROTY 180" or "/1 ROTY 0" might help
- changing this might mess up the evenness of the hemline
/1 ROTZ ##
- changes the rotation of each panel, around its Z-axis
- if your panels are outside facing in, "/1 ROTZ 180" might help
/1 TOUCH
- this simulates a "touch" on the central Little Metal Ball, to either start rezzing panels, or receive status information
- here, because I'm too lazy to click the ball
/1 WIDTH ##
- changes the side-to-side WIDTH of the skirt to ## meters
- contrast to /1 DEPTH
LoopRez Deluxe Commercial Edition, creator configuration
LoopRez Deluxe Commercial Edition has the same functionality and features of the Personal Edition except:
Note: even after being properly configured, skirts that are "In progress" (i.e., before the "/1 DONE" command is sent), will still list Ged Larsen as the creator. This is because the little metal ball that is the root prim during skirt generation is owned by me.
However, after the "/1 DONE" command is sent, the root prim will be swapped over to a little metal ball look-alike, and so the final linked product will list YOU as the creator.
How to re-configure LoopRez Deluxe creator information
- created skirts are TRANSFER, as well as MOD / COPY, so you can sell your creations
- with configuration, the CREATOR of the skirt can be changed to yourself
Note: even after being properly configured, skirts that are "In progress" (i.e., before the "/1 DONE" command is sent), will still list Ged Larsen as the creator. This is because the little metal ball that is the root prim during skirt generation is owned by me.
However, after the "/1 DONE" command is sent, the root prim will be swapped over to a little metal ball look-alike, and so the final linked product will list YOU as the creator.
How to re-configure LoopRez Deluxe creator information
- Make a backup of your LoopRez Deluxe Commercial Edition package
- just in case anything goes wrong, you can always start again
- Rez a copy of your LoopRez Deluxe object
- Delete "Object" out of the inventory of the little metal ball of LoopRez Deluxe
- i.e., right-click the little metal ball; then select the Contents tab; then right-click "Object" inside the Contents tab and select delete
- "Object" is the source of each skirt panel; its Creator becomes the creator of the skirt. Your goal in the following steps is to replace the "Object" I created with one that YOU create, so you'll be the new Creator. The annoying part is getting the required script inside it, too.
- Create a prim from scratch. Don't change its name, just leave it "Object"
- i.e., click the Create button (or press CTRL-3), select a prim type, and rez it
- create it yourself, because this prim will determine the "Creator" of your future skirts
- you can use just a plain block, OR, you can shape, color, and texture it / set commonly used flexi settings. These settings will be the default initial settings of each panel of skirts that you generate in the future
- Drag the MorphTarget script into the contents of your "Object"
- i.e., click on your new Object and select the Contents tab. Then, drag the MorphTarget script into the Contents
- Right-click and "TAKE" your "Object" (now containing the MorphTarget script) back into your inventory
- Drag your "Object" (containing the MorphTarget script) from your inventory, INTO the contents of the little metal ball
- Select both the pose stand and the little metal ball, and "TAKE" it into your inventory
- have the edit menu open (CTRL-3), and then LEFT-mouse-click and DRAG a box surrounding the 2 items (thereby selecting them both), and then RIGHT-click one of the items to bring up the pie menu to "TAKE" both items at the same time, into inventory
- this is your new, customized LoopRez Deluxe, which will generate skirts with YOU as the creator
- I'd suggest moving the modified generator into a clearly named new folder
- if you obtained your LoopRez Deluxe after 5-Feb-2007, you might be able to rename the modified LoopRez Deluxe generator (I fixed permissions on 1 recalcitrant object); I need to test this. If it works, it will be included in the next update
- make a backup copy of it too, so you ever mess up in the future, you won't have to go through these steps again
LoopRez Deluxe FAQ
LoopRez Deluxe Frequently Asked Questions
LoopRez Deluxe Known Issues
These come directly from you, so if you're having problems, or have suggestions, please let me know!
Bugs / Problems
- Q: Only some panels rezzed, and now LoopRez isn't working / is doing weird things
- A: Two things to try (see also "Grey Goo" below):
- Remove any rezzed panels, by issuing a DIE command:
- select and link any remaining panels to the little metal ball
- type "/1 DIE"
- this will make the leftover panels go away, and you can try again, with the previously set "number, flare, width, depth" settings all intact
- OR, remove any rezzed panels, and then issue a RESET command:
- select and link any remaining panels to the little metal ball
- type "/1 RESET"
- this will make the leftover panels go away, then reset all scripts back to their default settings (losing any previously entered number, flare, etc. settings)
- Q: the panels are all upside down / sideways / inside out -- what do I do?
- A: use the /1 ROTX ##, /1 ROTY ##, /1 ROTZ ## commands. For a BLOCK-prim, the following are good places to start:
- upside down: /1 ROTX 180
- sideways: /1 ROTX 90, or /1 ROTX -90
- inside out: /1 ROTZ 180
- Q: Hey! The skirt says that YOU are the creator! How do I change the creator to me?
- A: The process is annoying, but here's a description of the steps you have to go through to re-configure the skirt object. Sorry it's so convoluted, but SL doesn't make it easy to work with the credited "Creator"
- Q: What's the difference between the Personal and Commercial Editions?
- A: The functionality of both editions is IDENTICAL. But, skirts generated with the Personal Edition are NO TRANSFER, so you won't be able to give away or sell those skirts. Commercial Editions skirts can be transfered. However, the actual skirt generator itself is NO TRANSFER in BOTH editions.
With LoopRez Deluxe v0.81, "Edit Linked Parts" can be used to edit a panel of a rezzed skirt in progress; "Touching" the edited panel then propagates the change through the rest of the skirt. For the Commercial Edition, all prim parameter attributes are transfered. However, because of permissions issues, with the Personal Edition, all parameters except texture are transfered. Textures can still be set and propagated using the DropScript. - Q: What's the policy on upgrades?
- A: All upgrades will be free for both Commercial and Personal Editions, and will be automatically sent to all users. If you do NOT wish to receive updates, let me know and you will be removed from the update list. In addition, all upgrades will be announced on the "LoopRez Users" group in Second Life, so if you don't receive an upgrade (or accidentally remove it), let me know.
- Q: why are there all those little green asterisks?
- A: they are to remind you that there are still active scripts in each skirt panel. When you are finished adjusting your skirt, issue the /1 DONE command, and the scripts (and floating asterisks) will go away
- Q: How do I click on the metal ball for info, when it's blocked by a posing avatar?
- A: You can click on the pose stand instead, or type "/1 TOUCH" which simulates a touch event on the metal ball. You can also type "/1 HELP."
- Q: Why don't you link the rezzer and pose stand? Having them unlinked means sometimes pieces get left behind when taking back into inventory.
- A: They are unlinked because the little metal ball should be able to be positioned freely. For example, if you wanted to design a shoulder cuff, you can pose, and then both move AND rotate the metal ball with its attached panels into proper position at the arm. This wouldn't work as well, if the pose stand was linked.
The pose stand is actually completely dispensable. Feel free to use whatever pose stand you prefer. - Q: Grey Goo? I tried to rez 40 panels, not all the panels rezzed, and an error icon popped up that said I hit a "Grey Goo" barrier? What do I do?
- A: SL's "grey goo" fence is to prevent griefers from using object rezzing from crashing sims. LoopRez Deluxe is made to be as fast as possible, and can activate the grey goo barrier. Version 0.8 of LoopRez Deluxe has a a "/1 DELAY ##" command which will make the panels rez more slowly, and avoid triggering the grey goo fence.
Best recovery method: - select the panels that DID rez, and link them to the little metal ball
- issue a "/1 DIE" command (removes the panels that did rez)
- issue a "/1 DELAY 0.8" command (delay of 0.8 seconds between rezzes)
- "Touch" the little metal ball again, to re-rez
- Q: I can't link more than 6 or 8 panels.
- A: This seems to be due to bad lag / packet loss, or a bug in SL itself. With LoopRez Deluxe v0.8, the "/1 AUTOLINK" option was added, to get around the need to link things yourself, at the penalty of a 1 second per panel delay.
To use it, BEFORE you "Touch" to rez any panels, issue the /1 AUTOLINK command, and THEN "Touch" to rez your panels. - Q: When I use the Skirt Programmer, I get a math divide by zero script error?
- A: There's been some confusion about when to use the SkirtProgrammer. Essentially, what you need to do is ALL the things to generate a skirt, and THEN run the /1 PROGRAM command. The Skirt Programmer works on a skirt that has already been rezzed, but NOT yet completed with the /1 DONE command.
LoopRez Deluxe Known Issues
These come directly from you, so if you're having problems, or have suggestions, please let me know!
Bugs / Problems
- when Skirt Programmer is run before a skirt is rezzed, it gets a divide by zero error (because it thinks a skirt with ZERO panels is there). Skirt Programmer should be changed to know when it's being run inappropriately.
LoopRez Deluxe Tutorial
This is an introduction tutorial for getting started with LoopRez Deluxe.
Lesson 1. Make a customized skirt in seconds
1. Drag the LoopRez Object from your inventory onto the ground

2. Set the number of panels, by chatting the following command:
3. Touch the small metallic ball (or the pose stand)

4. Link together ALL the panels AND the small metallic ball (but NOT the pose stand)
5. Now is the fun part! Customize the shape and size of the skirt by chat commands

6. Chat the following command: /1 done
(The following section is incomplete, needs pictures, some suggestions for specific prim parameters.)
Lesson 2. Applying colors and textures, and any other prim parameter, to customize your skirt panels using the DropScript
1. As above, create a skirt, but DON'T do the "/1 done" command yet
2. Create a new prim with the color and/or texture that you want to use, and place it near the LoopRez Deluxe object
4. When the dialog window pops up, click the "Color" button or the "Texture" button
Lesson 3. Applying colors and textures, and any other prim parameter, to customize your skirt panels using "Edit Linked Parts"
Like the"Template Parameter DropScript," Edit Linked Parts also allows you to adjust the skirt after it's been rezzed, but this time by editing the actual skirt that you're working on. The panels can be edited in place, and the changes propagated through the rest of the skirt in progress. Here's how:
As above, create a skirt, but DON'T do the "/1 done" command yet
Lesson 1. Make a customized skirt in seconds
1. Drag the LoopRez Object from your inventory onto the ground
- there will be a pose stand and a small metallic ball
- IF the dialog window pops up, give permission to change links (it shouldn't ask again, unless you rez a NEW copy of LoopRez, or if you use the /1 RESET command)

2. Set the number of panels, by chatting the following command:
- /1 number 24
- this sets the number of panels to 24
- the /1 is the channel number that LoopRez Deluxe listens on by default
3. Touch the small metallic ball (or the pose stand)
- LoopRez Deluxe will rez 24 panels, but they'll be scattered about messily, not looking very skirt-like -- they are waiting to be linked together

4. Link together ALL the panels AND the small metallic ball (but NOT the pose stand)
- the easiest way to select them all is to:
- press "CTRL-3" to put you in edit mode
- and then DRAG a box around all the panels and the ball (but NOT the pose stand)
- and then press "CTRL-L" to link all the selected objects
- you should now gasp out "ooh! aah!" as all the panels now zip around and arrange themselves into a perfectly placed flexi prim skirt

5. Now is the fun part! Customize the shape and size of the skirt by chat commands
- the most useful commands to start with are: FLARE ##, WIDTH ##, DEPTH ##
- FLARE
- try typing: /1 flare 80
- the panels will flare outwards to 80 degrees, resembling a ballerina tutu
- try typing: /1 flare 10
- the panels will drop nearly straight downwards, to just 10 degrees outwards
- if you type: /1 flare +10 or /1 flare -5 (notice the "+" or "-") the flare angle will be increased by 10 degrees, or decreased by 5 degrees, from whatever the current setting is
- find a setting that you like
- WIDTH or DEPTH
- try typing: /1 width +0.02
- the waistline width of the skirt will be increased by 2 cm on each side
- try typing: /1 depth -0.01
- the waistline depth of the skirt will be decreased by 1 cm on each side
- standing on the pose stand and/or dragging the skirt in progress around, can help you fine tune
- find a setting that you like

6. Chat the following command: /1 done
- the scripts will now clean up after themselves, so you don't end up with a 24 prim skirt with 24 active scripts lagging you out
(The following section is incomplete, needs pictures, some suggestions for specific prim parameters.)
Lesson 2. Applying colors and textures, and any other prim parameter, to customize your skirt panels using the DropScript
1. As above, create a skirt, but DON'T do the "/1 done" command yet
2. Create a new prim with the color and/or texture that you want to use, and place it near the LoopRez Deluxe object
- it can even be just a standard 0.5 meter prim cube
4. When the dialog window pops up, click the "Color" button or the "Texture" button
- after a pause, whichever option you picked should get transferred to the prim skirt
- customize your colored / textured cube, to become a new skirt panel
- for example, you could try:
- under Object, set size to X = 0.01; Y = 0.3; Z = 0.7
- under Features, turn on Flexible
- under Texture, play with the colors / textures some more
- when you are done, touch the panel (if the DropScript is already running), or else drop the DropScript, and then select the appropriate buttons to transfer whichever attributes you want
Lesson 3. Applying colors and textures, and any other prim parameter, to customize your skirt panels using "Edit Linked Parts"
Like the"Template Parameter DropScript," Edit Linked Parts also allows you to adjust the skirt after it's been rezzed, but this time by editing the actual skirt that you're working on. The panels can be edited in place, and the changes propagated through the rest of the skirt in progress. Here's how:
As above, create a skirt, but DON'T do the "/1 done" command yet
- First, you rez and link your skirt, just as before. Then bring up the edit window and check off the "Edit Linked Parts" checkbox:
- After clicking the checkbox, click on any panel you'd like to edit to select it, and make all changes as you would normally do. Here, I've applied a texture to the outward-facing surface.
NOTE: Edit Linked Parts and textures don't work with the Personal Edition; all other changes will work: try editing shape or size. This is due to a subtle permissions bug, and can't be fixed. - Finally, "touch" the panel you just edited. Because you have an edit window up, the easiest way to activate a touch is to RIGHT-CLICK the panel you just edited, and choose TOUCH. All parameters will automatically be transmitted, and the changes will spread to the rest of the skirt.
The Personal Edition will not be able to spread textures, because of the permissions system in place. However, all other prim parameters will be transmitted. - Voila! The entire skirt is updated, and you didn't have to go around dragging any panels to the ground or scripts from inventory.
LoopRez Deluxe video
Here's my first attempt ever at saving a movie and sending it to YouTube. It came out both bigger and blurrier than I thought it would. But for now, it might give you an idea of what LoopRez looks like in action.
This is what you're looking at, in the video:
This is what you're looking at, in the video:
- "touch" the rezzer, to generate 24 panels
- initially, they are all scattered and unlinked
- select all and link
- LoopRez Deluxe detects the link, and zips them all into a skirt shape, with panels all facing the correct direction
- the "flare" angle is changed a few times
- the "width" is increased a little bit, and then decreased again
- the "DropScript" is used, using attributes from both of the panels lying off to the side
- first the "shape" is changed to make it longer
- then the "flexibility" is adjusted
- finally the "texture" of the black panel is transferred
- the skirt is "finished"
- all the scripts are removed from the skirt panels
- the completed skirt is left linked to a root prim that is perfectly centered
- voila!
Introducing LoopRez Deluxe
Helpful Links
- Introducing LoopRez Deluxe (this document)
- LoopRez Deluxe video
- LoopRez Deluxe Tutorial (best place to start!)
- LoopRez Deluxe, command list documentation
- LoopRez Deluxe FAQ (also includes notes on known issues and planned improvements)
- How to re-configure the Creator of created skirts
- Introduction to the "Skirt Progammer"
- Locations to obtain LoopRez products
- Comments on LoopRez
The original LoopRez is a freely distributed script to simplify placing objects precisely around the perimeter of an ellipse. It's particularly helpful for panel placement in flexi prim skirts. The script has been mentioned in a Natalia Zelmanov's great blog on SL clothing design, and has been used in a TUi class on making skirts in SL.
Although the LoopRez script is fairly easy to use, it isn't optimized for repeated parameter adjustment, to get just the look desired. For example, making the skirts "poof" out a little bit more, changing the number of panels, tweaking how long the skirt is, or adjusting flexi prim properties, all gets rather tedious.
LoopRez Deluxe
LoopRez Deluxe was designed to be as flexible and powerful as possible, streamlining the process, to minimize tedious adjustments and script editing. The goal was to achieve real-time, interactive adjustment of the final product.
Here's a video of LoopRez Deluxe in action.
Ms. Zelmanov trying out the new LoopRez (oh, and the cool Captain's outfit is courtesy of Miss Virrginia Tombola):

Here are some of the new features:
Chat commands
Speaking commands allows on-the-fly modification of all the basic LoopRez parameters. In other words, as you chat a command, the skirt panels will interactive shift and rotate into their new positions, so you can immediately see the adjusted final product.
Parameters that can be changed interactively with chat commands include: number of skirt panels, side-to-side width, forward-to-back depth, how much the panels "flare" outwards, an optional increase in flare angle in back (*NEW!* ) to minimize panels emerging from the upper thighs of avatars.
Panel parameter adjustments: the Parameter Template DropScript
If you've ever wanted to try out different "flexi" properties, lengthen a skirt panel, or change a texture, the Parameter Template DropScript should speed the design process significantly. Just rez a prim, which has some desired primitive property in it, and drop the "template" script onto it. "Touch" the panel, click a button in the resulting dialog window, and your adjustments will be immediately reflected in your skirt.
Nearly every prim property can be adjusted: shape, size, color, texture, flexi, lighting, etc. It's more clear when seen, than when described.
Update with version 0.81: "Edit Linked Parts" on a skirt in progress
With LoopRez Deluxe v0.81, "Edit Linked Parts" can be used to edit a panel of a rezzed skirt in progress; "Touching" the edited panel then propagates the change through the rest of the skirt. For the Commercial Edition, all prim parameter attributes are transfered. However, because of permissions issues, with the Personal Edition, all parameters except texture are transfered. Textures can still be set using the DropScript.
Update with version 0.81: the Skirt Programmer
An in-development "power user" function that is being included in early form with version 0.81, the Skirt Programmer is a tool that allows the use of Notecards to program in smoothly varying skirt panel lengths and color gradients around the circumference of the skirt. This feature may further evolve, and user input for potential new features and uses are always welcome.
Improved panel placement and rotation
Changing the "flare" angle of a skirt (how much it "poofs" outwards) will no longer make the panels embed inside or pull away from the avatar -- it stays nicely anchored at the waistline. This is done performing rotations from the "edge" of a prim skirt panel, rather than from the center.
The previous version of LoopRez would bunch up panels on the "ends" of an ellipse. The more elongated the ellipse was, the more pronounced the effect would be. A new option will insure that panels are placed evenly. This requires simulating some integral calculus in LSL, which is slow and rather memory hungry. This looks better when low "flare" angles are used; letting the panels bunch up on the ends looks better when there is more "flare."
LoopRez Deluxe rezzing the starting panels:

All linked up and ready for modifications:

How will LoopRez Deluxe be distributed?
The original LoopRez script was free and open source, a gift to the SL community. (Yeah, yeah, I know you can see what's coming...) LoopRez Deluxe won't be free. There is a product on the SL market which is being sold at L$5,750. Although few details are publicly available on its features, I suspect that LoopRez Deluxe will compare favorably.
I don't want to charge that much. I would rather that LoopRez Deluxe be available to more people to use and enjoy.
Two versions have been released, both with the same features, as far as functionality goes. Both versions will be COPY / NO TRANSFER, to keep the upgrades simple. All upgrades to both versions will be free.
- LoopRez Deluxe Personal Edition will create skirts, but the creator name will be stuck as me, and the skirts will be no transfer; i.e., you'll be able to create skirts for yourself, but not give them to others. For personal use only :)
- LoopRez Deluxe Commercial Edition, has instructions on how to make YOU the creator, and the skirts generated will be full permissions, to distribute as you wish.
Update: LoopRez Deluxe and the free script are now available at multiple locations.
Feedback
Finally, feedback is important to me. If there are features you would like to see, and if I'm able to incorporate them, I'd be willing to try. All upgrades will be free.
Helpful Links
- Introducing LoopRez Deluxe (this document)
- LoopRez Deluxe video
- LoopRez Deluxe Tutorial (best place to start!)
- LoopRez Deluxe, command list documentation
- LoopRez Deluxe FAQ (also includes notes on known issues and planned improvements)
- How to re-configure the Creator of created skirts
- Introduction to the "Skirt Progammer"
- Locations to obtain LoopRez products
- Comments on LoopRez
Again, thanks for your interest, and contact Ged Larsen with any questions!
Acknowledgments: thanks to Strife Onizuka, scripter extraordinaire, for freely providing the code for GetPrimitiveParams(), a function that obtains the primitive parameters for multiple settings at once, and packages it for use in llSetPrimitiveParams. Without this, "morphing" the skirt panels would have been much, much more difficult.
Sunday, January 21, 2007
loopRez, and people's "posteriors", part 2
The good news: after beating my head against the wall sufficiently, LoopRez has been re-coded to have a start at accommodating avatars with more generous posteriors, without causing the glitchy panels originating out of people's lower thighs and whatnot.
The bad news: it seems that properly integrating it with what I've been working on for the past month will require completely re-structuring 3 interacting scripts. [..sigh..] That's shuffling around more than a thousand lines of code (not counting the 500 or so lines of user interface "improvements" I deleted last week because they just didn't work well enough).
But anyhow, here's an exaggerated view of what a dress might look like, if designed for someone who had rather ample lower cushioning. (And no, it doesn't have to be quite so generous -- I just wanted the effect to be obvious.)


This last view is from directly above the center point, so you can see how much more the "back" panels on the left poof outwards.

Essentially, what you can now define is:
As mentioned previously, prims rotate from the center, not from an edge, so the trick was to counteract the tilting inwards of the top of a skirt panel, as the lower part was poofed outwards.
I think a very generous posterior angle could make it very easy to make one of those (and I had to do some serious Google'ing to find this term) Victorian era bustle dresses. (Perhaps I should have asked proper Victorian fashion advice from Miss. Virrginia Tomobola!) Although, if it got extreme enough, the back panels would have to be lengthened, I suppose, to reach the ground, which could also potentially be automated.
Bah. Now to rewriting everything.
The bad news: it seems that properly integrating it with what I've been working on for the past month will require completely re-structuring 3 interacting scripts. [..sigh..] That's shuffling around more than a thousand lines of code (not counting the 500 or so lines of user interface "improvements" I deleted last week because they just didn't work well enough).
But anyhow, here's an exaggerated view of what a dress might look like, if designed for someone who had rather ample lower cushioning. (And no, it doesn't have to be quite so generous -- I just wanted the effect to be obvious.)


This last view is from directly above the center point, so you can see how much more the "back" panels on the left poof outwards.

Essentially, what you can now define is:
- a baseline adjustable "flare angle" amount of poof that all panels have
- a separate adjustable "posterior angle" that is only applied in the back part of the skirt
- potential for tweaking how rapidly the extra "posterior angle" is applied, as you move backwards from the sides of the skirt
As mentioned previously, prims rotate from the center, not from an edge, so the trick was to counteract the tilting inwards of the top of a skirt panel, as the lower part was poofed outwards.
I think a very generous posterior angle could make it very easy to make one of those (and I had to do some serious Google'ing to find this term) Victorian era bustle dresses. (Perhaps I should have asked proper Victorian fashion advice from Miss. Virrginia Tomobola!) Although, if it got extreme enough, the back panels would have to be lengthened, I suppose, to reach the ground, which could also potentially be automated.
Bah. Now to rewriting everything.
Friday, January 19, 2007
rotations are evil
LSL rotation and quaternion math hurt my brain. Or, more dramatically, directly from the LSL scripting wiki:
So much for my initial assessment that "it would be easy"...
A code snippet to stare at. I wrote it, it seems to do something that will be useful, but I'm having trouble combining it with the rest of LoopRez. Essentially, if you toss this script into a box prim, it will appear to be rotating around an EDGE, instead of around the center, without resorting to the usual door-opening script trick of "cutting" the door. You have to combine the rotation with a compensatory position change. It really hurts my brain.
Oh I've got the lonely skybox, rotational, brain-exploding scripting blues...
"Quaternions are the things that scare all manner of mice and men. They are the things that go bump in the night. They are the reason your math teacher gave you an F. They are all that you have come to fear, and more. Quaternions are your worst nightmare." -- ConfutedIncorporating a proper correction factor for selectively angling out the back panels of a skirt while keeping the waistline smooth is not going too smoothly, primarily because I'm not that good at rotations, and because rotations act from the center of a prim and mess up where the tops of the panels end up.
So much for my initial assessment that "it would be easy"...
A code snippet to stare at. I wrote it, it seems to do something that will be useful, but I'm having trouble combining it with the rest of LoopRez. Essentially, if you toss this script into a box prim, it will appear to be rotating around an EDGE, instead of around the center, without resorting to the usual door-opening script trick of "cutting" the door. You have to combine the rotation with a compensatory position change. It really hurts my brain.
float flareAngle = 30.0;
integer n;
vector rotOrigin( rotation myLocalRot ) {
vector size = llGetScale();
return (llRot2Up(myLocalRot) * size.z / 2.0);
}
default
{
touch_start(integer num) {
for ( n=0; n<12; ++n ) {
rotation desiredRot = llEuler2Rot( < 0.0, flareAngle*DEG_TO_RAD, 0.0 > );
vector rotOriginBefore = rotOrigin( llGetLocalRot() );
rotation newLocalRot = desiredRot * llGetLocalRot();
vector rotOriginAfter = rotOrigin( newLocalRot );
llSetPrimitiveParams([PRIM_POSITION, llGetLocalPos() + rotOriginBefore - rotOriginAfter, PRIM_ROTATION, newLocalRot]);
}
}
}
Oh I've got the lonely skybox, rotational, brain-exploding scripting blues...

Subscribe to:
Posts (Atom)