3

Context

I have been attempting to set the angular velocity of a frisbee in UE4. This is easy. However, UE4 adds an angular velocity through the center of mass of an object relative to the 'world-axis' and not relative to the axis of the frisbee. Below the 'World' axis is red, and the relative axis is green, and the frisbee is blue. The Left is a sideway cross-section of the frisbee if you were to throw it forward and angled upward, the right is a 3-D representation of the same throw.

Issue

The issue is when the disc's relative axis and the 'world' axis are not the same. Since the disc rotates around the world axis, and not the relative axis, it will wobble whenever angular velocity is applied. Is there any way I can change to apply velocity via the local axis?

Thank you!

enter image description here

enter image description here

ZanyCactus
  • 79
  • 2
  • 10
  • What happens if you use `Transform Direction` on the axis to convert it world space before applying it as angular velocity? – Ruzihm Jan 26 '21 at 19:25
  • @Ruzihm that did not change the issue - I added the new blueprint to the post with your modification – ZanyCactus Jan 27 '21 at 15:17
  • no that's not what I suggested - I'm referring to [`Transform Direction`](https://docs.unrealengine.com/en-US/BlueprintAPI/Math/Transform/TransformDirection/index.html) and you'd use that to modify the (0,0,1000) and plug the result into `Set Physics Angular Velocity in Degrees` – Ruzihm Jan 27 '21 at 15:55
  • Okay, updated the image - is this what you are suggesting? This still did not change the flight. – ZanyCactus Jan 27 '21 at 17:04
  • More like [this](https://i.imgur.com/4DaMMKH.png), pardon the mspaint job – Ruzihm Jan 27 '21 at 17:30
  • @Ruzihm Just changed it to that ( updated the blueprint in the post) this made the disc not rotate at all, any ideas? – ZanyCactus Jan 31 '21 at 20:49
  • @Ruzhim, holy crap, yeah its working now - just changed the transform rotation to simply 1000 z rather than the out put from make vector. THANK YOU! – ZanyCactus Jan 31 '21 at 20:51

1 Answers1

2

You need to transform the axis from local space to world space. Something along these lines:

blueprint

Ruzihm
  • 19,749
  • 5
  • 36
  • 48