Announcement

Collapse
No announcement yet.

[Plugin] Leap Motion - Event Driven

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

  • replied
    I just wanted to jump in and say that this looks fantastic. Great job, getnamo!

    Leave a comment:


  • replied
    I'm using the LeapRiggedCharacter but want to put the Leap stationary in front of me. I know OptimizeForHMD should be used for this. Can someone help me with:
    1. Which settings to use for OptimizeForHMD when using the Leap placed on a table.
    2. Where in the LeapRiggedCharacter is OptimizeForHMD called, so I know where to change the settings.

    Thanks in advance!

    Leave a comment:


  • replied
    Originally posted by getnamo View Post
    Yeah for mac the dylibs (.dll equivalents) are embedded inside the plugin (look for binaries inside the plugin folder). I'll have a look on a mac project to see if I can't replicate what you're seeing.
    Hi getnamo, did you manage to reproduce this issue on a mac?

    Leave a comment:


  • replied
    Originally posted by Nikatine View Post
    Ok, big ol' n00b question; I installed the update (0.9.3), and can simulate the leap motion movement on the brand new collision rigged character, but when I start VR preview, it spawns a whole new char, rigged the same way.

    Also, for some reason, tracking is way off, and articulation is terrible (jumpy, can't recognize everything). I've got the Leap Motion attached to the front of the Oculus, and ithe character just keeps skipping and crumpling in on itself. I'm under something of a deadline, so any help (in addition to your sweet sweet update) would be amazing. Thanks so much.
    VR preview should work right, maybe try to exit out of simulate before hitting play on VR preview. If that isn't the issue, remember that you need to plug in the leap NOT into the oculus usb port, but rather its own, since it is a bandwidth hog and will not be happy with shared bandwidth. The other thing to remember is that you need a pretty powerful computer to hit 75fps on the oculus. If you hit both of those and you see your left hand, your elbow->wrist should be 1:1 and very smooth. The hands may differ slightly due to rigged mesh geometry.

    Feel free to rescale bones if you want that fully 1:1 experience.

    Leave a comment:


  • replied
    Ok, big ol' n00b question; I installed the update (0.9.3), and can simulate the leap motion movement on the brand new collision rigged character, but when I start VR preview, it spawns a whole new char, rigged the same way.

    Also, for some reason, tracking is way off, and articulation is terrible (jumpy, can't recognize everything). I've got the Leap Motion attached to the front of the Oculus, and ithe character just keeps skipping and crumpling in on itself. I'm under something of a deadline, so any help (in addition to your sweet sweet update) would be amazing. Thanks so much.

    Leave a comment:


  • replied
    Originally posted by HardNor View Post
    is the leap bone type enum handled differently? because i can't replicate this https://developer.leapmotion.com/doc...ollerDemo.html

    and i cant find Functions like "Get Bone Position and Orientation"
    You're thinking about the official leap plugin found here. For documentation on the unofficial plugin (this one) look at the github repo readme

    Leave a comment:


  • replied
    is the leap bone type enum handled differently? because i can't replicate this https://developer.leapmotion.com/doc...ollerDemo.html

    and i cant find Functions like "Get Bone Position and Orientation"

    Leave a comment:


  • replied
    Originally posted by devel.bmad View Post
    Ehi getnamo! Thank you for the update, trying it out now.
    As concern this issue: it's still there with the new plugin, and I'm using a blueprint only project, so this shouldn't be the cause.
    As soon as I restart the editor, the game blueprint reverts to exploration character.
    By the way, I'm on OSX. Is it expected that the binary folder only contains the win dlls and not mac shared libs?
    Yeah for mac the dylibs (.dll equivalents) are embedded inside the plugin (look for binaries inside the plugin folder). I'll have a look on a mac project to see if I can't replicate what you're seeing.

    Leave a comment:


  • replied
    Originally posted by getnamo View Post
    Regarding the first issue it may be related to using a C++ character as a baseclass? If that is the case, the problem may be related to https://forums.unrealengine.com/show...l=1#post167217 to which the solution was to sub-class your C++ base character as a blueprint and then sub-class that blueprint to use your hydra component/interface. Still unsure why this error occurs, but it only occurs when the base class is derived from C++ not blueprint.
    Ehi getnamo! Thank you for the update, trying it out now.
    As concern this issue: it's still there with the new plugin, and I'm using a blueprint only project, so this shouldn't be the cause.
    As soon as I restart the editor, the game blueprint reverts to exploration character.
    By the way, I'm on OSX. Is it expected that the binary folder only contains the win dlls and not mac shared libs?

    Originally posted by getnamo View Post
    On the second issue, that shoulder position should only occur when you have your hand full stretched out. Just tried the plugin on 4.7.6 and it seemed to behave as expected. Try to get me a video of the specific problem so I can try to replicate the issue.
    Ok, I'll try to get a video and I'll be back

    Leave a comment:


  • replied
    Originally posted by devel.bmad View Post
    Ehi getnamo!! Amazing work, your plugin is absolutely great.
    A couple of strange issues on OS X and UE 4.7.4:
    1) Standalone game / Restarting UEEditor
    - I create a new first person project. Configure the leap plugin, select blueprint -> game mode -> pawn -> select pawn class -> leap rigged character.
    - Play in editor: I see the yellow hands and can use the leap controller.
    - Save everything.
    - Restart the editor: the pawn is reverted to the default blue FP character. Why?? I cannot seem to correctly save the game mode
    - Play standalone game: I see the default blue FP character and no leap. Is this normal?
    - Package standalone: I see the default blue FP character and no leap. (no error with the plugin, everything configured following your instructions)

    2) shoulder location
    When the hand is tracked, the shoulder always moves to the middle of the chest and in front of the character (see ss). Shall I configure some parameter?
    ...
    Regarding the first issue it may be related to using a C++ character as a baseclass? If that is the case, the problem may be related to https://forums.unrealengine.com/show...l=1#post167217 to which the solution was to sub-class your C++ base character as a blueprint and then sub-class that blueprint to use your hydra component/interface. Still unsure why this error occurs, but it only occurs when the base class is derived from C++ not blueprint.

    On the second issue, that shoulder position should only occur when you have your hand full stretched out. Just tried the plugin on 4.7.6 and it seemed to behave as expected. Try to get me a video of the specific problem so I can try to replicate the issue.


    Originally posted by robhamilton View Post
    Hi getnamo,

    First, thanks so much for your great work on this plugin. It's a fantastic resource.

    Like devel.bmad I'm also seeing some strange behaviors in 4.7.4 and now 4.7.5 with your plugin, both on Windows and OS X. Currently on both platforms I'm using the Unreal source compiled via Visual Studio and XCode respectively.

    After creating a new project based on the Epic 3rd or 1st person default templates, if I follow your basic instructions (copy the Binaries and Plugins directories as is to the project root) and change the default pawn class to one of your LeapRigged ones, your yellow convenience mesh doesn't replace the standard blue Epic one. This same sequence used to work in 4.6 just fine and still does with my older 4.6 examples.

    Another telling difference in 4.7.N is that the resources for your examples no longer appear in the Content browser when I follow this setup path. If I manually copy your Blueprints, Character and Materials folder (from within your Plugins > LeapMotion > Content folder) into the project root > Content folder, then I can at least see your content in the Content browser. However this leads to double entries in the Game Mode > Player Controller Class drop down.

    Perhaps the default pathing for 4.7.N has changed, and your file structure no longer is recognized the same way?

    I'm finding that if I load up another map in either a default 1st or 3rd person Epic blueprint project (such as one of the starter content maps) THEN your plugin will override the default character.

    Any idea what's going on? It seems something has broken with either 4.7.4+ or with a compiled code base?

    Thanks!



    -------------------------------------
    Rob Hamilton
    https://ccrma.stanford.edu/~rob
    @robertkhamilton
    Some templates now have characters placed directly in the map. They need to be deleted in order for your custom game mode character to be used.

    Originally posted by kdumovic View Post
    ...

    I tried the method above also to no avail. I just keep getting a value of 0.0. Maybe the return value is supposed to be something other than a float? I've successfully gotten sphere radius from the Leap on a web app with the leap.js api and it doesn't matter how you use it, if your hand is above it it should return a value other than 0 unless your hand is closed...
    This was my error, you found a value I missed linking up, this has now been fixed in 0.9.3. Unsure of how you want to use this sphere however as it changes with the curvature of your hand and it is probably not what you're looking for in terms of collision. Try out the new 0.9.3 update for easy collision.

    Originally posted by Spittygood View Post
    So I'm pretty noobie on this stuff.... Where do I find the Leap Event Interface blueprint that would have the Event Hand Moved? ...
    Leap Event Interface used to be found under blueprint props, since 4.7 this is now called Class Settings.



    You similarly go to Interfaces and click add->LeapEventInterface. After you hit compile, all the leap events will show up after you right click the event graph and type 'leap'. If you're using the convenience content the leap controller bind is placed in the LeapAnimBodyConnector. You can add leap motion events to another blueprint safely but you will also have to add the component in addition to adding the interface in order to receive the events.



    Originally posted by Spittygood View Post
    Again, I was trying to attach a collision sphere as a component to the character mesh, but this method doesn't appear to work with this interface (I saw this method on an unreal tutorial video where the sphere is attached to move around a large physics actor sphere)
    ...
    That may be the intent for kdumovic, but I was originally trying to use the method in this video:

    https://www.youtube.com/watch?v=uOy0...9pvhE&index=79

    I don't think this works with the basic rigged character, as the hand is instanced in the C++ code. I believe that you are correct that attribute from the leap page may be the correct way to get this interaction to work, but I am clueless on how to do it. I wanted it to work like the unreal video where you could punch a physics actor sphere.
    This method does work, but with a twist. All you do is attach the collision shapes to the skeletal mesh sockets. You do this by adding them as a child of the mesh and the selecting parent socket in the details pane.

    That said using the physics asset now provided in the plugin is much easier and you can still modify the physics asset to cover the range and sizes you need for your particular mesh.

    Leave a comment:


  • replied
    Update to 0.9.3
    -Added LeapCollisionCharacter which adds physics collision enabled by
    default. This can be enabled for other setups by using the PhysicsActor
    collision preset.
    -Updated PhysicsAsset used for collision
    -Removed old content
    -Fixed SphereRadius property link found on LeapHand

    This update should make it much easier for you all to add collision based interaction. You simply select the new convenience character called LeapCollisionCharacter and hit play. Your entire body is covered by a fairly accurate PhysicsAsset which you can modify to suit your needs.



    To change other sub-classes to support this interaction, simply change your skeletal mesh preset from character mesh to physics actor.



    Hit play and you will be able to push around any movable actors with physics enabled like so



    Here's an example of me playing jenga with no code changes, but simply adding rectangular shapes to push around.



    What do you think? Useful? Let me know!

    Leave a comment:


  • replied
    Originally posted by Slayemin View Post
    Click image for larger version

Name:	leap-sphere.png
Views:	1
Size:	58.0 KB
ID:	1075791

    I tried the method above also to no avail. I just keep getting a value of 0.0. Maybe the return value is supposed to be something other than a float? I've successfully gotten sphere radius from the Leap on a web app with the leap.js api and it doesn't matter how you use it, if your hand is above it it should return a value other than 0 unless your hand is closed...

    Leave a comment:


  • replied
    That may be the intent for kdumovic, but I was originally trying to use the method in this video:

    https://www.youtube.com/watch?v=uOy0...9pvhE&index=79

    I don't think this works with the basic rigged character, as the hand is instanced in the C++ code. I believe that you are correct that attribute from the leap page may be the correct way to get this interaction to work, but I am clueless on how to do it. I wanted it to work like the unreal video where you could punch a physics actor sphere.

    Leave a comment:


  • replied
    Originally posted by kdumovic View Post
    Does sphere radius for hand work? I am getting a constant value of 0.0. Other variables like pinch or grab strength work fine.
    My blueprint looks like this - [ATTACH=CONFIG]36888[/ATTACH]
    Could be a bug..
    Is this how you're using it?

    Leave a comment:


  • replied
    So I'm pretty noobie on this stuff.... Where do I find the Leap Event Interface blueprint that would have the Event Hand Moved? When you are calling for the hand and creating a print string this is simply for debug purposes? (i.e. this blueprint doesn't actually accomplish a physics collision event, but rather just reports what the sphere radius attached to the hand is in size)

    Again, I was trying to attach a collision sphere as a component to the character mesh, but this method doesn't appear to work with this interface (I saw this method on an unreal tutorial video where the sphere is attached to move around a large physics actor sphere)

    Leave a comment:

Working...
X