Extended Controls for Camera Gizmo #57234

Open
opened 2018-10-14 19:58:21 +02:00 by William Reynish · 30 comments

Currently, when switching to the camera view, it’s not immediately clear to users how to manipulate it. The camera must be selected, and it requires some difficult multi-step actions to be able to rotate or move the camera.

Additionally, from a camera operation perspective, users usually need a more optimized and precise way to only affect the pitch, yaw, panning, tracking and zooming, separately.

We can make this a lot easier by surfacing optimized camera manipulation gizmos right in the viewport when viewing the scene through the camera view:

Screen_Shot_2018-06-13_at_18.21.42.png

Currently, when switching to the camera view, it’s not immediately clear to users how to manipulate it. The camera must be selected, and it requires some difficult multi-step actions to be able to rotate or move the camera. Additionally, from a camera operation perspective, users usually need a more optimized and precise way to only affect the pitch, yaw, panning, tracking and zooming, separately. We can make this a lot easier by surfacing optimized camera manipulation gizmos right in the viewport when viewing the scene through the camera view: ![Screen_Shot_2018-06-13_at_18.21.42.png](https://archive.blender.org/developer/F4937010/Screen_Shot_2018-06-13_at_18.21.42.png)
Campbell Barton was assigned by William Reynish 2018-10-14 19:58:21 +02:00
Added subscribers: @WilliamReynish, @Znio.G, @DanPool, @Rawalanche, @zeauro, @A.Lex_3D, @CraigJones, @nokipaike, @JonDoe286, @DuarteRamos, @Djay

Added subscriber: @AdamPreisler

Added subscriber: @AdamPreisler

See: https://devtalk.blender.org/t/lock-camera-to-view-it-was-torture-to-find-it/5473/6 - maybe we should have a way to toggle 'Lock to camera view'.

See: https://devtalk.blender.org/t/lock-camera-to-view-it-was-torture-to-find-it/5473/6 - maybe we should have a way to toggle 'Lock to camera view'.

Sure, that could be added here too

Sure, that could be added here too

A popover menu to pick currently active camera would also be very welcome.
Something akin to what we can currently do from the Scene tab of the Properties Editor.
It is currently hard to quickly browse through all cameras views in a scene.

fbfa54b20a74889c9d369d3d73d5020e96d7080a.jpeg

A [popover menu to pick currently active camera ](https://devtalk.blender.org/t/blender-ui-paper-cuts/2596/328?u=duarte.framos) would also be very welcome. Something akin to what we can currently do from the Scene tab of the Properties Editor. It is currently hard to quickly browse through all cameras views in a scene. ![fbfa54b20a74889c9d369d3d73d5020e96d7080a.jpeg](https://archive.blender.org/developer/F6577800/fbfa54b20a74889c9d369d3d73d5020e96d7080a.jpeg)

@DuarteRamos: It's a nice idea, although almost completely unrelated to this design task. My original vision for this would be to not have a camera button here at all, but merge the camera selector with the active camera text on the top left of the viewport. This would also give you ability to switch cameras this way:

Screenshot 2019-02-11 at 11.34.11.png

(disregard old icons etc)

I still think that would be nicer, because the camera toggle is fundamentally different from the viewpoint gizmo. The other buttons are manipulation widgets, but the camera one is just a toggle button.

@DuarteRamos: It's a nice idea, although almost *completely* unrelated to this design task. My original vision for this would be to not have a camera button here at all, but merge the camera selector with the active camera text on the top left of the viewport. This would also give you ability to switch cameras this way: ![Screenshot 2019-02-11 at 11.34.11.png](https://archive.blender.org/developer/F6578002/Screenshot_2019-02-11_at_11.34.11.png) (disregard old icons etc) I still think that would be nicer, because the camera toggle is fundamentally different from the viewpoint gizmo. The other buttons are manipulation widgets, but the camera one is just a toggle button.

Just though it could also integrate to the camera view gizmos, but your solution is indeed a lot more consistent.
It also turns the viewport text into something functional, instead of static text.

Just though it could also integrate to the camera view gizmos, but your solution is indeed a lot more consistent. It also turns the viewport text into something functional, instead of static text.

@DuarteRamos Exactly right, that is the rationale.

Anyway, this design task is about something different: a new gizmo, specific to being inside the camera view, to manipulate the camera using camera/lens-controls.

@DuarteRamos Exactly right, that is the rationale. Anyway, this design task is about something different: a new gizmo, specific to being inside the camera view, to manipulate the camera using camera/lens-controls.

Added subscriber: @Jaydead

Added subscriber: @Jaydead
Campbell Barton changed title from Camera Gizmo Todo to Extended Controls for Camera Gizmo 2019-08-01 11:58:07 +02:00

Added subscriber: @AcidRain0

Added subscriber: @AcidRain0

Bump

Bump

@AcidRain0 Appreciate the support for this, but please don't do that - this is not a forum. Hopefully this could be added for 2.83 if there is time. We'll see.

@AcidRain0 Appreciate the support for this, but please don't do that - this is not a forum. Hopefully this could be added for 2.83 if there is time. We'll see.

Since there is a discussion now and a hopeful horizon I would like to add that since we're talking about cameras it would be great to have Exposure & Contrast controls.

Also an ability to widen one edge of the camera like if we Crop in Photoshop would be helpful but probably a little tougher to implement. One would have to care about Offsets while changing Focal Length and also dimensions of the Rendered Image and to keep all these variables in check must be pretty hard to do.

It would be helpful though to be able to extend image or make a smaller crop of the image right from the viewport with simple controls.

Really looking forward to that quick camera change! Everyone I teach has problems with the current location in the Scene tab.

Since there is a discussion now and a hopeful horizon I would like to add that since we're talking about cameras it would be great to have Exposure & Contrast controls. Also an ability to widen one edge of the camera like if we Crop in Photoshop would be helpful but probably a little tougher to implement. One would have to care about Offsets while changing Focal Length and also dimensions of the Rendered Image and to keep all these variables in check must be pretty hard to do. It would be helpful though to be able to extend image or make a smaller crop of the image right from the viewport with simple controls. **Really looking forward to that quick camera change!** Everyone I teach has problems with the current location in the Scene tab.

@AdamPreisler This doesn’t add any extra affordance to switch cameras. This is about the ability to more easily manipulate the camera when inside the camera view, which is currently not so easy by default.

For easier switching of cameras, see the Outliner task here: #68498

@AdamPreisler This doesn’t add any extra affordance to switch cameras. This is about the ability to more easily manipulate the camera when inside the camera view, which is currently not so easy by default. For easier switching of cameras, see the Outliner task here: #68498

Personally I prefer simply Walk Navigation (where you can also fly with TAB) which is in Blender.

I think by default the shortcut is Shift+F although not 100% sure, I have it as Shift+5 meaning it is extended perspective mode. However I see the advantage of this clicky solution when using tablets and not having a mouse. I just wish I could hide it because it's often just better to go G > Z+Z to for example move camera forward / backward because then the operation runs on Local coords.

In 3ds Max people tend to use this exact similar function, also called Walk mode there. It's somewhere to be clicked in lower right corner.

I just wanted to give my input, I think there's lots of these little shortcomings that would be good to address.
Especially Exposure control in Render Result for example.

Also related is the default location for Color Management being at the very bottom of Render tab is just such a flawed default setting because Exposure affects virtually everything unless you don't want to save anything visual out of Blender. I always move these to the top of the list because Exposure is so important.

Personally I prefer simply Walk Navigation (where you can also fly with TAB) which is in Blender. I think by default the shortcut is Shift+F although not 100% sure, I have it as Shift+5 meaning it is extended perspective mode. However I see the advantage of this clicky solution when using tablets and not having a mouse. I just wish I could hide it because it's often just better to go G > Z+Z to for example move camera forward / backward because then the operation runs on Local coords. In 3ds Max people tend to use this exact similar function, also called Walk mode there. It's somewhere to be clicked in lower right corner. I just wanted to give my input, I think there's lots of these little shortcomings that would be good to address. **Especially Exposure control in Render Result for example.** **Also related is the default location for Color Management being at the very bottom of Render tab** is just such a flawed default setting because Exposure affects virtually everything unless you don't want to save anything visual out of Blender. I always move these to the top of the list because Exposure is so important.

The original design doc here has some issues I'd like to improve upon:

  • The icons for move/rotate were hard to distinguish
  • The gizmos were not very consistent with general move or rotate gizmos
  • We didn't use axis colors
  • When using Move/Rotate tools, no gizmos currently appears

Instead, we can simply tie this into the tool system:
Screenshot 2020-01-13 at 09.50.50.png

This way it's clearer how to show or hide these gizmos, and they will appear in a more consistent way, with consistent use of axis colors and more distinct difference between move or rotate gizmos.

Move tool enabled:
{F8275363, size=full}

Rotate tool enabled:
{F8275365, size=full}

Transform tool enabled:
{F8275371, size=full}

The original design doc here has some issues I'd like to improve upon: - The icons for move/rotate were hard to distinguish - The gizmos were not very consistent with general move or rotate gizmos - We didn't use axis colors - When using Move/Rotate tools, no gizmos currently appears Instead, we can simply tie this into the tool system: ![Screenshot 2020-01-13 at 09.50.50.png](https://archive.blender.org/developer/F8275369/Screenshot_2020-01-13_at_09.50.50.png) This way it's clearer how to show or hide these gizmos, and they will appear in a more consistent way, with consistent use of axis colors and more distinct difference between move or rotate gizmos. Move tool enabled: {[F8275363](https://archive.blender.org/developer/F8275363/Screenshot_2020-01-13_at_09.46.29.png), size=full} Rotate tool enabled: {[F8275365](https://archive.blender.org/developer/F8275365/Screenshot_2020-01-13_at_09.46.48.png), size=full} Transform tool enabled: {[F8275371](https://archive.blender.org/developer/F8275371/Screenshot_2020-01-13_at_09.52.01.png), size=full}

@AdamPreisler

In addition to these gizmos, we could offer a toggle here to switch into Walk Mode more easily:

Screenshot 2020-01-13 at 15.49.17.png

Walk mode is modal however, which has its own downsides - you must switch in and out of it. So it's not a replacement for making gizmos for manipulating the camera. It's also very keyboard-centric, which these gizmos are not.

@AdamPreisler In addition to these gizmos, we could offer a toggle here to switch into Walk Mode more easily: ![Screenshot 2020-01-13 at 15.49.17.png](https://archive.blender.org/developer/F8275787/Screenshot_2020-01-13_at_15.49.17.png) Walk mode is modal however, which has its own downsides - you must switch in and out of it. So it's not a replacement for making gizmos for manipulating the camera. It's also very keyboard-centric, which these gizmos are not.
Member

Added subscriber: @Harley

Added subscriber: @Harley
Member

Some silly comments...

I realize that the current look when viewing through the camera is meant to invoke the thought of looking through a camera viewfinder. But it has never worked that well for me as it just seems a bit too simple. Currently looks something like this, with a vignetting scrim all around:

CameraView1.jpg

I'd rather it add a bit more flourish to better mimic looking through a modern film camera or camera operator monitor. The darkest scrim at top and bottom masking off the area outside the camera sensor. Then a bordered area indicating the current crop proportions:

CameraView2.jpg

As for icons, I think they can be simplified. Basically there are only 6 major camera changes. They can be separated into two groups of three. And you can just use the same three icons twice as there is a nice symmetry between them. So a label for "Stationary" (or Tripod or similar) followed by three icons. Then "Movement" (or similar) followed by the same three icons:

zoom.png

Zoom

zoom.gif

Dolly (camera movement forward and back)

dolly.gif

pan.png

Pan

pan.gif

Truck (camera movement left and right)

truck.gif

tilt.png

Tilt

tilt.gif

Pedestal (or Boom up/down or Jib up/down)

pedestal.gif

Some silly comments... I realize that the current look when viewing through the camera is meant to invoke the thought of looking through a camera viewfinder. But it has never worked that well for me as it just seems a bit too simple. Currently looks something like this, with a vignetting scrim all around: ![CameraView1.jpg](https://archive.blender.org/developer/F8297367/CameraView1.jpg) I'd rather it add a bit more flourish to better mimic looking through a modern film camera or camera operator monitor. The darkest scrim at top and bottom masking off the area outside the camera sensor. Then a bordered area indicating the current crop proportions: ![CameraView2.jpg](https://archive.blender.org/developer/F8297370/CameraView2.jpg) As for icons, I think they can be simplified. Basically there are only 6 major camera changes. They can be separated into two groups of three. And you can just use the same three icons twice as there is a nice symmetry between them. So a label for "Stationary" (or Tripod or similar) followed by three icons. Then "Movement" (or similar) followed by the same three icons: ![zoom.png](https://archive.blender.org/developer/F8297380/zoom.png) Zoom ![zoom.gif](https://archive.blender.org/developer/F8297382/zoom.gif) Dolly (camera movement forward and back) ![dolly.gif](https://archive.blender.org/developer/F8297385/dolly.gif) ![pan.png](https://archive.blender.org/developer/F8297387/pan.png) Pan ![pan.gif](https://archive.blender.org/developer/F8297390/pan.gif) Truck (camera movement left and right) ![truck.gif](https://archive.blender.org/developer/F8297392/truck.gif) ![tilt.png](https://archive.blender.org/developer/F8297399/tilt.png) Tilt ![tilt.gif](https://archive.blender.org/developer/F8297401/tilt.gif) Pedestal (or Boom up/down or Jib up/down) ![pedestal.gif](https://archive.blender.org/developer/F8297404/pedestal.gif)

Added subscriber: @RobertS

Added subscriber: @RobertS

If the intent here is to place various control gizmos around the frame/border of a camera locked viewport, could you also please consider being able to resize the frame itself with a gizmo?

When the viewport is locked to a camera, it's not immediately apparent to a user how to resize the frame (because you either have to know a keyboard shortcut, or know to unlock the viewport and then use the scrollwheel). Ref, the following papercut:

https://devtalk.blender.org/t/blender-ui-paper-cuts/2596/3836?u=eobet

If the intent here is to place various control gizmos around the frame/border of a camera locked viewport, could you also please consider being able to resize the frame itself with a gizmo? When the viewport is locked to a camera, it's not immediately apparent to a user how to resize the frame (because you either have to know a keyboard shortcut, or know to unlock the viewport and then use the scrollwheel). Ref, the following papercut: https://devtalk.blender.org/t/blender-ui-paper-cuts/2596/3836?u=eobet

Removed subscriber: @RobertS

Removed subscriber: @RobertS

Added subscriber: @Romain-Lamothe

Added subscriber: @Romain-Lamothe

Added subscriber: @bent

Added subscriber: @bent
Member

Some misc mockups from the last time I was playing around in here, in case anyone wants to try improving on it.

Following shows the Active camera (orange corners) and with center guides enabled. The idea is that you could drag the camera by the (larger) corners. Top left is showing the current camera name and has arrows to jump to next and previous camera. Bottom left has buttons for fixed camera changes: tilt, pan, zoom. Buttons at bottom right are for camera movement: pedestal, truck, dolly.

Camera1.png

Following shows the camera as inactive (grey corners), locked (red border), and with safe areas and "thirds" guides enabled.

Camera2.png

Some misc mockups from the last time I was playing around in here, in case anyone wants to try improving on it. Following shows the Active camera (orange corners) and with center guides enabled. The idea is that you could drag the camera by the (larger) corners. Top left is showing the current camera name and has arrows to jump to next and previous camera. Bottom left has buttons for fixed camera changes: tilt, pan, zoom. Buttons at bottom right are for camera *movement*: pedestal, truck, dolly. ![Camera1.png](https://archive.blender.org/developer/F8753623/Camera1.png) Following shows the camera as inactive (grey corners), locked (red border), and with safe areas and "thirds" guides enabled. ![Camera2.png](https://archive.blender.org/developer/F8753625/Camera2.png)

Added subscriber: @elekmark

Added subscriber: @elekmark
Contributor

Added subscriber: @RedMser

Added subscriber: @RedMser

Added subscriber: @lexfazio

Added subscriber: @lexfazio

Added subscriber: @JaumeBellet

Added subscriber: @JaumeBellet
Contributor

Added subscriber: @Nika-Kutsniashvili

Added subscriber: @Nika-Kutsniashvili
Philipp Oeser removed the
Interest
User Interface
label 2023-02-10 09:26:09 +01:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
15 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#57234
No description provided.