Physics Grasping hands left hand seems to grab things with an incorrect offset compared to the right hands grasp… Is normal? It seemed to happen in the default template too.
Also having an issue where if letting go and grabbing an object in the same frame with the left hand will rotate and scale it down to it’s default transforms I believe it’s using the controllers transforms., but the right hand keeps the item held in position fine.
What would be the right way to drop only 1 item from multiple items being held in the hand? If I have just one item drop, the grasping hand acts as though it let go of the original held item. What would be the best way to set up, to let a single item drop from the phys grasping hand, while not breaking the originally held items grasp?
I don’t remember any left hand offset no, but it is a separate skeleton entirely (since inversed physics are broken), the ideal left hand would be a mirrored and flipped version of the right but I don’t have one of those to work with. You may need to adjust the palm sphere a bit, also the gripping animation has some offset to it that is manually removed that the right hand doesn’t have. The non physics version should obviously be without the issue, I can’t take a hard look at it at the moment without recompiling shaders in 4.25.
Dropping and gripping before the lerp back to the hand finishes could be a bad edge case yeah, you may want to delay until the hand has returned to resting before allowing another grip, or not return back for a frame or so. Its not physically possible to drop and grip in the same frame physically so I assume you are manually doing it.
Only change animation state when the hand has zero held objects or not the one it curled around, its obviously going to be based on some game logic though depending on which one you actually curled around, you’ll need to put in your own logic to handle that, the grasping hands are an example, not a full fledged system, they are intended to be expanded on and be a baseline.
They don’t just start further away, but one of the hands can get stuck in the floor as well upon start of game, until I start using the controller input, and then the hand seems to fly back towards me. is using Grasping Hands, btw, so not sure if there is something to be tweaked when using that mode.
Sorry, not sure what you mean by re-zero’d base with 4.25. I am using 4.25 with SteamVR, of course, though.
No that entirely sounds like the hand isn’t tracking yet in steamvr.
Calling DropAndSocketGrip and providing a relative transform to the target parent and a reference to the target parent is all that is required. It will drop the object and attach ti at the given transform. The vive character in the template uses it for anything that returns true and a parent from the RequestsSocketing query.
I’ve included the needed modules in the build.cs file and fully written out the path for the GrippableActor.h, deleted the binaries, intermediaries and all these things, and rebuilt the VS files.
Am I just doing wrong, and these plugins are meant to be used some other way? I’ll admit I’m not used to referencing plugins directly, and most of my C++ experience is purely with the standard Unreal codebase.
The grippables have the GameplayTag interface embedded in them since you can’t do it in BP. If you want to make an extension to them you need to include the “GameplayTags” module in your private or public dependency modules list in your build.cs or it will fail to find the function definitions.
Unsure if is a UBT quirk or not as to why its not linking correctly without manually including that module in references even though the plugin declares it.
Ah yes, that did it. Tried sticking GameplayTags stuff in the include, but did not actually think to put them in the build.cs, even though it’s obvious in retrospect. Thanks for the assist, and for extremely useful plugin!
So I Fixed the Crash when server destroys session, just set all controllers to stop network voice before leaving.
But now I have Another Crash happening randomly during play , even if I’m the only one in the listening session. I think the crash happens rarely but when I teleport.
here is the crash report :
also in the editor, when i run the game it gives me these errors- the “ignore stop request for no user” when I start the game,
the “start network voice cant get the voice interface” when i run the start network voice or the stop network voice nodes,
and the “device is currently owned by another user” appears when i stop the game in editor.
Your error log rar is broken and I can’t tell you what you have wrong from the voice interface not loading. You’ll have to do some debugging there, isn’t a plugin thing and is an engine issue for you.
also I’m thinking it IS a plugin issue because it has everything to do with the start network voice and stop network voice nodes, please at least take a look at the log, I’m at my wits end here.
Start and stop networked voice calls ENGINE functions, they don’t do anything special themselves, I don’t have any voice related custom code in any of the plugins that I maintain, its all on Epics end. Your log also doesn’t show anything useful to me…its just log spam about voice packets.
I will tell you that historically the engines voip system has been pretty buggy and suffers from being tied into the engines bandwith caps, most users I know of moved to Vivox (fortnite included).
Hey mate, you are a lifesaver, thank you so much for plugin! I am having a slight problem when I migrate the files from the example template to my project because everything that is grippable suddenly does not work. The navigation works fine and I have checked all the project settings are the same as the example template. I am using UE 4.25.4 with the oculus 2 touch controllers. I can grip items using ‘B’ and trigger but it just pulls the object towards me and drops. Do you know what the problem might be? Here’s a short screen recording:
My guess is that you forgot to add the same gameplay tags that the example project had. Compare the gameplay tags section in project settings between the example project and your own to see what I mean.
yeah the template uses gameplay tag to provide a barebones per grippable button remapping setup for testing, if you port the content without porting the gameplay tags at the same time they get corrupted. Also it uses a custom trace channel to easily define what is and isn’t VR grippable, if you don’t port that config file definition then the traces will revert to a standard channel which may be blocked by things you attach to the hand.