Tracking Pies #57912

Closed
opened 4 years ago by sebastian_k · 18 comments
Collaborator

The are some things in the tracking pies from 2.79 that need to be addressed for 2.8
The Hotkeys Q and W, that were previously used by the tracking pies, will be occupied by the Quick Favorites and the context menu, so those can't be used anymore.
Some icons changed their appearance and needed to be updated.
Some of the pie menus were spawning sub-pies, which, if I am not mistaken, are not really the way to go for pie menus. Also, I found them not that practical, so those have been removed.

The tracking pies are designed to combine the most important tracking and solving operators and settings into a handful of workflow oriented pies. This allows you to work fullscreen without toolshelf or sidebar open, which is often nice when you are working with footage. The hotkeys for those pie menus are all located on the left side of the keyboard, so you can work fast without having to let go of mouse or pen or reach to far.

Tracking ('E')

tracking_pie.png
The pie menu that one would probably use most often is "Tracking".
Pie menus, being heavily gesture based, are an ideal way to expose the tracking controls:
You can track, refine or clear tracks forward by pressing 'E' and dragging to the right (and right+up/down), and track brackwards by pressing 'E' and dragging to the left (and left+up/down).
The two other options in the Tracking pie menu are Detect Features and Disable Markers.
In this pie the icons are already using the dedicated tracking icons mostly.

Marker Setup ('Alt + E')

marker_settings_pie.png
The Marker Settings Pie gives you access to the settings that one needs the most when setting up the marker for tracking. While there are more than 2 Motion Models only the 2 most used are exposed: Location based tracking and Affine tracking. That's usually enough for most use cases. This pie also let's you either set the tracking settings of the active marker as default settings for new markers or copy the active track's settings to the selected markers.
You can choose to track based on the previous frame or by keyframe and enable or disable Brute Force and Normalization.
There 2 icons that need to be addressed though: Loc and Affine. Currently they use icons from a different context.

Clip and Display Setup ('Alt + W')

display_setup.png
Some frequently used options to control appearance and behavior of the clip.

Solver Pie ('Shift + S')

solver_pie.png
In my experience this is the second most used pie. The most important operator here is "Solve Camera", that's why it is located to the right. The opposite site does, well, the opposite: Clear Solution. The other thing that is important during solving is to set the keyframes. The hotkeys for that used to be Q and E, but since Q is reserved for Quick Favorites, those need to be removed. So it's nice to have them easily accessible in this pie.

Reconstruction Pie ('Shift + W')

reconstruction_pie.png
Once you have a good camera solution you can use this pie to setup the tracking scene, orient the camera, or just set the clip as viewport background image. The controls are arranged semantically: The Floor setup is at the bottom, Set Origin at the top, X and Y axis left and right of the origin. Setup Tracking scene being the next logical step after Tracking and Solving it is also arranged to the very right.
Icons here should be fine for the most part.
The one thing I am not quite sure yet is whether or not to keep the Apply Solution Scale Operator in there or maybe replace it with 3D Markers to Mesh.

In the future I plan to add one or two more pie menus, however those would also involve some custom operators and I am not sure if those would belong into "official" pie menus or if those should be distributed as an addon.

Here is the current version of the addon: tracking_pies_280.py

The are some things in the tracking pies from 2.79 that need to be addressed for 2.8 The Hotkeys Q and W, that were previously used by the tracking pies, will be occupied by the Quick Favorites and the context menu, so those can't be used anymore. Some icons changed their appearance and needed to be updated. Some of the pie menus were spawning sub-pies, which, if I am not mistaken, are not really the way to go for pie menus. Also, I found them not that practical, so those have been removed. The tracking pies are designed to combine the most important tracking and solving operators and settings into a handful of workflow oriented pies. This allows you to work fullscreen without toolshelf or sidebar open, which is often nice when you are working with footage. The hotkeys for those pie menus are all located on the left side of the keyboard, so you can work fast without having to let go of mouse or pen or reach to far. ### Tracking ('E') ![tracking_pie.png](https://archive.blender.org/developer/F5620393/tracking_pie.png) The pie menu that one would probably use most often is "Tracking". Pie menus, being heavily gesture based, are an ideal way to expose the tracking controls: You can track, refine or clear tracks forward by pressing 'E' and dragging to the right (and right+up/down), and track brackwards by pressing 'E' and dragging to the left (and left+up/down). The two other options in the Tracking pie menu are Detect Features and Disable Markers. In this pie the icons are already using the dedicated tracking icons mostly. ### Marker Setup ('Alt + E') ![marker_settings_pie.png](https://archive.blender.org/developer/F5620608/marker_settings_pie.png) The Marker Settings Pie gives you access to the settings that one needs the most when setting up the marker for tracking. While there are more than 2 Motion Models only the 2 most used are exposed: Location based tracking and Affine tracking. That's usually enough for most use cases. This pie also let's you either set the tracking settings of the active marker as default settings for new markers or copy the active track's settings to the selected markers. You can choose to track based on the previous frame or by keyframe and enable or disable Brute Force and Normalization. There 2 icons that need to be addressed though: Loc and Affine. Currently they use icons from a different context. ### Clip and Display Setup ('Alt + W') ![display_setup.png](https://archive.blender.org/developer/F5620844/display_setup.png) Some frequently used options to control appearance and behavior of the clip. ### Solver Pie ('Shift + S') ![solver_pie.png](https://archive.blender.org/developer/F5621028/solver_pie.png) In my experience this is the second most used pie. The most important operator here is "Solve Camera", that's why it is located to the right. The opposite site does, well, the opposite: Clear Solution. The other thing that is important during solving is to set the keyframes. The hotkeys for that used to be Q and E, but since Q is reserved for Quick Favorites, those need to be removed. So it's nice to have them easily accessible in this pie. ### Reconstruction Pie ('Shift + W') ![reconstruction_pie.png](https://archive.blender.org/developer/F5621039/reconstruction_pie.png) Once you have a good camera solution you can use this pie to setup the tracking scene, orient the camera, or just set the clip as viewport background image. The controls are arranged semantically: The Floor setup is at the bottom, Set Origin at the top, X and Y axis left and right of the origin. Setup Tracking scene being the next logical step after Tracking and Solving it is also arranged to the very right. Icons here should be fine for the most part. The one thing I am not quite sure yet is whether or not to keep the Apply Solution Scale Operator in there or maybe replace it with 3D Markers to Mesh. In the future I plan to add one or two more pie menus, however those would also involve some custom operators and I am not sure if those would belong into "official" pie menus or if those should be distributed as an addon. Here is the current version of the addon: [tracking_pies_280.py](https://archive.blender.org/developer/F5621324/tracking_pies_280.py)
Poster
Collaborator

Added subscriber: @sebastian_k

Added subscriber: @sebastian_k
Poster
Collaborator

Added subscribers: @WilliamReynish, @SeanKennedy

Added subscribers: @WilliamReynish, @SeanKennedy

This seems generally ok I think.

A few notes:

  • Pie menus seem to work best when executed via a single key, because you really need the other hand on the mouse or pen to perform the gesture. Are there really no free keys available in the Clip Editor?
  • Some of these seem to be a mix of toggles and commands. We don't really use pies elsewhere for toggles because there's no feedback that something changed. Normally it's either for setting an enum (Mode, Pivot, Orientation etc) or a category of commands (Snap To). I think these more workflow-oriented pie menus are also ok, but perhaps worth considering if it make sense to include the toggles or not.
This seems generally ok I think. A few notes: - Pie menus seem to work best when executed via a single key, because you really need the other hand on the mouse or pen to perform the gesture. Are there really no free keys available in the Clip Editor? - Some of these seem to be a mix of toggles and commands. We don't really use pies elsewhere for toggles because there's no feedback that something changed. Normally it's either for setting an enum (Mode, Pivot, Orientation etc) or a category of commands (Snap To). I think these more workflow-oriented pie menus are also ok, but perhaps worth considering if it make sense to include the toggles or not.
Poster
Collaborator

Thanks a lot for the feedback!
I agree about the lacking feedback for a toggle in a pie menu possibly being an issue. However, I would like to keep most of them because it makes the workflow so much faster. And they still can be used in a gesture style interaction, contrary to some other pie menues from the community, where there are multiple entries pre pie-slot, something I consider opposite to the idea behind our pie menu implementation. But I'll have a look again and see if some can be replaced.
About hotkeys, well, the left side is pretty crowded. Q, W, A, S, R, D, X, C are all taken. I find combinations of Shift and E, W, S still very easy and comfortable to execute with the left hand. I was about to say the same about Alt+E as well, but I am typing this reply on my macbook, and there the Alt key is in a less comfy place. So I'll have a look at the keys again. :)

Thanks a lot for the feedback! I agree about the lacking feedback for a toggle in a pie menu possibly being an issue. However, I would like to keep most of them because it makes the workflow so much faster. And they still can be used in a gesture style interaction, contrary to some other pie menues from the community, where there are multiple entries pre pie-slot, something I consider opposite to the idea behind our pie menu implementation. But I'll have a look again and see if some can be replaced. About hotkeys, well, the left side is pretty crowded. Q, W, A, S, R, D, X, C are all taken. I find combinations of Shift and E, W, S still very easy and comfortable to execute with the left hand. I was about to say the same about Alt+E as well, but I am typing this reply on my macbook, and there the Alt key is in a less comfy place. So I'll have a look at the keys again. :)
Poster
Collaborator

I have changed some of the shortcuts.
The Alt key is now being avoided, because on a Mac it is not as comfortable to reach as the shift-key.
So:
Tracking Pie: 'E'
Setup Marker: 'Shift + E'
Setup Display: 'Shift + D'
Setup Tracking Scene: 'Shift + W'
Solve: 'Shift + S'
I find these very comfortable to reach and execute.
Compared to the clip editor hotkeys in 2.79 we would sacrifice Shift+D, which was used for the 'Disable Marker' Hotkey.
However, that operator is in the Tracking Pies at the bottom, very easy to reach.
And the 'Show Disabled Markers' toggle is now at the bottom of the Setup Display Pie, so in the same position, hence very easy to remember.
Following that logic I think we can also remove the hotkey Alt+D, currently used for the "Show Disabled Markers" toggle.
And I would vote for having the tracking pies enabled by default.

Here's the updated script. tracking_pies_280.py

I have changed some of the shortcuts. The Alt key is now being avoided, because on a Mac it is not as comfortable to reach as the shift-key. So: Tracking Pie: 'E' Setup Marker: 'Shift + E' Setup Display: 'Shift + D' Setup Tracking Scene: 'Shift + W' Solve: 'Shift + S' I find these very comfortable to reach and execute. Compared to the clip editor hotkeys in 2.79 we would sacrifice Shift+D, which was used for the 'Disable Marker' Hotkey. However, that operator is in the Tracking Pies at the bottom, very easy to reach. And the 'Show Disabled Markers' toggle is now at the bottom of the Setup Display Pie, so in the same position, hence very easy to remember. Following that logic I think we can also remove the hotkey Alt+D, currently used for the "Show Disabled Markers" toggle. And I would vote for having the tracking pies enabled by default. Here's the updated script. [tracking_pies_280.py](https://archive.blender.org/developer/F5633761/tracking_pies_280.py)
mont29 commented 4 years ago
Owner

Added subscriber: @Sergey

Added subscriber: @Sergey

This is very nice, seems to be intuitive.

I'm wondering if there may be a place in one of these menus for Lock marker. Perhaps in the Shift E menu, in place of either Track Setting as Default or Copy Track Settings?

This is very nice, seems to be intuitive. I'm wondering if there may be a place in one of these menus for Lock marker. Perhaps in the Shift E menu, in place of either Track Setting as Default or Copy Track Settings?
Poster
Collaborator

Ah, good one. Maybe instead of Detect Features? This is not used so often...

Ah, good one. Maybe instead of Detect Features? This is not used so often...

That would be fine, although I use Detect Features more than I use the Track Setting as Default or Copy Track Settings.

That would be fine, although I use Detect Features more than I use the Track Setting as Default or Copy Track Settings.
Poster
Collaborator

I would like to move forward with the tracking pies. There are probably some things that can be improved and added, but it would be nice if they could be implemented now. I have updated both space_clip.py and blender_default.py in order to have them not as separated addon and have the correct key mappings.
As discussed with @WilliamReynish a while ago the icons for Affine and Loc probably need their own icon...
Once the pies are implemented I would look into an updated Specials Menu ('W'). Maybe @SeanKennedy has some suggestions for it?
blender_default.py
space_clip.py
And a Diff:
tracking_pies.diff

I would like to move forward with the tracking pies. There are probably some things that can be improved and added, but it would be nice if they could be implemented now. I have updated both space_clip.py and blender_default.py in order to have them not as separated addon and have the correct key mappings. As discussed with @WilliamReynish a while ago the icons for Affine and Loc probably need their own icon... Once the pies are implemented I would look into an updated Specials Menu ('W'). Maybe @SeanKennedy has some suggestions for it? [blender_default.py](https://archive.blender.org/developer/F6411028/blender_default.py) [space_clip.py](https://archive.blender.org/developer/F6411034/space_clip.py) And a Diff: [tracking_pies.diff](https://archive.blender.org/developer/F6411077/tracking_pies.diff)

This is fine with me.

A few notes though:

We should not use wrong icons. It doesn't help readability and makes the icons hard to keep updated. In the Shift-E menu, I think we could just remove the icons there.

As for the 'specials' menu, we no longer call it that. It is the contextual menu, and its purpose is to display a contextually relevant menu of the most used commands in a given context. By default it doesn't use the W key, but right-click.

This is fine with me. A few notes though: We should not use wrong icons. It doesn't help readability and makes the icons hard to keep updated. In the Shift-E menu, I think we could just remove the icons there. As for the 'specials' menu, we no longer call it that. It is the contextual menu, and its purpose is to display a contextually relevant menu of the most used commands in a given context. By default it doesn't use the W key, but right-click.

Added subscriber: @jendrzych

Added subscriber: @jendrzych

I second Williams opinion - icons have their specific meanings and were designed for particular functions/commands . One must not use random icon for a function that has not any pictogram designed for it. It makes GUI messy and confusing. This applies especially to python addons...

I second Williams opinion - icons have their specific meanings and were designed for particular functions/commands . One must not use random icon for a function that has not any pictogram designed for it. It makes GUI messy and confusing. This applies especially to python addons...
Poster
Collaborator

I have updated the diff. Loc and Affine don't use an icon anymore.
Here's the diff: https://developer.blender.org/D4284

I have updated the diff. Loc and Affine don't use an icon anymore. Here's the diff: https://developer.blender.org/D4284

Added subscriber: @SimHacker

Added subscriber: @SimHacker
Owner

Added subscriber: @dfelinto

Added subscriber: @dfelinto
Owner

Changed status from 'Confirmed' to: 'Archived'

Changed status from 'Confirmed' to: 'Archived'
dfelinto closed this issue 3 years ago
dfelinto self-assigned this 3 years ago
Owner

Hi, thanks for your patch.

We are undergoing a Tracker Curfew where we are automatically closing old patches.

If you think the patch is still relevant please update and re-submit it. For new features make sure there is a clear design from the user level perspective.

Hi, thanks for your patch. We are undergoing a [Tracker Curfew ](https://code.blender.org/?p=3861) where we are automatically closing old patches. If you think the patch is still relevant please update and re-submit it. For new features make sure there is a clear design from the user level perspective.
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/Collada
Interest/Compositing
Interest/Core
Interest/Cycles
Interest/Dependency Graph
Interest/Development Management
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/Modeling
Interest/Modifiers
Interest/Motion Tracking
Interest/Nodes & Physics
Interest/Overrides
Interest/Performance
Interest/Performance
Interest/Physics
Interest/Pipeline, Assets & I/O
Interest/Platforms, Builds, Tests & Devices
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
legacy module/Animation & Rigging
legacy module/Core
legacy module/Development Management
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/Triaging
legacy module/User Interface
legacy module/VFX & Video
legacy project/1.0.0-beta.2
legacy project/Asset Browser (Archived)
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Code Quest
legacy project/Datablocks and Libraries
legacy project/Eevee
legacy project/Game Animation
legacy project/Game Audio
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Logic
legacy project/Game Physics
legacy project/Game Python
legacy project/Game Rendering
legacy project/Game UI
legacy project/GPU / Viewport
legacy project/GSoC
legacy project/Infrastructure: Websites
legacy project/LibOverrides - Usability and UX
legacy project/Milestone 1: Basic, Local Asset Browser
legacy project/Nodes
legacy project/OpenGL Error
legacy project/Papercut
legacy project/Pose Library Basics
legacy project/Retrospective
legacy project/Tracker Curfew
legacy project/Wintab High Frequency
Meta/Good First Issue
Meta/Papercut
migration/requires-manual-verification
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 & Devices
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 Information 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
7 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#57912
Loading…
There is no content yet.