Announcement

Collapse
No announcement yet.

[Plugin] Leap Motion - Event Driven

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

  • replied
    Hi All,

    I'm wondering if anyone else is having a problem with gestures? I'm using "Event Hand Grabbed" and it seems like the leap only registers the gesture about half of the time, and only if the hands are located in a very specific location relative to the leap. I'm not sure if it's the leap itself, or something specific to my project or this plugin. Does anybody else have this problem, or know of a fix for it?

    Thanks,
    Pat

    Leave a comment:


  • replied
    Originally posted by mankindforward View Post
    Yes, I'm doing this on two separate computers. Two of everything, connecting over LAN. Movements are replicated properly, meaning Player 1 can move and Player 2 sees the him move. I'll keep digging but it sounds like this *should* work. Have you tested this scenario yourself? Or anybody else tried this? Perhaps I'm missing some configuration.
    Interesting. I do not have 2 leaps to replicate what you're doing, but based on my experience with networking you can choose specifically what should replicate and what shouldn't. You may be doing full actor replication instead of variable replication.

    If you use variable replication with hand/finger positions (e.g. AnimBody) then downstream they should affect the 2nd client only as expected. There are various approaches to what information gets updated over a network. A good primer on blueprint networking can be found here: https://www.youtube.com/watch?v=TbaOyvWfJE0

    Originally posted by Rasa View Post
    Needed your help how could I convert that mouse pointer to down direction and also I don't want camera to follow that mouse pointer
    You probably want to do an raycast originating from the hand's position in the negative Z axis. This would achieve what you're looking for

    Originally posted by Rasa View Post
    How could we do that Hand alone[Without character attached] for Leap motion.
    Already answered earlier.


    Originally posted by aretoon View Post
    Hey Getnamo,

    I just wanted to see if you could give me some direction on what I'm trying to do with your plug in. I want to assign custom functions to basic gestures. I.E. Swiping and rotating an object, pinching to zoom, or controlling the translation of an object by forming a fist and moving it. The goal is to utlize leap motion in showcasing products and having customers interact with it.

    I don't know if there are readily available sources for this, and as a beginner, I sometimes get extremely confused. How should I go about doing this? Where do I start experimenting? Which blueprint are the edits supposed to be done under? If you could give me your opinion as to how to do something similar and tell me the logic behind it I would really be grateful.

    Amazing job as always!
    Cheers,
    Artun
    You probably want to use the Swipe Gesture recognizer in a similar manner to



    See the github repo for more detailed documentation.

    Originally posted by Beunn View Post
    Hey Getnamo,

    Thanks for this amazing plugin !

    Can you tell me how to use it with C++ code ? (Listener with events, Controller...)

    Cheers,
    Beunn
    It would be similar to how its shown in the hydra plugin video with the main difference that you would add a leap component instead of a delegate subclass (leap plugin doesn't have this format) and you would set the interface to receive events via https://wiki.unrealengine.com/Interfaces_in_C%2B%2B.

    Originally posted by iparra View Post
    Hi all,

    I have been experimenting with the latest Leap Motion SDK, and the VR widgets in Unity.

    Here is the link:

    http://blog.leapmotion.com/introduci...lements-unity/

    Here is a video I recorded in Youtube: ...

    Hope we could see this kind of things in UE4 soon with Leap Motion. What do you think Getnamo??

    Cheers.
    These are great things, nothing is stopping you all from adding these kinds of widgets to the plugin, looking forward to seeing these things being tried.

    Originally posted by EVRTOP View Post
    How to put the reality of hand display
    The Passthrough effect seen iparra's video is being worked on however it is not yet ready for the plugin (need to solve 32bit textures first).

    Originally posted by Ittiam View Post
    Hi All,

    I am using a blueprint with Pawn as its parent class. I observe that the hand can be moved over a very limited space in the viewport. What is wrong? How to make the movement cover the whole viewport? Please help.
    See this post where we discuss how to change the origin of the leap in default mode.

    Leave a comment:


  • replied
    Hi All,

    I am using a blueprint with Pawn as its parent class. I observe that the hand can be moved over a very limited space in the viewport. What is wrong? How to make the movement cover the whole viewport? Please help.

    Leave a comment:


  • replied
    Hi all,


    I have been experimenting with the latest Leap Motion SDK, and the VR widgets in Unity.

    Here is the link:

    http://blog.leapmotion.com/introduci...lements-unity/



    Here is a video I recorded in Youtube:


    Hope we could see this kind of things in UE4 soon with Leap Motion. What do you think Getnamo??


    Cheers.

    Leave a comment:


  • replied
    Hey Getnamo,

    Thanks for this amazing plugin !

    Can you tell me how to use it with C++ code ? (Listener with events, Controller...)

    Cheers,
    Beunn

    Leave a comment:


  • replied
    Hey Getnamo,

    I just wanted to see if you could give me some direction on what I'm trying to do with your plug in. I want to assign custom functions to basic gestures. I.E. Swiping and rotating an object, pinching to zoom, or controlling the translation of an object by forming a fist and moving it. The goal is to utlize leap motion in showcasing products and having customers interact with it.

    I don't know if there are readily available sources for this, and as a beginner, I sometimes get extremely confused. How should I go about doing this? Where do I start experimenting? Which blueprint are the edits supposed to be done under? If you could give me your opinion as to how to do something similar and tell me the logic behind it I would really be grateful.

    Amazing job as always!
    Cheers,
    Artun

    Leave a comment:


  • replied
    Originally posted by Rasa View Post
    Hi Getnamo,

    Awesome Plugin, I got it works well and what I'm trying to do is ' walk through by hand gestures[Palm Pitch and Yaw] in Leap Motion' ,
    Now grab the Physics object using hand fingers and Placing it in desired position.
    Is there any reference to this or give some suggestions to do this. I'm Totally newbie to Unreal and blueprint
    Hi Getnamo.

    Finally I did some what with the help of this link now I can control Plus symbol[Mouse pointer] by left hand and pick the Physics object by LeapLeftPinch and Walkthrough is controlled by right hand. It is very difficult that picking the Physics object at the same time controlling the mouse pointer[Leap Yaw and Pinch gesture] in same left hand. So I planned if that mouse pointer is facing to down direction and it will move automatically if hand will move, is very easy to move on after picking the object.

    What I did is
    Click image for larger version

Name:	HP.jpg
Views:	1
Size:	258.1 KB
ID:	1065462
    I'm expecting
    Click image for larger version

Name:	MP.jpg
Views:	1
Size:	444.6 KB
ID:	1065463
    Needed your help how could I convert that mouse pointer to down direction and also I don't want camera to follow that mouse pointer
    How could we do that Hand alone[Without character attached] for Leap motion.

    Cheers...

    Leave a comment:


  • replied
    Originally posted by knack View Post
    anyone update to the last update? break something?
    Originally posted by Lord_Pall View Post
    Well, in 4.7 it doesn't compile .
    c:\projects\unrealengine\engine\intermediate\build\win64\inc\plugins\leapmotion\LeapHand.generated.h(18): error C4099: 'FMatrix' : type name first seen using 'class' now seen using 'struct'C:\projects\UnrealEngine\Engine\Intermediate\Build\Win64\Inc\Plugins\LeapMotion\LeapHand.generated.h(18) : error C4099: 'FMatrix' : type name first seen using 'class' now seen using 'struct'
    Originally posted by iparra View Post
    Lord_Pall, you can compile it, simply replace FMatrix as a class.
    To elaborate a little more on what iparra said...

    The first time you try to compile for a new target it will generate the headers, and the generated headers have the error. You can simply edit the generated headers and change the word "struct" to "class" on the problematic line. However, this does not work if you are packaging from within the editor because the headers are generated anew every time.

    This error comes from the implementation of
    Code:
    FMatrix ULeapHand::RotationMatrix(const ULeapFrame *frame)
    in
    Code:
    Plugins\LeapMotion\Source\LeapMotion\Private\LeapHand.cpp
    If you comment out that whole function, and the function declaration in the header (i.e. Public\LeapHand.h), then the error goes away. Of course that also means you can't access the hand's RotationMatrix anymore. For me this is OK (I only want position), but I guess this would be unacceptable for most.

    Leave a comment:


  • replied
    Lord_Pall, you can compile it, simply replace FMatrix as a class.

    Leave a comment:


  • replied
    Well, in 4.7 it doesn't compile .

    c:\projects\unrealengine\engine\intermediate\build\win64\inc\plugins\leapmotion\LeapHand.generated.h(18): error C4099: 'FMatrix' : type name first seen using 'class' now seen using 'struct'C:\projects\UnrealEngine\Engine\Intermediate\Build\Win64\Inc\Plugins\LeapMotion\LeapHand.generated.h(18) : error C4099: 'FMatrix' : type name first seen using 'class' now seen using 'struct'
    1>
    1> c:\projects\unrealengine\engine\source\runtime\core\public\math\Matrix.h(13) : see declaration of 'FMatrix'
    1> c:\projects\unrealengine\engine\source\runtime\core\public\math\Matrix.h(13) : see declaration of 'FMatrix'

    Strange error too. Matrix.h didn't change. Could be something honked on my end. Any ideas?

    Leave a comment:


  • replied
    anyone update to the last update? break something?

    Leave a comment:


  • replied
    How to put the reality of hand display

    Leave a comment:


  • replied
    Yes, I'm doing this on two separate computers. Two of everything, connecting over LAN. Movements are replicated properly, meaning Player 1 can move and Player 2 sees the him move. I'll keep digging but it sounds like this *should* work. Have you tested this scenario yourself? Or anybody else tried this? Perhaps I'm missing some configuration.

    Leave a comment:


  • replied
    Originally posted by getnamo View Post
    Thanks for the heads up. XCode seems to like a stricter definition of C++ so some forward declarations may need to be modified in some cases, will take a look at this come 4.7.
    Actually, I'm getting the same error in Windows too. There's another error that I just encountered when I attempt to build shipping (whether from Windows visual studio, XCode, or packaging from within Unreal Editor), I get the following:
    Code:
    Error	1	error C2719: 'in': formal parameter with __declspec(align('16')) won't be alignedd:\development\ue4projects\secondcentreout\plugins\leapmotion\source\leapmotion\public\animbody\AnimBone.h(31) : error C2719: 'in': formal parameter with __declspec(align('16')) won't be aligned	d:\development\ue4projects\secondcentreout\plugins\leapmotion\source\leapmotion\public\animbody\AnimBone.h	31	1	SecondCentreOut
    I hope whatever's causing these errors will fix itself by 4.7's official release, but if not, then I hope this at least a little helpful.

    Leave a comment:


  • replied
    Originally posted by mankindforward View Post
    So...over the network, Player 1's hand movements affects both character models on my client but not Player 2's. When Player 2 move their hands, they affect the movement of both characters on their client. Essentially the clients are separate but on the client, both models are being controlled by the same hand. I think the ideal behavior is to have the movements replicated between clients.
    Are you testing this on two separate computers? I don't think leap motion supports multiple devices on a single computer yet.

    Originally posted by bullale View Post
    Hi Getnamo,

    Thanks so much for getting this working in OS X.

    When I tried to compile the plugin in OS X, and in Windows too, using Unreal Engine 4.7 preview 3, I ran into the following error:

    Simply commenting out that line allows it to build.

    I know 4.7 preview 3 is not a build you're targeting; I don't expect you to resolve this. I just thought I'd bring it to your attention.
    Thanks for the heads up. XCode seems to like a stricter definition of C++ so some forward declarations may need to be modified in some cases, will take a look at this come 4.7.

    Originally posted by Rasa View Post
    Hi Getnamo,

    Awesome Plugin, I got it works well and what I'm trying to do is ' walk through by hand gestures[Palm Pitch and Yaw] in Leap Motion' ,
    Now grab the Physics object using hand fingers and Placing it in desired position.
    Is there any reference to this or give some suggestions to do this. I'm Totally newbie to Unreal and blueprint
    There are a couple of ways to do this. If you want to use a rigged model, you can attach collision boxes/capsules to finger/hand bones or sockets. Another way would be to use custom part meshes (with collision assets) of a hand and attaching them to bone positions reported by leap, this is how the non-rigged leap hands are done in Unity.

    Then you can cheat a bit by checking if your thumb and index finger are close to each other when you are close to an object and attach that object to the midpoint of those to have a more robust 'pick up and place' mechanism.

    Ideally for physical collisions though you should use bone/joint velocities instead of directly using positions as otherwise you may apply more force to the interactive objects than you intend to. I haven't had the chance to implement any collisions assets yet and it may take some time before I have time to do so.

    Originally posted by ArieCrow View Post
    Hey Getnamo
    Really enjoying your plugin. Great work there in updating and taking the time to get us through the motions (pun intended
    Have you had a chance to take a look at the new widgets leap has added to their sdk? They are for Unity right now, but do you think that can be applied to UE4 too? They are really cool and really practical for handling inventory or buttons.
    Would love your input on that.
    Glad your enjoying it!

    Widgets would require some assets which would have to be release essentially under MIT and we currently don't have any of those. All the tools are there to be able to implement it though and if you make some, make a pull request and they'll be included in the plugin; simply don't have the resources to cover everything myself

    Leave a comment:

Working...
X