x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Transform Local to World Axis

Hello everyone, I'm working on this problem now for days and since I am completely new to Unreal and Blueprints, I have no idea how to solve it. I want to open a sliding door with a HTC Vive Motion Controller by grabbing the knob of the door (StaticMeshComponent (Inherited)) and make it follow the Motion Controller. This already works with the Blueprint I posted below.

My Problem is, when I use this Blueprint class inside the Level and change the orientation of the door there (for example by 90°), the movement isn't working as it should, because the world axis and the local axis of the sliding movement are different. How can I adjust both axes so the doors sliding axis is every time the same no matter what orientation in the world the door has. I could change the location nodes inside the blueprint. but I want this to be done automatically. Is this even possible?

Thank you for your answers!

![Working Blueprint][1] [1]: /storage/temp/228467-bp.png

Product Version: UE 4.17
Tags:
bp.png (198.6 kB)
more ▼

asked Jan 26 '18 at 01:38 PM in VR

avatar image

CHR15T0F
1 1 2 3

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Hey there, ideally you want to move the doors in relative space instead of world space, that way it will work in any orientation. If your door is not the root component you can use the Set Relative Location node.

more ▼

answered Jan 26 '18 at 02:07 PM

avatar image

xlar8or
6k 163 130 305

avatar image CHR15T0F Jan 30 '18 at 02:24 PM

Thanks, that worked. But now I have another problem.

The Door knob is not following the Motion Controllers Movement as it should. On the one hand I got an inversed movement (moving controller to the right, door moving to the left), on the other hand it's not following in the right velocity and distance, the door is really slow and not following the same distances I make with the controller. I hope you understand what I'm trying to say.

avatar image xlar8or Jan 30 '18 at 02:51 PM

A video would be helpful to visualize the issue.

avatar image CHR15T0F Jan 31 '18 at 01:10 PM

Okay, I did a small video to show you my problem. Hopefully you can see now what I mean.

Video

Thanks in Advance for your answer.

PS: The Blueprint is nearly the same as above, the only changes are as follows: 1) I changed the last node to SetRelativeLocation instead of SetRelativeLocationandRotation 2) Neither the door nor the door knob are registered as the root component.

avatar image xlar8or Jan 31 '18 at 01:51 PM

Can you show me how you are moving the doors based on the input?

avatar image CHR15T0F Jan 31 '18 at 02:33 PM

Hey, thanks for the fast answer. I'm not really sure I am understanding what you're asking for but I'll try to answer.

First i'm moving the motion Controller inside the Box to enable the Input. Afterwards I pull the trigger to Move the Door. Still pulled I'm moving my hand with the controller and the door is moving in the opposite direction very slowly (as seen in the video). The door is fixed in the x and z-axis simulating the sliding, the y-axis is given by the movement of the controller. Is that what you meant?

The goal i want to achieve is to move the door with the same speed and velocity as the motion controller. The door should follow my hand movement one-to-one.

Thanks in Advance!

Blueprint

Component Tab

Door In Unreal Engine with Box

avatar image xlar8or Feb 02 '18 at 11:14 AM

If the motion controller is the root component then that relative transform will be the same as the world transform. I would say you need to track the delta location of the motion controller but from the camera's relative transform or something like that.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question