VR Expansion Plugin

yeah but there was also additions in XY is what I was talkingabout.

might end up better as a separate component entirely if you want to just do that.

Ok here are the two files which at least on my pc work withouth swirl and drifting and it looks in my hmd like on video I just made now again to verify :smiley: I hope time those are the correct files. Sorry for that.

h. file
https://drive.google.com/file/d/14Ew…ew?usp=sharing

https://drive.google.com/file/d/1LW8…ew?usp=sharing

Yes the additions in XY should be ignored. I coulnt send you the PR request to the current branch for some reason so I thought you would just copy over the stuff I marked with “spaceharry”.

Its up to you if you would prefer to make it a new component. I for sure wouldnt have a problem with it.

How i can Rotate the player 90 Degree ?

Do you mean rotate the player spawn rotation? If so maybe ad +90 to the set control rotation node when spawning.
[TABLE]

I mean if i in Game i need rotate the player if i click on Facebutton!

i use now

but with that I rotate around a point, I want to rotate around myself without leaving my position.

And i found a Bug, if i overlap the capsule with my Motion Controller Epics Hands and hold Triger the Character Move forword.

Until recently, I’ve only used the navigation parts of plugin, which worked great. I want to add some interaction, and I’ve tried migrating the Vive_Pawn_Character into a new project from the example project and noticed I can’t grab anything, I’m not sure what could be preventing that. So if you migrated character, and all referenced assets, what else do you need to add to the project to get it to work. I added input mapping, collision trace channels, and game tags to the project settings. What else am I missing, or what do I need to reconnect after migration to a new project? I’m just trying to grab the BP_Pickup Cube and can’t do it.

If set control rotation didnt work as you imagine maybe use the plugins own teleport functionality but only for rotate.

Are you sure that gameplay tags migrated correctly? I had problem once when I migrated gameplay tags and they were all set to default, because in current ue version you have to migrate the gameplaytag list first and set them in the project settings correctly before migrating the character with related gameplay tags in it.

I migrated DefaultGameplayTags, then set it in the Gameplay Tag Table List in project settings. Is there anything else needed to migrate the tags correctly? What was getting set to default for you? “Relevant Gameplay Tags” on the Vive_PawnCharacter? What do you mean by " I migrated gameplay tags and they were all set to default"?

If I merge the Vive_PawnCharacter I customized from my project into the example project, it works fine. Is there something else in the example project that needs those tags?

Thanks!

When you migrate all at once (blueprint and tags) all the gameplay tags will be reset in all the blueprint nodes using gameplay tags. Check the grip blueprint nodes in your character to see if they look the same as in the original example test project.

There are utility functions now for , originally I just showed the actual blueprint nodes for how to rotate around the HMD as a pivot but decided later to make shortcuts for people.

Here are the options for doing it quickly:

PerformMoveAction_SnapTurn - performs a snap turn (fixed rotation) inline with the character movement system and replication. is specifically created to as there isn’t a direct method normally of custom movements that correctly path in with the movement system in networked games without the possibility of hitching / rollbacks due to packet order and server differences.

AddActorWorldRotationVR - just adds world rotation to the character but accounts for the HMD location as a pivot point.

SetActorWorldRotationVR - Same as above except it sets the rotation instead of adding to it

SetActorRotationAndLocationVR - Sets the actors rotation and location, taking into account the HMD offset.

As for grabbing yourself, you likely have your collision channels incorrect. The template uses a VRTrace trace channel for gripping and the player capsule ignores that channel, if you didn’t migrate that trace channel over then you’ll need to re-create it, make a new one, or change the logic for gripping, because the controllers don’t have any pre-set limitations, I let the end user have full control there.

Yes, they are the same. I don’t think the character is the problem.

I do have VRTraceChannel in Trace Channels. It is set to ignore on the player capsule, and overlap on the grab spheres just as the example.

Likely need to do the trace channel and tags before migrating the rest to be sure. Though it should work as is and others have done it the same way?

Regardless, if you already started on your own, I wouldn’t suggest migrating the template char over, it was never originally intended to be a base, but a set of examples. Its sooooo generic on interactions (overly so) because it lets people try just about anything with it. If I were to make a specific game however and knew my interactions and button layouts ahead of time, I wouldn’t use the template character for it, it has too much in it for most games and is overly complicated.

The basic GripObjectByInterface function run off of a trace or overlap lets you use all of the levers and dials and grippables as is. You would only need to handle per bone gripping if you wanted it and slot grip checks which is a self contained node (and AddSecondaryAttachment if you wanted two handed interactions).

I had/have plans on a very simplistic pawn just showing ground zero setup, but it keeps getting pushed back on my TODO.

Are those the only things required? I have the tags and trace channel in project settings. They were there before migration. Are the tags only referenced by the character?

Yes i read in the Wiki but i dont have the nodes!

I dont use the template i add the plugin to exist Project! I try make my controller colision all ignore but have still the problem

The tags were for the “generic” setup for the template, they are part of the grippables specifically for end users as you have to define gameplay tag interfaces in c++ and it made sense for them to have them.

The actual structure of all of the tags can be anything, it doesn’t have to be the one that the template uses, the template just checks them for the different button and use actions.

Trace channel is very useful as you can specifically allow or ignore hand checks to anything, but it also isn’t required to use the plugin, you could use any other trace channel and ignore object types instead.

Yeah I intend to do that, was just for some quick testing. I have successfully merged into other test projects, that’s why is frustrating. It just won’t work in the project I want it to, I have no idea whyy.

If you are on the template in any version since 4.17 yes you do. Movement actions are part of the character movement component. Get a reference to it and draw a line out to search.

The SetActorRotationVR nodes are part of the character itself, it should find them anywhere.

Drop a break point in the blueprints at the trigger press and see where it fails then, will let you know what is unhooked.

No i cant find it! i use 4.15

In The 4.18 Template from you i find it but not in my own 4.15 Project