Announcement

Collapse
No announcement yet.

VICODynamics: a particle based Soft-Body physics Plugin

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    [MENTION=20126]VICOGameStudio[/MENTION]

    Wow!!! I did not think that would happen so quickly O_O
    Dude you're awesome!!!

    My mind is seriously blown right now (pun not intended, but I'll roll with it lol)

    Comment


      Originally posted by VICOGameStudio View Post
      Oh, that variable is only used during construction. I'll make a note in the code regarding that.

      And you are right, there isn't a helper function to change the rest length without going through each constraint and shortening it. It's on my todo list now, thank you!
      Do you know when you will be implementing that feature then?
      Sorry if I'm asking too much. Just wondering cause I could really need it for a gameplay function. Or if you have a workaround that isn't too complex it would be fine as well.

      I tried your suggestion on the tension rope. Something seems to work but it's rather acting weird now. It's not really pulling the object but now the rope extends beyond the rest length, it's like the particles get pushed out and the end just stretches. All I did was first attaching the rope(without its second particle attachment) to my arrow component. Then when it hit the target it detached the from the arrow component and attached to the simulating actor.
      I have a picture of the result:
      Click image for larger version

Name:	2016-12-01 18_30_24-ChildOfSpring - Unreal Editor.png
Views:	1
Size:	453.0 KB
ID:	1119192

      It keeps stretching the red part the further I go
      My Artstation: https://www.artstation.com/somethingunreal

      Comment


        Originally posted by SmthAwful View Post
        Do you know when you will be implementing that feature then?
        Sorry if I'm asking too much. Just wondering cause I could really need it for a gameplay function. Or if you have a workaround that isn't too complex it would be fine as well.

        I tried your suggestion on the tension rope. Something seems to work but it's rather acting weird now. It's not really pulling the object but now the rope extends beyond the rest length, it's like the particles get pushed out and the end just stretches. All I did was first attaching the rope(without its second particle attachment) to my arrow component. Then when it hit the target it detached the from the arrow component and attached to the simulating actor.
        I have a picture of the result:
        [ATTACH=CONFIG]119754[/ATTACH]

        It keeps stretching the red part the further I go
        Not too much at all! The only thing I'd say is if this topic goes for a bit longer we could switch to email and post here the resolved solution. Either way is fine with me.

        Regarding the function; how about I simply give you a snippet of code or BP logic of it for now and once the update is out you'll simply swap the call, cool? Let me know if you want C++ or BP logic.

        The stretching is most likely due to the disbalance of mass between the rope and the attached rigid body. The setup currently uses the relative mass as a way to give the attached rigid body sway if it's heavier. Can you tell me the mass of both, the rope and the rigid body? As well as the number of segments in the rope? Lastly, make sure the rigid body is set as Movable and is Simulating.
        Owner of VICO Game Studio LLC
        Twitter: @VICO_GameStudio
        Current Projects:
        Action Arcade Wrestling in collaboration with Dave Horn (@Action937) - https://www.actionarcadewrestling.com/
        VICO Dynamics Physics Library - Details: https://www.vicogamestudio.com/projects/vico-dynamics

        Comment


          Originally posted by Aumaan Anubis View Post
          [MENTION=20126]VICOGameStudio[/MENTION]

          Wow!!! I did not think that would happen so quickly O_O
          Dude you're awesome!!!

          My mind is seriously blown right now (pun not intended, but I'll roll with it lol)
          Thank you!

          Love the pun lol!
          Owner of VICO Game Studio LLC
          Twitter: @VICO_GameStudio
          Current Projects:
          Action Arcade Wrestling in collaboration with Dave Horn (@Action937) - https://www.actionarcadewrestling.com/
          VICO Dynamics Physics Library - Details: https://www.vicogamestudio.com/projects/vico-dynamics

          Comment


            Originally posted by VICOGameStudio View Post
            Not too much at all! The only thing I'd say is if this topic goes for a bit longer we could switch to email and post here the resolved solution. Either way is fine with me.

            Regarding the function; how about I simply give you a snippet of code or BP logic of it for now and once the update is out you'll simply swap the call, cool? Let me know if you want C++ or BP logic.

            The stretching is most likely due to the disbalance of mass between the rope and the attached rigid body. The setup currently uses the relative mass as a way to give the attached rigid body sway if it's heavier. Can you tell me the mass of both, the rope and the rigid body? As well as the number of segments in the rope? Lastly, make sure the rigid body is set as Movable and is Simulating.
            Yes sure, we can talk via E-Mail now if you want But I think it's kind of resolved now.

            Thank you it was the mass apparently. I had the mass of the rope too low. It was around 100 and the Cube had 177. Num segments is 25.
            I set it to the same as in your examples, so it's around 1700 now. Is it possible to give the rope less stretch? I set the Stretch property to 1 already, if I set it beyond that it bugs out for me. The rope feels a bit too elastic and bouncy to me.
            But it's a really cool feature thanks for that!

            Thank you for your support, I would really appreciate it if you give me some sort of Blueprint solution
            My Artstation: https://www.artstation.com/somethingunreal

            Comment


              Originally posted by SmthAwful View Post
              Yes sure, we can talk via E-Mail now if you want But I think it's kind of resolved now.

              Thank you it was the mass apparently. I had the mass of the rope too low. It was around 100 and the Cube had 177. Num segments is 25.
              I set it to the same as in your examples, so it's around 1700 now. Is it possible to give the rope less stretch? I set the Stretch property to 1 already, if I set it beyond that it bugs out for me. The rope feels a bit too elastic and bouncy to me.
              But it's a really cool feature thanks for that!

              Thank you for your support, I would really appreciate it if you give me some sort of Blueprint solution
              Awesome! Happy we got that sorted. As for stretching, try increasing the Constraint Iteration count and Simulation Iteration count in Project Settings->VICODynamics. If you don't use too many soft-bodies then you should not see a performance hit. The stretchiness is a part of how the solver works, I believe I described it a few posts back, but essentially it's the underlying algorithm which creates the softness.

              Regarding the rest length function: I started putting it together and realized that non of the UObject types are marked as 'BlueprintType' which means that they can't be stored in variables. D'oh! Is it an option for me to get you a C++ snippet which you can use as a static function in a BP Library class? If not, you'll have to wait until I get the update out. Sorry about that and thank you for helping me discover this bug!
              Owner of VICO Game Studio LLC
              Twitter: @VICO_GameStudio
              Current Projects:
              Action Arcade Wrestling in collaboration with Dave Horn (@Action937) - https://www.actionarcadewrestling.com/
              VICO Dynamics Physics Library - Details: https://www.vicogamestudio.com/projects/vico-dynamics

              Comment


                Originally posted by VICOGameStudio View Post
                Awesome! Happy we got that sorted. As for stretching, try increasing the Constraint Iteration count and Simulation Iteration count in Project Settings->VICODynamics. If you don't use too many soft-bodies then you should not see a performance hit. The stretchiness is a part of how the solver works, I believe I described it a few posts back, but essentially it's the underlying algorithm which creates the softness.

                Regarding the rest length function: I started putting it together and realized that non of the UObject types are marked as 'BlueprintType' which means that they can't be stored in variables. D'oh! Is it an option for me to get you a C++ snippet which you can use as a static function in a BP Library class? If not, you'll have to wait until I get the update out. Sorry about that and thank you for helping me discover this bug!
                Thank you!
                Is it difficuilt to implement? Don't really know any C++, only noob level python and some minor stuff.
                If it's too much of a hassle I can wait for the release.
                My Artstation: https://www.artstation.com/somethingunreal

                Comment


                  Originally posted by SmthAwful View Post
                  Thank you!
                  Is it difficuilt to implement? Don't really know any C++, only noob level python and some minor stuff.
                  If it's too much of a hassle I can wait for the release.
                  It should just involve you adding a C++ class inheriting from BlueprintFunctionLibrary and copy pasting a bit of code that I can post here for you. If that works, I'll get it up for you tomorrow or sooner.
                  Owner of VICO Game Studio LLC
                  Twitter: @VICO_GameStudio
                  Current Projects:
                  Action Arcade Wrestling in collaboration with Dave Horn (@Action937) - https://www.actionarcadewrestling.com/
                  VICO Dynamics Physics Library - Details: https://www.vicogamestudio.com/projects/vico-dynamics

                  Comment


                    Originally posted by VICOGameStudio View Post
                    It should just involve you adding a C++ class inheriting from BlueprintFunctionLibrary and copy pasting a bit of code that I can post here for you. If that works, I'll get it up for you tomorrow or sooner.
                    Okay sure, works for me!
                    My Artstation: https://www.artstation.com/somethingunreal

                    Comment


                      Originally posted by SmthAwful View Post
                      Okay sure, works for me!
                      Ok, well I found another little bug deeper in the code which means even my code snippet won't work.

                      Tell you what, drop me an email vdue4@vicogamestudio.com this way I can have you quickly test the patched version and help test the new helper function. Is that alright with you?

                      Sorry for the confusion, but I can't catch all of the bugs myself and really appreciate it when others reveal the ones I completely missed.
                      Owner of VICO Game Studio LLC
                      Twitter: @VICO_GameStudio
                      Current Projects:
                      Action Arcade Wrestling in collaboration with Dave Horn (@Action937) - https://www.actionarcadewrestling.com/
                      VICO Dynamics Physics Library - Details: https://www.vicogamestudio.com/projects/vico-dynamics

                      Comment


                        It's no problem! I sent you an email.
                        My Artstation: https://www.artstation.com/somethingunreal

                        Comment


                          Big thank you to [MENTION=489926]SmthAwful[/MENTION] for helping test the new "SetNewRestLength" helper function which allows for easily changing the ropes rest length at runtime:



                          This will be coming in the next patch which will be submitted to Epic this week.
                          Owner of VICO Game Studio LLC
                          Twitter: @VICO_GameStudio
                          Current Projects:
                          Action Arcade Wrestling in collaboration with Dave Horn (@Action937) - https://www.actionarcadewrestling.com/
                          VICO Dynamics Physics Library - Details: https://www.vicogamestudio.com/projects/vico-dynamics

                          Comment


                            Hey everyone! Wanted to address the lack of updates this month due to the holidays. Things will get back to the previous pace in January and shortly after that Feature Update 2 should be ready for release!

                            Happy holidays to you all!
                            Owner of VICO Game Studio LLC
                            Twitter: @VICO_GameStudio
                            Current Projects:
                            Action Arcade Wrestling in collaboration with Dave Horn (@Action937) - https://www.actionarcadewrestling.com/
                            VICO Dynamics Physics Library - Details: https://www.vicogamestudio.com/projects/vico-dynamics

                            Comment


                              Quick update!
                              Got an initial test of using a Skinned Mesh as the visual representation of a rope/cable:


                              I suck at modeling, so I'm using a long box as a test. I wanted to use a vine, but there is no way I can model that.
                              The process is fairly simple, create a non-skinned root bone [Has to have Root in the name], create sequential bones with sequential names [Bone0, Bone1, etc...] and make sure that each of the bones is it's own child of the root. That's it!

                              Still a couple bugs to fix, but this should make Feature Update 2.
                              Owner of VICO Game Studio LLC
                              Twitter: @VICO_GameStudio
                              Current Projects:
                              Action Arcade Wrestling in collaboration with Dave Horn (@Action937) - https://www.actionarcadewrestling.com/
                              VICO Dynamics Physics Library - Details: https://www.vicogamestudio.com/projects/vico-dynamics

                              Comment


                                Would it be possible to use this with a player character? for example if you wanted your character to be just a piece of cloth you manipulated with input velocities?

                                Comment

                                Working...
                                X