Announcement

Collapse
No announcement yet.

[Plugin] Leap Motion - Event Driven

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

    Ok so apparently tool tracking isn't working right in the latest Leap sdk, they are looking into the problem now at Leap.

    https://community.leapmotion.com/t/c...-24116/2291/16

    Comment


      I am interested in recording the data in real-time to an FBX animation. Anyone explored this possibility yet?



      View Diverted on Indie DB

      Comment


        Originally posted by coreyx View Post
        I am interested in recording the data in real-time to an FBX animation. Anyone explored this possibility yet?
        You can easily store the values the leap spits out in a list or a custom format, but I'm unsure of the details of how you would be able to bake that into an animation in fbx format. This and this may be relevant to your search.

        Originally posted by Fenra View Post
        Ok so apparently tool tracking isn't working right in the latest Leap sdk, they are looking into the problem now at Leap.

        https://community.leapmotion.com/t/c...-24116/2291/16
        Interesting, simply having tool tracking enabled should make your previous graphs work. I haven't personally tested tools, but there's a japanese blog(google translate is your friend) which has it working with this plugin; maybe try their approach?

        Originally posted by aerloth View Post
        Hello there! First of all, thanks for this great work that provides us this fantastic plugin!

        I have an issue to report: whenever I use the HAND function (OnFingerMoved->LeapPointable->Hand) - to get the hand reference and determine its type - UE4 editor crashes when I exit the game (launched in editor window, standalone window or separate thread - doesn't matter).

        When I remove the HAND node, everything behaves properly.

        In the imgur link I've attached screenshots of the node graph & crash report - although the report doesn't say anything helpful

        http://imgur.com/a/D6YiL

        Hope it's helpful!

        Cheers
        Good catch, this has now been fixed in 0.8.3.

        Originally posted by bullale View Post
        In OSX, I was able to get the plugin to show up in the list of plugins, but nothing works. Maybe telling is that, even after building, Plugins\LeapMotion\Binaries\Mac is empty.

        First, to get it to build for OSX:
        +Binaries\Mac\libLeap.dylib (copied from SDK)
        +Plugins\LeapMotion\ThirdParty\LeapSDK\Lib\Mac\libLeap.dylib (copied from SDK)
        modify Plugins\LeapMotion\Source\LeapMotion\LeapMotion.build.cs to load Mac\libLeap.dylib
        The project will then build, and in the editor Window->Plugins, under Installed>Input>Controller, there is Leap Motion Plugin v 0.8.2 and it is checked as enbaled.
        ...
        After some wrangling with XCode compiler (which uses a stricter form of C++ standards, had to change some enums), Mac is now supported from 0.8.3. Do note that I while I do intend to maintain some OSX support, it may lag quite a bit behind the windows development since it requires additional testing time which I cannot spare (if you wish to maintain the mac pre-compiles by all means make pull requests!).

        Key facts I learned for mac plugins to work:
        -.dylib is the equivalent of both a .dll and a .lib
        -UE compiler expects .dylib to be in the Plugins\LeapMotion\Binaries\Mac folder
        -XCode has a stricter (ISO) C++ than VC++, you cannot forward declare enums
        -You need to refresh XCode to compile plugin for mac. It may load without a compiled plugin .dylib otherwise; the plugin won't work as you've seen yourself, but will appear to be loaded (bizarre!)
        -Since it doesn't depend on the project root/binaries folder you can safely ignore it when installing the plugin for Mac.


        @vimaxus Closed your pull request to master and made a new branch called experimental, go ahead and make a pull request there. It is a branch designated for experimentation with new/additional features which may not yet be fully optimized. Should be the right place to have that blob tracking until we get performance up (maybe with multi-threading?)


        Update to 0.8.3
        -Now supports Mac OSX
        -Fixed Finger->Hand crash on exit
        -Update to Leap SDK 2.2.1

        See the usual place for the latest zip. Finger rotations left for another day...
        Last edited by getnamo; 01-07-2015, 01:52 AM.
        Plugins: TensorFlow - Socket.io Client - ZipUtility - Leap Motion - Hydra - Myo - RealSense - CIM

        Comment


          thanks for the update. Downloading...

          I hope you catch the finger problem easy.
          pd: excuse my english.

          lfw/paid modeling, painting, texturing.

          Comment


            Hey getnamo, I'm having trouble storing the leapController in the "Leap" variable, it doesn't seem to be compatible with my Optimize for HMD method. I used the default first person project and added everything to the character's blueprint. However the leap controller reference isn't compatible with the character reference. Do I have to create a new event graph or something, I would have assumed I could add it to an existing one? Thanks for any help and sorry if this is a noob question. Click image for larger version

Name:	dsagda.png
Views:	1
Size:	296.3 KB
ID:	1064943

            Comment


              Originally posted by Nstens View Post
              Hey getnamo, I'm having trouble storing the leapController in the "Leap" variable, it doesn't seem to be compatible with my Optimize for HMD method. I used the default first person project and added everything to the character's blueprint. However the leap controller reference isn't compatible with the character reference. Do I have to create a new event graph or something, I would have assumed I could add it to an existing one? Thanks for any help and sorry if this is a noob question. [ATTACH=CONFIG]21832[/ATTACH]
              I believe this is a 4.6 feature where it will automatically target the correct reference due to better context awareness. Notice that it says 'Target is MyCharacter_C(Leap) which means the correct component is already the target. If you want the graph to look exactly like pre-4.6 you simply drag from the Leap component as you've done and then search for the 'Enable Gesture' node which will attach it to your placed component reference.
              Plugins: TensorFlow - Socket.io Client - ZipUtility - Leap Motion - Hydra - Myo - RealSense - CIM

              Comment


                getnamo when you check finger rotation problem, if you can check for the elbow problem when the HMD/Head its moving would be nice. (the elbow move with head/HMD) thanks!
                pd: excuse my english.

                lfw/paid modeling, painting, texturing.

                Comment


                  Hey getnamo,

                  First of all, your plugin is excellent. I'm just starting to get in to using Unreal Engine. I'm working with a group on a VR project, and your plugin has helped us tremendously. I've worked with all the 0.7.x versions, but I recently transitioned to your most up-to-date version.

                  When using this on my laptop, I don't have the Rift to use at all times, so I hoped to do some tests while using the Leap Motion on a table top. The issue seems to be on the LeapRiggedCharacter model. The problem is that my hands are showing up too far back to be seen from the camera angle. I dealt with this in the previous versions of the plugin by adjusting the offset for the Leap data. I am wondering, is there somewhere I can perform a similar operation within the LeapRiggedCharacter model? I'm not finding where the Leap raw data is implemented within this content. I haven't had the chance to use the Rift with the newest version to see if the problem persists in HMD mode or not.

                  Comment


                    i think (not check) you can do this having a custom "LeafComponentShift"
                    pd: excuse my english.

                    lfw/paid modeling, painting, texturing.

                    Comment


                      Originally posted by WilBarnett View Post
                      Hey getnamo,

                      First of all, your plugin is excellent. I'm just starting to get in to using Unreal Engine. I'm working with a group on a VR project, and your plugin has helped us tremendously. I've worked with all the 0.7.x versions, but I recently transitioned to your most up-to-date version.

                      When using this on my laptop, I don't have the Rift to use at all times, so I hoped to do some tests while using the Leap Motion on a table top. The issue seems to be on the LeapRiggedCharacter model. The problem is that my hands are showing up too far back to be seen from the camera angle. I dealt with this in the previous versions of the plugin by adjusting the offset for the Leap data. I am wondering, is there somewhere I can perform a similar operation within the LeapRiggedCharacter model? I'm not finding where the Leap raw data is implemented within this content. I haven't had the chance to use the Rift with the newest version to see if the problem persists in HMD mode or not.
                      I'm glad the plugin is of use to you guys

                      Regarding the LeapRiggedCharacter, it is unfortunately a bit opaque in terms of documentation so I will try to explain a little bit how it is set up, and hopefully it will become clear why some things are set up as they are.

                      Originally posted by knack View Post
                      i think (not check) you can do this having a custom "LeafComponentShift"
                      What knack is referring to is a variable declared inside LeapBasicRiggedCharacter which is the parent of LeapRiggedCharacter. Adjusting this each tick is one way to adjusting leap component offset, but the convenience character is set up with this flexibility in mind. Bear with me for a little bit.

                      LeapBasicRiggedCharacter is where all the magic really happens, LeapRiggedCharacter simply has the split head attached, so if you didn't want the invisible but shadowed head you would subclass from the basic rigged instead of the rigged version, where you would have your custom mesh specified with its own animation blueprint.

                      If you go into that parent blueprint (LeapBasicRiggedCharacter), you will find that you can move the LeapDebugHand child actors. Simply moving the DefaultDebugHandActor will adjust your leap offset; imagine this as a virtual representation of your leap controller, so putting it roughly in the same distance/place as you have it in the real world will give you a 1:1 relation. For HMD this is automatically attached to your camera so it will be correct at all times, for table (default) mode we can't automatically deduce that offset, but you can now adjust it to fit your setup.



                      As an aside, you can also use the animation re-targeting system to have your own mesh use a copy of the animation blueprint included in the plugin so you retain the leap bind system as well as the animations, but attached to your own mesh+skeleton, I should probably make a guide for that at some point .
                      Last edited by getnamo; 01-09-2015, 06:18 PM.
                      Plugins: TensorFlow - Socket.io Client - ZipUtility - Leap Motion - Hydra - Myo - RealSense - CIM

                      Comment


                        Thanks for providing this plugin. Sorry if this is written somewhere but I couldn't find much info on handing multiplayer. It seems that when I play-in-editor with 2 clients and a dedicated server, when I move my character's hand, the other character's hand moves as well. This is quite surprising. I'm relatively new to UE4 multiplayer but I've gotten basic functionality like sprinting and movement mode working. Any suggestions on how to decouple the animations? Thanks.

                        Comment


                          Thanks for all the work. Could we get a plugin build for 4.7 preview 2?

                          Comment


                            I tried to install the plugin and it worked great. However when I want to do step 3A (set character and playercontroller) I don't get the leap options.
                            My plugin did install, I found it under the installed categories under plugins.
                            Any advice?

                            Comment


                              Originally posted by Kilrog View Post
                              I tried to install the plugin and it worked great. However when I want to do step 3A (set character and playercontroller) I don't get the leap options.
                              My plugin did install, I found it under the installed categories under plugins.
                              Any advice?
                              Did you copy the optional Content folder into your Project Root?

                              Originally posted by stt View Post
                              Thanks for all the work. Could we get a plugin build for 4.7 preview 2?
                              I don't pre-compile for preview builds, but you have the source and it is generally trivial to recompile for new engine versions (just add code to project and hit compile).

                              Originally posted by mankindforward View Post
                              Thanks for providing this plugin. Sorry if this is written somewhere but I couldn't find much info on handing multiplayer. It seems that when I play-in-editor with 2 clients and a dedicated server, when I move my character's hand, the other character's hand moves as well. This is quite surprising. I'm relatively new to UE4 multiplayer but I've gotten basic functionality like sprinting and movement mode working. Any suggestions on how to decouple the animations? Thanks.
                              You may be able to change the LeapBasicRiggedCharacter or your own leap blueprint to only execute on the first client through an if statement. Either way this shouldn't be an issue when you're using networked clients instead of on the same computer.
                              Plugins: TensorFlow - Socket.io Client - ZipUtility - Leap Motion - Hydra - Myo - RealSense - CIM

                              Comment


                                So sorry getnamo, I was a bit hastened when I tried this yesterday and didn't read properly.
                                Thanks a lot for a great plugin and the help!

                                Comment

                                Working...
                                X