Jump to content

buubbleguum Emerald

Resident
  • Posts

    55
  • Joined

  • Last visited

Posts posted by buubbleguum Emerald

  1. I'm not sure how useful this is but if it is the same armature you may just be able to export the clothing item as a Collada, import into the file that has the different body and mesh fitted to that body, then use the transfer weights option in the weight paint tool and touch it up afterwards. May not be a perfect fix but at least you won't have to redo the rigging from scratch. 

  2. I would definitely study the shoulder topology as Arton suggested. 

    I'm not sure if you are already aware of this or not but I know the frustration of constantly going back and forth from the same project for over a year so I thought I would throw this out there in case. Most tutorials in blender only really cover the weight paint tool, but if you go to the Modifiers tab in properties and then allow the armature modifier to be active in edit mode, you can assign weights the old school way by typing in numbers manually or using a slider. Sometimes it works better that way when there are a few verts that are causing all the nightmares. Also, make sure you normalise all your weights as from memory I don't think that blender does this automatically.

  3. Sorry for the delayed response, I've had a crazy week this week. When I logged on today, the script I posted worked and resized both the boots. I'm guessing that perhaps the prims just needed to reset. However, I'm still grateful that I posted and for all your responses as I can now make sure I'm using the best practice and make them as user-friendly as possible. 

    On 6/1/2017 at 11:17 PM, Innula Zenovka said:

     

    Here's a fragment showing how I would handle the two listeners.   You have to add your own dialog box and handle the resizing.   Note that the boot generating the dialog and sending the llRegionSayTo message won't hear the message it sends.   That's why you have to resize it when the script it contains hears the dialog message.

    Message me if you want to, but I'd rather answer questions here so that other people who may find this thread in the future can see the questions and answers.    When I first started scripting, I found reading old threads really helped me understand how things work, since people were asking the same questions I wanted to about parts of example scripts I didn't understand.

    3

    Thank you so much Innula for taking the time to help me out :) I've tested out the script and it works beautifully.

     

    On 6/1/2017 at 11:17 PM, Innula Zenovka said:

    Message me if you want to, but I'd rather answer questions here so that other people who may find this thread in the future can see the questions and answers.    When I first started scripting, I found reading old threads really helped me understand how things work, since people were asking the same questions I wanted to about parts of example scripts I didn't understand.

     

    Understand completely, the forum has been a huge help.

     

    On 6/1/2017 at 11:44 PM, Rolig Loon said:

    Innula's schematic approach is what I would suggest myself.  Since we're focusing on good practice in scripting dialog, though, I would add one more useful component, a timeout provision.  This is important for a couple of reasons.  First, if the script will be used by several people (say, for example, in a vendor script), you'll need some way to be sure that a second user cannot accidentally give responses that the script will think were made by the first user.  Second, a script that is waiting for a user response can stall  -- locked, waiting for input -- if the user walks away without responding. Even if neither of those things happens, a timeout provision is good practice simply because it cleans up loose ends.  In my opinion, it is always useful to anticipate possible ways that a user can screw up and get there first.  That saves user frustration and avoids customer service calls.

    My modification of Innula's script would look something like this:

     

    2

    Thank you very much for the advice otherwise I would have overlooked this. Will definitely be keeping this in mind for future listeners.

     

    On 6/2/2017 at 8:30 AM, Berksey said:

    Oh, beautiful stuff, everyone! And Nova, I love stuff like that, too! I'm just not good at it yet myself, lol.

    And yeah, llDie() wasn't the best thingy to throw out there for that particular instance, forgive me. I might not have had enough coffee to remember you weren't deleting an object but a script in my hypothetical thingywatser... <-<; Can you tell I'm kinda new to this too?

    ^-^;

    hehe no worries xD hopefully we'll both be confident scripters in no time

  4. On 5/30/2017 at 4:56 AM, arton Rotaru said:

    Unfortunately I have no idea what is causing your issue. Though, if you set your LOD Factor to zero (Object slider all to the left in Advanced graphics, under Mesh detail), you will be able to see the lowest LOD all the time, hence it can be screen captured at a much closer distance.

    thanks for the tip, here are two photos, one showing the dodgy LOD and one of the same mesh with same LODs but scaled up slightly

     

     

    LOD ISSUE Snapshot_003_001.png

    LOD ISSUE Snapshot_002_005.png

  5. On 5/30/2017 at 0:31 AM, Rolig Loon said:

    This is true and, in general, a good idea.  It's not necessary in this case, however, since you are not intending to close the channel (with llListenRemove) or switch it on and off (with llListenControl).  Keep it in mind, though, because there will be many scripts in which you do want to close or suspend the channel -- for example, to script a time out response or to guarantee that successive users of the script always get different channels for a dialog.

    I'd also note in passing that it's probably not necessary to add the filter:

    It's unlikely that someone other than the owner is going to be sending an intelligible command on the specific channel you have chosen.  It certainly doesn't hurt, but it's probably overkill.

    Neither of these comments is meant to indicate that these choices are "right" or "wrong".  They are matters of personal preference.  I'm only pointing them out so that you are aware that you have the choices.

    Thank you for the information :) I think that those options will come in handy for a script I'm working on at the moment using dialog menus with listen channels so that they are not constantly running. I appreciate the input

  6. Thank you for your responses. 

     

    I think I understand what you are saying Innula about to create a separate listen. I'll have a look on the LSL portal and see if I can work something out otherwise do you mind if I send you a PM to clarify further if I run into trouble? 

     

    Berksey, I'm a complete noob when it comes to scripting actually xD I hadn't thought of adding a script clean-up option but have included a listen remove. From what I understand from the wiki adding the llDie() will delete the script but not the attachment itself whilst it is attached? Tbh I was hoping to sell the boots once I had worked out how to create a stable resizer so I'm not sure if it would be a good option for customers if they weren't able to resize them again after purchase, though at the same time I wouldn't want to have any unnecessary lag caused by them. I hope I've understood what you were trying to say correctly. 

     

    Here is a copy of the script without the changes suggested by Innula:

     

    integer dialoglistener;
    vector DefaultSize = <0.279,0.146,0.589>;
    
    default
    {
        state_entry()
        {
    
        }
    
        touch_start(integer total_number)
        {
          dialoglistener = llListen(16584,"","","");
            llDialog(llGetOwner(), "Select an option", ["Default","+0.1","+0.05","+0.01","-0.1","-0.05","-0.01"], 16584);
        }
    
        listen (integer channel, string name, key id, string message)
        {
            if(channel==16584) {
            if (message == "Default")
            {
                llSetScale(DefaultSize);
            }
                  else if(message == "+0.1")
                {
                     llScaleByFactor(1.1);
                }
                 else if(message == "+0.05")
                {
                     llScaleByFactor(1.05);
                }
                 else if(message == "+0.01")
                {
                     llScaleByFactor(1.01);
                }
                else if(message == "-0.1")
                {
                     llScaleByFactor(0.9);
                }
                 else if(message == "-0.05")
                {
                     llScaleByFactor(0.95);
                }
                  else if(message == "-0.01")
                {
                     llScaleByFactor(0.99);
                }
                
                llListenRemove(dialoglistener);
            }
    }
    }

     

  7. I'm new to scripting so I'm not really sure what the best way to do this is. I'm trying to make a resize script for a pair of boots, but can only find examples of scripts that resize link sets. I have a llDialog and llListen function set up so that I can resize the boots and also return them to the default size. I copied the same script into the other boot so they are both listening to the same channel. When I click on one of the boots it resizes as expected but the other boot remains the same size. Is there a function so that they both react to the same function when an option is selected from the Dialog menu? 

     

    Any help would be appreciated :)

  8. Hello :)

    I am new to LSL so I'm not sure where I am going wrong. I'm trying to create a colour change hud for an outfit I've recently created. I have written two scripts, one that is in the object I want to change and another which is the button to change the texture. In the hud you can change the colour of 3 separate components of the outfit, top, skirt and boots. 

    Here is an example of the script inside the object:

    integer ch=46879421563;
    
    default
    {
         state_entry()
        {
           llListen(ch,"",NULL_KEY,"");
        }
    
       listen(integer channel, string name, key id, string msg)
       {
           if (llGetOwner() == llGetOwnerKey(id))
           {
               llSetTexture(llGetSubString(msg,0,-1),ALL_SIDES);
            }
        }
    }


     

     

    and the one in the button 

    integer ch=46879421563;
    
    default
    {
         touch_start(integer total_number)
        {
           llSay(ch,"6de65ebe-5fef-7f52-dd05-da49df98833c");
        }
    
    }

     

    Each separate item has their own unique number in the integer "ch" but for some reason, some of the buttons end up changing more than just the object with the same channel. 

    any help would be appreciated

  9. I have created an entire rigged outfit using blender. I have created different LODs for this outfit which are mostly working fine except for the top. When I zoom out it is severely distorted. I'm confused as to what is wrong as I have made the top in several sizes and only 2 of the sizes seem to be distorting, the rest look fine. 

     

    Here is a screenshot. 

     

     

    LOD ISSUE Snapshot_001.png

  10. FIXED: I feel a bit silly now but I believe it's because I had made some changes to the topology and forgot to update the uvs

     

    Hi, 

    I have tried looking on the forum and I just cannot work out why I am getting this error. I created a skirt in blender, which I have uploaded to second life multiple times for testing and all times it worked fine. Today I have been getting the DAE Parsing Error while uploading. I have the same mesh in a few sizes, the xxs small version was giving me the same error but I somehow managed to fix it (no idea what I did). Now when I try to upload the same mesh but scaled up I get the error. Second life will also let me upload my other LODs fine. I have tried applying scale and rotations in blender, changing the name of the file, exporting it to desktop and I have checked that all the normals are facing in the right direction. I know that exporting it as a .obj then to a .dae will fix the problem but I don't want to have to rig my mesh all over again. 

     

    I've included a photo of the skirt in blender

     

    Error thingy.png

  11. Hello, 

    I am looking for a download for the avatar skeleton including the collision bones. I have tried the link on the wiki site in multiple browsers but the link appears to be broken. Does anyone know where I can download the mesh with all the bones as a file that can be imported to blender? 

     

    thanks :)

  12. I would reccomend opening the textures in phtoshop or gimp and using your ambient occlusion bakes as a reference add some hand painted shadows, highlights and wrinkles then play around with blending options and opacity. Try adding some shading around the sides of the mesh and under the breasts. 

  13. Hi everyone, 

    I need some help with weight painting in blender on a simple mini-skirt mesh. I've done my best to get it looking as good as possible however, its still not as "clean" as I would like it to be. If anyone is interested in helping me I would be happy to send them a copy of the .blend file so that they can have a look at it themselves and tell me where I went wrong. 

     

    Thanks :) 

  14. First off I'm not posting this in the right section of the forums, but I need help with blender and this is where I would usually turn. 

    I've been following a tutorial to make a pair of seamless shorts. It involves using two different UV maps and then baking the texture that is created using one map onto the standard SL UV maps that clothing creators use. You can find the tutorial here!! I was able to use this tutorial on a pair of pants I created in the past and it worked fine, but now no mater what I do, when I bake the texture it is always rotated 90 degrees. Here are some pictures to give you a better idea.

    These are the shorts on the custom UV:

    asdfagah.png

     

    and the shorts after I try to bake them on the SL UV:

     

    BlenderProblem.png

     

    If anyone knows what I'm doing wrong or any way I could fix this it would be appreciated :)  

  15. This is how my skirt looks at the moment after editing a bit, still not perfect but slowly getting there. When you click on the brushes to change between add, subtract and blur my brushes just say "f brush. Any way to fix this?

     

    Skirt.pngbrush.png

  16. I've actually realized all my brushes, e.g blur, add, subtract, . have been replaced by other brushes which do nothing. How can I fix this? and thank you to everyone I really appreciate the help

  17. Thank you for the response. The leg moving really heavily was one issue that I was having so I'll try turning the weight down. I'll also have to try normalizing the weights. I'm struggling with just the over all weighting, nothing is turning out the way I want so it's hard to focus on the spefcifics. I suppose you can see in the last image how the mesh is cutting into the avatar and how the mesh over all looks messy when the avatar is posing. I'll have to utilize some of the advice you gave me and see if it works

  18. Ok so this is the second time I've asked for help with this. I have been attempting to finnish this mesh for over a month now and I just can't seem to rig it. Of course while I have spent all this time rigging it there has been a few uploads on the Marketplace of skirts that are very similar (just my luck huh?). Any way I thought I would include some more images of my weights I'm using and what the skirt looks like animated. I'm using blender 2.63. I have watched many tutorials including the rigged mesh series by ashasekayi. I just need some one to point out what I'm doing wrong.

     

    2.png

    Untitled4.pngUntitled5.png

     Untitled5.pngUntitled.png

×
×
  • Create New...