How can I unlock camera from staying right side up?

I have a pawn with a spring arm/ camera attached. If I rotate character upside down camera does not follow. So character rotates but camera doesn’t even though camera is a child of capsule being rotated upside down.

It’s like it’s auto-correcting and only staying with “z” as it’s up vector.

You can see in attached image that camera and player are tilted off from one another. camera is a child of this pawn though, and I would imagine it’s supposed to inherit pawn’s rotation’s. Is there an option somewhere to unlock it from staying fixed z up.

By adding controller input’s for roll I can rotate control rotation. But doesn’t this effectively make character’s true axis’s change? So in picture above, I don’t want character to be rotated, He is infact pointed correct direction. His head points towards ceiling relative to him. For my purposes it would be cleaner if I could disable camera from staying oriented to control rotation, and only inherit it’s rotations from parent

Hey ,

Can you post a picture of your components setup for your character, please? Thanks!

So basically I’m doing away with “character” class and using only pawns now, because custom navmesh isn’t supported, in my game pawns can walk around on an inverted sphere. But because there is no point gravity support (or inverted point gravity for that matter) I’ve decided to use springs’ to keep my pawn’s stuck to inside of sphere. I rotate highest node for movement input, everything else follows. Which is perfect. However Camera lower in hierarchy Stay’s upright with it’s Z axis always point true north, but I want it to inherit parents rotation.

6340-cameraupsidedown2.jpg

What would be perfect is if I could always have camera’s up vector be pointed toward absolute center of this inverted world. Which is exactly 0, 0, 0.

Hey ,

reason your camera isn’t rotating with your character mesh is because spring arms are set to Absolute Rotation by default. In Components tab, select your CamSpring and look at Transform controls in Details panel. Click on Absolute Rotation and it will switch to Rotation. That should solve issue for you!

Best,

Hey thanks for looking into this, unfortunately it doesn’t appear to have worked. They were both (spring arm of camera, and camera itself) set to “rotation” and not “absolute rotation”.

What is strange is that if I rotate (Roll) control rotation then camera will follow. So it appears to be tied to pawn’s control rotation. But because my pawn is child of a node above, I don’t want to rotate it’s control rotation.

So you’re only rotating GGMesh_01 and not CharacterCapsule? If that’s case, you need to attach CamSpring to mesh.

No I’m not rotating pawn mesh at all. All of my rotation happens on very top node called “Main Pivot”. This is just a scene node that sit’s at 0,0,0 of world. Because my world is an inverted sphere, I use a spring to push it’s children ( pawn mesh/ camera) a certain distance outward. All I rotate is scene node component. Which rotates children. camera is a child of Character Capsule, which also has mesh as it’s child. So when Scene node compenent is rotated they all rotate with. But camera somehow stays level. I want it to follow parents like everything else does, but clearly it’s linked elsewhere to something.

I a diagram to help illustrate.

Hm, I might need to take a closer look at how you have this set up to properly answer this question (or enter it into our bug database if it’s not working way it should). Would you feel comfortable sharing your project or an equivalent test project in which same issue occurs?

I don’t have any problems with that. It’s pretty simple with what pertains to problem I’m having. How should I go about that? I think for most part it’s components setup that is causing an issue. So if you took a pawn class, Make root node of components a “Scene” Component, then add as a child a “Spring Arm”, then add to that as a child a “Capsule” shape, then as a child to that add another “Spring Arm” and finally as a child to that add a camera. For settings of these components: Highest level spring (outermost) give target arm length a lengthy value (mine is 55,000). capsule I rotated it 90 degrees so that up vector is now pointing along direction of Spring arm above it. Spring arm that is a child of capsule I rotated it 90 so it pokes out perpendicular to highest level spring arm, I also toggled “Use Controller View Rotation”. This should give you diagram below, All of my movement is done by rotating “Scene” node at top of hierarchy. So everything else should follow because they are all children. However when adding rotation into this “Scene” node, camera follow as expected but it does not maintain it’s relative rotation to parents. It stays level. Doesn’t matter if I’m Adding in Pitch, Yaw, or Roll. It stays levels. At this point you could try and add in a rotation to camera component and it won’t work. Particularly “Roll” of camera.

Argh, So I think I figured it out. It seems to be toggle “Use Control View Rotation”. This must have been locking me out from adding in value to it. When toggled off I just linked input axis right to add in rotation to camera and it’s rolling now. Woops. Thanks though.

Awesome! Glad you figured it out. I wonder how that got toggled on, though, as it should default to off.

EDIT: Oh, hah, I see where you said you toggled it on now =)