Announcement

Collapse
No announcement yet.

Razer Hydra Plugin

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

  • replied
    Hi getamo,

    Thanks for the help. I forgot to download the source code for 4.1 and ended up not being able to compile the project. It's all fixed but I can't run your plugin in 4.1.1.

    I am very new in this kind of stuff could you please tell me the process of updating a plugin so it can work for the newer version? Does it only involves re-compiling the plugin?



    I am not much of a programmer but I am going to make a VR project. I already have the first oculus the second version is coming :P.
    I am thinking of making a Virtual reality horror game where the player hold a flashlight/gun with razer hydra. Could you please tell me if the plugin provide the necessary functions to achieve it?

    Cheers

    Leave a comment:


  • replied
    Hi getnamo,

    I have not had an opportunity to look at the source code you have available with your plugin, but it would be a good idea to make sure your source code matches the coding standards used at Epic (if you have already done this, then please disregard ). You can see our current standards here.

    Leave a comment:


  • replied
    Originally posted by LoveTune View Post
    A very cool plugin, but I get some error when loading it.

    Plugin 'HydraPlugin' failed to load because module 'HydraPlugin' could not be found.

    I've placed the Plugin folder in my project folder. The warning comes up after I enable the plugin just after the engine restarts.

    I'm using Windows but I have the same problem as the Mac user above.
    Make sure you are using the correct version of the plugin for your engine version (0.5.1 for 4.1 and 0.5 for 4.0.x). Also is the engine being used in 64bit mode?

    Originally posted by Strykeforce View Post
    I've also noticed the mixing up of the rotation's pitch, roll and yaw for the rotation, would be nice if they could be converted in the plugin to UE4's yaw, roll and pitch.
    This will hopefully be fixed in the next version, it's on the todo list.

    Originally posted by Alexander Paschall View Post
    This is very cool. I just talked with another engine tech and he's going to bring in his Hydra from home to check this out with. We're trying to get together an entire VR rig with whatever hardware we can find to see if it's achievable (also it's fun).
    Originally posted by Tim Lincoln View Post
    Great work on the plugin. I have brought in a Hydra I had at home that wasn't being used and it didn't take long to get some basic gameplay working with it. I look forward to seeing how you are able to keep improving on this.
    Glad to see Unreal taking a strong interest in VR! If you have any suggestions on how to improve the plugin to fit epic style better, I'm all ears
    Last edited by getnamo; 05-14-2014, 12:19 PM.

    Leave a comment:


  • replied
    I moved this thread to Engine Source & Github section.

    Leave a comment:


  • replied
    Great work on the plugin. I have brought in a Hydra I had at home that wasn't being used and it didn't take long to get some basic gameplay working with it. I look forward to seeing how you are able to keep improving on this.
    Last edited by Tim C; 05-14-2014, 10:15 AM.

    Leave a comment:


  • replied
    Originally posted by Kashaar View Post
    This is pretty awesome! I just integrated Hydra support into a fresh template project and am happily moving around and rotating two gizmos with the hydras

    Would it be helpful to anyone if I released my HydraInputActor-derived blueprint that handles almost all the things?

    One thing I've noticed, Hydras rotation and joystick structs seem to be not directly mapped to UE4's... for example, Sixense's Pitch is UE's Yaw, Yaw is inverted Roll, and Roll is inverted Pitch. Though I'm not sure if this isn't maybe because of the project template and perspective I was using.
    That would be very helpfull, I'm making my own implementation right now for simulating hands for a future VR game. Still a bit buggy so I'm wondering what you have made!

    I've also noticed the mixing up of the rotation's pitch, roll and yaw for the rotation, would be nice if they could be converted in the plugin to UE4's yaw, roll and pitch.

    Leave a comment:


  • replied
    A very cool plugin, but I get some error when loading it.

    Plugin 'HydraPlugin' failed to load because module 'HydraPlugin' could not be found.

    I've placed the Plugin folder in my project folder. The warning comes up after I enable the plugin just after the engine restarts.

    I'm using Windows but I have the same problem as the Mac user above.

    Leave a comment:


  • replied
    This is very cool. I just talked with another engine tech and he's going to bring in his Hydra from home to check this out with. We're trying to get together an entire VR rig with whatever hardware we can find to see if it's achievable (also it's fun).

    Leave a comment:


  • replied
    Originally posted by getnamo View Post
    Each blueprint event emits an integer called 'controller'. Simply add an IF statement and compare it to the controller you want (typically 0 for left, 1 for right) and any statements after that IF statement will only be for the controller you want. Additionally if you want to support people potentially misplacing their controllers, you can make a call to 'HydraWhichHand(int32 controller)' which will determine which hand the controller is being held in (returning 0 for left, 1 for right). This is determined by where the controller was last docked (which side of the dock it was).

    Fantastic Thank you

    Leave a comment:


  • replied
    Originally posted by filmicarty View Post
    Quick question -- this is really a fantastic contribution, it's a shame that Sixense aren't doing a bit more to support you with it.

    I'm having a problem with it on OS X, I follow the steps in the tutorial (drag the plugin folder to the project folder), and when I click Enable on the list of installed plugins, after restart I get the following alert:

    Plugin 'HydraPlugin' failed to load because module 'HydraPlugin' could not be found. This plugin's functionality will not be available, etc etc.


    I see in the folder structure there's a binaries folder for Win64. I'm sure I can't just rename this, but is there a good way to get binaries for Mac or is that not the cause of the error?
    Thanks, so much.
    The plugin currently only supports Windows. I haven't tried integrating other platforms yet, this is something I wish I had the time to do properly, instead I used a direct DLL bind which is windows only api. The plugin does come with the full source, so if you feel like you can integrate it, go for it! (it's probably only missing the sixense osx dylib which can be found in the latest SDK from sixense). Otherwise the best action would be to wait for the official plugin .

    Originally posted by PMBallisticDK
    Fantastic. I just made support for the hydra in my game with you'r plugin, it works really well and no crashes for me yet hehe. only one question tho, how do i separate the controller so i get Vector2D info from one stick only and not both via blueprint?

    Thank you very much for the plugin it's a life saver when sixsense is be a little slow.
    Each blueprint event emits an integer called 'controller'. Simply add an IF statement and compare it to the controller you want (typically 0 for left, 1 for right) and any statements after that IF statement will only be for the controller you want. Additionally if you want to support people potentially misplacing their controllers, you can make a call to 'HydraWhichHand(int32 controller)' which will determine which hand the controller is being held in (returning 0 for left, 1 for right). This is determined by where the controller was last docked (which side of the dock it was).
    Last edited by getnamo; 05-09-2014, 08:26 PM.

    Leave a comment:


  • replied
    Fantastic. I just made support for the hydra in my game with you'r plugin, it works really well and no crashes for me yet hehe. only one question tho, how do i separate the controller so i get Vector2D info from one stick only and not both via blueprint?

    Thank you very much for the plugin it's a life saver when sixsense is be a little slow.

    BallisticDK

    Leave a comment:


  • replied
    Quick question -- this is really a fantastic contribution, it's a shame that Sixense aren't doing a bit more to support you with it.

    I'm having a problem with it on OS X, I follow the steps in the tutorial (drag the plugin folder to the project folder), and when I click Enable on the list of installed plugins, after restart I get the following alert:

    Plugin 'HydraPlugin' failed to load because module 'HydraPlugin' could not be found. This plugin's functionality will not be available, etc etc.


    I see in the folder structure there's a binaries folder for Win64. I'm sure I can't just rename this, but is there a good way to get binaries for Mac or is that not the cause of the error?
    Thanks, so much.
    Last edited by filmicarty; 05-09-2014, 03:37 AM.

    Leave a comment:


  • replied
    This is pretty awesome! I just integrated Hydra support into a fresh template project and am happily moving around and rotating two gizmos with the hydras

    Would it be helpful to anyone if I released my HydraInputActor-derived blueprint that handles almost all the things?

    One thing I've noticed, Hydras rotation and joystick structs seem to be not directly mapped to UE4's... for example, Sixense's Pitch is UE's Yaw, Yaw is inverted Roll, and Roll is inverted Pitch. Though I'm not sure if this isn't maybe because of the project template and perspective I was using.

    In any case, great job on getting the Sixense stuff integrated! Plugin install was very simple and worked right away, so thanks for that!

    Leave a comment:


  • replied
    Originally posted by Marc Audy View Post
    Really great work, very excited to see people integrating technologies like this in to UE4.



    This was one of the things I was wondering about as well. If you're interested in extending the plugin to implement the input system integration I'd be happy to help point you in the right directions.

    One of the intentions of the way that FKey references inputs by FName is that adding new inputs in a plugin should be straightforward, however, it does not have a plugin based consumer of the API that I'm aware of yet.

    The first step would be to call EKeys::AddKey for each of the new keys, probably as part of your module initialization. Then in your module you would need a tickable object, potentially using FTickableGameObject which pumps calls to FSlateApplication. Probably OnControllerAnalog, OnControllerButtonPressed/Released, and possibly OnMotionDetected, though I'm imagining there is some work that needs to be thought out about how to make the motion functions work with the two controllers.
    Interesting, I'll definitely ask you some questions on this after looking at it sometime later this week. The concept is clear, but its always the devil in the details. I remember looking at this earlier, but without success in finding direct examples (all native keys and gamepad binds seem to be buried in the engine).

    Leave a comment:


  • replied
    Really great work, very excited to see people integrating technologies like this in to UE4.

    Originally posted by Mrob76u View Post
    Is it possible to use the joysticks and buttons on the Hydra with the input and axis mappings in the engine?
    This was one of the things I was wondering about as well. If you're interested in extending the plugin to implement the input system integration I'd be happy to help point you in the right directions.

    One of the intentions of the way that FKey references inputs by FName is that adding new inputs in a plugin should be straightforward, however, it does not have a plugin based consumer of the API that I'm aware of yet.

    The first step would be to call EKeys::AddKey for each of the new keys, probably as part of your module initialization. Then in your module you would need a tickable object, potentially using FTickableGameObject which pumps calls to FSlateApplication. Probably OnControllerAnalog, OnControllerButtonPressed/Released, and possibly OnMotionDetected, though I'm imagining there is some work that needs to be thought out about how to make the motion functions work with the two controllers.

    Leave a comment:

Working...
X