Blender

Blender

oIMIDo Feb 12, 2020 @ 4:09pm
Perspective Camera Orbiting Off Axis
When I rotate the perspective view, the horizontal axes never lie flat, as though the camera is sitting slightly skewed to the left. I have uninstalled and reinstalled and have searched through forums for any kind of insight without any luck.

https://imgur.com/a/BOw7gP2

How can I manipulate the perspective view to make the horizon completely horizontal?

Thanks ahead of time~
Last edited by oIMIDo; Feb 12, 2020 @ 4:10pm
< >
Showing 1-13 of 13 comments
still__alive Feb 12, 2020 @ 4:35pm 
Select the camera, go into the properties tab (on the 'n' side panel) for the object, and set the all the rotations all to zero. Then look at how your camera is oriented (should always be the same after setting rotations to zero but just in case) and rotate 90 degrees around the axis that runs through the side of the camera. Which should be 90 degrees around the x-axis.

That will make your camera perfectly level with the horizon.

Also, in that properties tab by the rotation fields there is a lock icon, if you lock the x and y rotations then you won't be able to accidently un-level the camera when you rotate it in the viewport. You can still change those values by typing in the rotation fields though. You might want to leave z unlocked so you can spin the camera around, rotating around z only won't cause your camera to go unlevel.

Screenshot of the properties tab below. Hit 'n' and you can find the same rotation fields in the right side panel that pops up.

https://steamcommunity.com/id/1039741023748920341324/images/?appid=767
Last edited by still__alive; Feb 12, 2020 @ 5:05pm
oIMIDo Feb 12, 2020 @ 6:15pm 
Originally posted by still__alive:
Select the camera, go into the properties tab (on the 'n' side panel) for the object, and set the all the rotations all to zero. Then look at how your camera is oriented (should always be the same after setting rotations to zero but just in case) and rotate 90 degrees around the axis that runs through the side of the camera. Which should be 90 degrees around the x-axis.

That will make your camera perfectly level with the horizon.

Also, in that properties tab by the rotation fields there is a lock icon, if you lock the x and y rotations then you won't be able to accidently un-level the camera when you rotate it in the viewport. You can still change those values by typing in the rotation fields though. You might want to leave z unlocked so you can spin the camera around, rotating around z only won't cause your camera to go unlevel.

Screenshot of the properties tab below. Hit 'n' and you can find the same rotation fields in the right side panel that pops up.

https://steamcommunity.com/id/1039741023748920341324/images/?appid=767

Thanks for the response. Problem is, that's only affecting a camera. I'm talking about the default perspective view (which isn't a selectable camera), and doesn't have a properties tab. I found a hotkey (Shift + Numpad 4 or 6) which rolls the camera in selected increments. Problem is, this doesn't level out at zero.
Last edited by oIMIDo; Feb 12, 2020 @ 6:19pm
still__alive Feb 12, 2020 @ 6:50pm 
◢ k r i s ◤ Feb 12, 2020 @ 6:57pm 
If your cursor is sitting where you want the camera to focus, you can just do this.
View > Align View > Center View to Cursor

This happens to me too when I drag the camera around a lot while working. Basically, I'll shift+middle-click and drag around for convenience and afterwards that gets the camera offset while orbiting the cursor.

I also tend to use the grave-accent/tilde key a lot more to navigate around, since we have those orbit-menus in 2.8x now.
Last edited by ◢ k r i s ◤; Feb 12, 2020 @ 7:06pm
still__alive Feb 12, 2020 @ 7:03pm 
Originally posted by ◢ k r i s ◤:
If your cursor is sitting where you want the camera to focus, you can just do this.
View > Align View > Center View to Cursor

This happens to me too when I drag the camera around a lot while working. Basically, I'll shift+middle-click and drag around for convenience and afterwards that gets the camera offset while orbiting the cursor.

I'm testing things right now, what you seem to be suggesting doesn't work for me. It centers on cursor, but if I've got the viewport camera (not the camera object) rotated this "center view to cursor" doesn't seem to be undoing the rotation.

Edit: Screenshot demonstrating the rotation I think OP is talking about.
https://steamcommunity.com/sharedfiles/filedetails/?id=1996078848
Last edited by still__alive; Feb 12, 2020 @ 7:17pm
still__alive Feb 12, 2020 @ 7:10pm 
Going into a front/back or left/right orthographic view resets the rotation to perfectly horizontal. But depending on why OP is asking for this, you lose that perfect horizontally level soon as you orbit the camera around again. If you just want to be rid of the annoying rotation, oIMIDo, then this should be perfectly fine. Tap 1 or 3 on the number pad.

If there is some other reason you are trying to get it "completely horizontal", you might be trying to solve the wrong problem.
Originally posted by still__alive:
Yeah sorry, I misunderstood that. Might I ask why you need the 3d viewport camera to be perfectly horizontal? [xyproblem.info]

Edit: That fly mode and walk (or FPS) mode doesn't reset the rotation.
Last edited by still__alive; Feb 12, 2020 @ 7:11pm
◢ k r i s ◤ Feb 12, 2020 @ 7:32pm 
My mistake. I didn't realize we were talking about rolling the navigation view and thought it was an issue of orbit offset.

OP, just navigate with the numpad or similar view-controllers if you want symmetry in your navigation-viewer. The navigator isn't rolled in the screenshot, it's just not perfectly aligned with any particular axis.
Sersch Feb 13, 2020 @ 7:56am 
There are two things that I know of that cause the viewport camera to roll horizontally:

1. Your camera orbit method is set to Trackball instead of Turntable. This shouldn't be the case in a fresh Blender install, but to make sure that's not the reason click on Edit -> Preferences -> Navigation. It's the first settign right at the top.

2. Your camera axis will be off if you align the camera locally with an object. That happens when you select an object and press the Numpad camera keys while holding Shift. If your camera is off, you can reset it by using just the Numpad keys without Shift, as the other posters have suggested.
phillippi2 Feb 13, 2020 @ 9:23am 
Select the object you want to focus on and press the . key. This centers the view orbit on that object.
The Renderer Feb 13, 2020 @ 11:55am 
That's just how perspective works. What is always "flat" is the *horizon*, not any of the axes. The x axis (the red one in your pic) is only ever absolutely "flat" if the y axis (the green one) goes up perfectly vertically. Since the 3D view is meant to be moved around a lot there is no point in implementing a feature to lock it into such a position. If you need that use a camera object or one of the orthogonal views.

Edit: Again, to clarify, your camera is NOT skewed or tilted in any way. This is the way it is supposed to work. You are looking at the wrong "line", the red line is NOT the horizon.
Think of the red line as a straight street on the ground, going from left to right. Unless you look at it perfectly perpendicularly, it will not be a horizontal line, even if your camera is perfectly leveled.
Last edited by The Renderer; Feb 13, 2020 @ 12:09pm
oIMIDo Feb 14, 2020 @ 3:56pm 
Hello everyone,

Basically the phenomena that I am experiencing is when I am looking directly down the x or y axis in perspective view. The horizon stays rolled slightly to the left. I managed to solve the issue by rotating my camera out of one of the locked views (ie. front, top, side, etc.)

Now when I am orbiting in perspective, the horizon line falls "flat" along the horizontal axis like so:

https://imgur.com/a/ZaeFPYj

Thanks
oIMIDo Feb 14, 2020 @ 4:07pm 
Originally posted by still__alive:
Going into a front/back or left/right orthographic view resets the rotation to perfectly horizontal. But depending on why OP is asking for this, you lose that perfect horizontally level soon as you orbit the camera around again. If you just want to be rid of the annoying rotation, oIMIDo, then this should be perfectly fine. Tap 1 or 3 on the number pad.

If there is some other reason you are trying to get it "completely horizontal", you might be trying to solve the wrong problem.
Originally posted by still__alive:
Yeah sorry, I misunderstood that. Might I ask why you need the 3d viewport camera to be perfectly horizontal? [xyproblem.info]

Edit: That fly mode and walk (or FPS) mode doesn't reset the rotation.

It's a matter of perspective. Imagine trying to look at an object while your head is slightly tilted to one side. Objects that should be lying flat or parallel to the ground become skewed and seem to be off of alignment (when in reality they aren't, my head is just crooked).

I understand how the object should look as I rotate around it, and if it doesn't lie flat as I cross over an axes, then the object looks off. Also in a very basic sense, as I rotate around an object to the left, the slope of each line increases. The opposite is true as I rotate to the right. However, the way it was behaving made it never level out.

I hope that makes sense. Luckily I figured it out (although I don't know why it was off in the first place).
oIMIDo Feb 14, 2020 @ 4:10pm 
Originally posted by The Renderer:
That's just how perspective works. What is always "flat" is the *horizon*, not any of the axes. The x axis (the red one in your pic) is only ever absolutely "flat" if the y axis (the green one) goes up perfectly vertically. Since the 3D view is meant to be moved around a lot there is no point in implementing a feature to lock it into such a position. If you need that use a camera object or one of the orthogonal views.

Edit: Again, to clarify, your camera is NOT skewed or tilted in any way. This is the way it is supposed to work. You are looking at the wrong "line", the red line is NOT the horizon.
Think of the red line as a straight street on the ground, going from left to right. Unless you look at it perfectly perpendicularly, it will not be a horizontal line, even if your camera is perfectly leveled.

The camera was indeed rolled for whatever reason. Even in perspective view, as I cross an axes, the opposite axis should lie perpendicular (or "flat"). One axis always remains fixed at a given angle regardless of where I place the vanishing point. The problem was, in my example, the cubes sides weren't lying perfectly vertical, they were skewed off of 90 degrees.
Last edited by oIMIDo; Feb 14, 2020 @ 4:15pm
< >
Showing 1-13 of 13 comments
Per page: 1530 50

Date Posted: Feb 12, 2020 @ 4:09pm
Posts: 13