Transfer Mode Operator Do To's #87134

Open
opened 2021-04-02 15:06:19 +02:00 by Julien Kaspar · 22 comments
Member

NOTE: This task should be split up into multiple tasks soon.

This task is concerned about loose ends for a full working implementation of the "Transfer Mode" operator.


  • Add the operator to a menu in every mode

Right now this would always be the first menu to the right of "View" and "Select".
Like "Paint", "Weights", "Grease Pencil", "Draw", etc. Some modes would need a new menu added for this.

  • Add the flash overlay for grease pencil objects

Armature and curve objects are also missing the overlay but there it's less needed since other overlays are already a good indicator.

  • Support the operator between all object types

It is possible to use the operator on between object types (Meshes, Lattices, Curves, ect) but it doesn't work for GP edit mode, sculpt mode, vertex paint and weight paint modes.

  • (Armature) Edit Mode: The operators still won't run in this mode.

  • (Metaball) Edit Mode: Doesn't run.

  • (Optional) Also select parented aramtures when using the oeprator in weight paint modes.

When using this operator it deselects any other objects, rendering this operator useless for weight paint mode.

  • (Optional) Discuss clarity of the operator name and tooltip. Potentually rename to "Switch Object"
NOTE: This task should be split up into multiple tasks soon. This task is concerned about loose ends for a full working implementation of the "Transfer Mode" operator. --- - [ ] Add the operator to a menu in every mode Right now this would always be the first menu to the right of "View" and "Select". Like "Paint", "Weights", "Grease Pencil", "Draw", etc. Some modes would need a new menu added for this. - [ ] Add the flash overlay for grease pencil objects Armature and curve objects are also missing the overlay but there it's less needed since other overlays are already a good indicator. - [ ] Support the operator between all object types It is possible to use the operator on between object types (Meshes, Lattices, Curves, ect) but it doesn't work for GP edit mode, sculpt mode, vertex paint and weight paint modes. - [ ] (Armature) Edit Mode: The operators still won't run in this mode. - [ ] (Metaball) Edit Mode: Doesn't run. - [ ] (Optional) Also select parented aramtures when using the oeprator in weight paint modes. When using this operator it deselects any other objects, rendering this operator useless for weight paint mode. - [ ] (Optional) Discuss clarity of the operator name and tooltip. Potentually rename to "Switch Object"
Pablo Dobarro was assigned by Julien Kaspar 2021-04-02 15:06:19 +02:00
Author
Member
Added subscribers: @JulienKaspar, @PabloDobarro, @pablovazquez, @dfelinto

#103793 was marked as duplicate of this issue

#103793 was marked as duplicate of this issue

Added subscriber: @MeshVoid

Added subscriber: @MeshVoid

Probably keeping this operator as a hidden function making this hotkeyable from the get-go and exposed to users, would have saved time and let this operator land in 2.91, as it was planned. Personally, I change the default sculpt mode hotkeys you guys design to the point of zero recognition, and most experienced artists do the same, as far as I know. When you work in DCCs for 12 hours a day you have your own ergonomic keyboard setup that is way different from applications default settings like 100-% of the time. IMO, you shouldn't have fussed about the key conflict here (problems like that are for new users/hobbyists only) and this feature would have seen light way earlier.

Probably keeping this operator as a hidden function making this hotkeyable from the get-go and exposed to users, would have saved time and let this operator land in 2.91, as it was planned. Personally, I change the default sculpt mode hotkeys you guys design to the point of zero recognition, and most experienced artists do the same, as far as I know. When you work in DCCs for 12 hours a day you have your own ergonomic keyboard setup that is way different from applications default settings like 100-% of the time. IMO, you shouldn't have fussed about the key conflict here (problems like that are for new users/hobbyists only) and this feature would have seen light way earlier.
Member

We were proposing "Transfer Mode" as the operator name, as it indicates that the mode is removed from one object and applied to the target. Another option could be "Shift Mode".

We were proposing "Transfer Mode" as the operator name, as it indicates that the mode is removed from one object and applied to the target. Another option could be "Shift Mode".
Member

For 2.93, the idea would be:

  • Rename the operator to transfer_mode.
  • Keep the D shortcut as it is.
  • Enable the operator only in sculpt mode, add it to the sculpt menu as "transfer sculpt mode" with an eyedropper mode.

For later releases, after discussing the compatibility and requirements of the rest of the modes

  • Move the operator as "transfer mode" to the Edit menu in the top bar.
For 2.93, the idea would be: - Rename the operator to transfer_mode. - Keep the D shortcut as it is. - Enable the operator only in sculpt mode, add it to the sculpt menu as "transfer sculpt mode" with an eyedropper mode. For later releases, after discussing the compatibility and requirements of the rest of the modes - Move the operator as "transfer mode" to the Edit menu in the top bar.

Added subscriber: @Wesley-Rossi

Added subscriber: @Wesley-Rossi

Added subscriber: @Sychuan

Added subscriber: @Sychuan

It really frustrates how many time is spend on such non-issue as hotkey for such important option.

It really frustrates how many time is spend on such non-issue as hotkey for such important option.
Author
Member

I talked with a some more Blender Studio artists on how this operator could be useful for other modes.

For texture painting (or vertex painting in general) it becomes crucial that the "fade inactive geometry" overlay gets overhauled.
In the current implementation it obscures color information, which makes it useless for these tasks. Texturing and shading artists disable the overlay by default as a result.
The ideal solution is to change it into an animated overlay that flashes the new active object for a moment when switching the object and then disappears. This needs a mockup.

Theoretically the operator would also be very useful for weight painting but not with the current way its implemented.
When switching an object it would deselect any other objects like an armature, which needs to be selected for weight painting to work.
The simplest solution to this is to keep any selection on armature objects intact when using this operator in weight paint mode.
There are also better long term solutions like automatically selecting the armature that is assigned in the modifier stack but these require more design discussion.

I talked with a some more Blender Studio artists on how this operator could be useful for other modes. For texture painting (or vertex painting in general) it becomes crucial that the "fade inactive geometry" overlay gets overhauled. In the current implementation it obscures color information, which makes it useless for these tasks. Texturing and shading artists disable the overlay by default as a result. The ideal solution is to change it into an animated overlay that flashes the new active object for a moment when switching the object and then disappears. This needs a mockup. Theoretically the operator would also be very useful for weight painting but not with the current way its implemented. When switching an object it would deselect any other objects like an armature, which needs to be selected for weight painting to work. The simplest solution to this is to keep any selection on armature objects intact when using this operator in weight paint mode. There are also better long term solutions like automatically selecting the armature that is assigned in the modifier stack but these require more design discussion.

Added subscriber: @SirPigeonz

Added subscriber: @SirPigeonz

I'm a bit sad (angry even) that it was removed from Edit Mode.
The current workflows of switching objects or working with many objects in a scene is horrible, old and needs a lot of UX work.
This operator made Blender feel so much better and modern.

I'm a bit sad (angry even) that it was removed from Edit Mode. The current workflows of switching objects or working with many objects in a scene is horrible, old and needs a lot of UX work. This operator made Blender feel so much better and modern.

Hi @SirPigeonz, as Pablo mentioned, the plan for later releases is to bring this for edit mode. The immediate change made possible for this to be available for sculpting at least.

If you can help contributing to it you can follow his design. It should be clear enough for others to follow.

Hi @SirPigeonz, as Pablo mentioned, the plan for later releases is to bring this for edit mode. The immediate change made possible for this to be available for sculpting at least. If you can help contributing to it you can follow his design. It should be clear enough for others to follow.

In #87134#1148688, @dfelinto wrote:
Hi @SirPigeonz, as Pablo mentioned, the plan for later releases is to bring this for edit mode. The immediate change made possible for this to be available for sculpting at least.

If you can help contributing to it you can follow his design. It should be clear enough for others to follow.

Sorry for my frustrated reaction I rely on object switching a lot for my current work, I will stick to older build for now, that's all.

I understood that there is no design for now? From what I understood it was removed from Edit Mode because name and default shortcuts were not decided and module owners/UX team must discuss the approach how to implement this feature to match other editors.

I will contribute smaller things for now tho :P This is too important feature to let newbie contributor work on it and take ages to finish :P (Although if magic bolt will hit me giving me super speed and brain power to learn Blender code base faster in my leftovers spare time, then I will help with it. Remember, if you will see me working on it, something supernatural happened to me >_>)

> In #87134#1148688, @dfelinto wrote: > Hi @SirPigeonz, as Pablo mentioned, the plan for later releases is to bring this for edit mode. The immediate change made possible for this to be available for sculpting at least. > > If you can help contributing to it you can follow his design. It should be clear enough for others to follow. Sorry for my frustrated reaction I rely on object switching a lot for my current work, I will stick to older build for now, that's all. I understood that there is no design for now? From what I understood it was removed from Edit Mode because name and default shortcuts were not decided and module owners/UX team must discuss the approach how to implement this feature to match other editors. I will contribute smaller things for now tho :P This is too important feature to let newbie contributor work on it and take ages to finish :P (Although if magic bolt will hit me giving me super speed and brain power to learn Blender code base faster in my leftovers spare time, then I will help with it. Remember, if you will see me working on it, something supernatural happened to me >_>)
Julien Kaspar changed title from Switch Object Operator Do To's to Transfer Mode Operator Do To's 2021-04-22 19:20:29 +02:00
Member

Added subscriber: @JulianEisel

Added subscriber: @JulianEisel
Member

In #88071 (Keymap: use number keys for mode switching (2nd Iteration)) the UI module proposes keymap updates to use the number row at the top for mode switching. The Transfer Mode shortcut can be added nicely there, to the left of the "1" key (tilde on most English keyboards, but it varies). We'd prefer using the D key for the view pie menu then.

In #88071 (Keymap: use number keys for mode switching (2nd Iteration)) the UI module proposes keymap updates to use the number row at the top for mode switching. The *Transfer Mode* shortcut can be added nicely there, to the left of the "1" key (tilde on most English keyboards, but it varies). We'd prefer using the D key for the view pie menu then.
Author
Member

Some more changes were committed for 3.0.

  • The shortcut for the transfer operator got changed to Tilde, which is a better fit in terms of context but needs to be discussed further since it is not available on all keyboard layouts (f92f5d1ac6)
  • All object types and modes do now support this operator. I will update the description based on any left over to do's (69e15eb1e4)
Some more changes were committed for 3.0. - The shortcut for the transfer operator got changed to Tilde, which is a better fit in terms of context but needs to be discussed further since it is not available on all keyboard layouts (f92f5d1ac6) - All object types and modes do now support this operator. I will update the description based on any left over to do's (69e15eb1e4)

Added subscriber: @3di

Added subscriber: @3di

Just a thought, why is there a need to hold the tilde key when clicking the object. Could it instead recognise that the object is currently not enabled for the mode, and enable it when you click on it?

Just a thought, why is there a need to hold the tilde key when clicking the object. Could it instead recognise that the object is currently not enabled for the mode, and enable it when you click on it?
Pablo Dobarro was unassigned by Julien Kaspar 2022-04-12 12:50:42 +02:00
Author
Member

This was always meant as a general operator that can be used for any workflow and object type. The last remaining to do's here could be tackled by anyone or members of the corresponding module.

This was always meant as a general operator that can be used for any workflow and object type. The last remaining to do's here could be tackled by anyone or members of the corresponding module.
Author
Member

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Member

Added subscribers: @coolchou-zhao, @persun, @PratikPB2123

Added subscribers: @coolchou-zhao, @persun, @PratikPB2123
Julien Kaspar added
Module
User Interface
and removed
Module
Animation & Rigging
labels 2023-02-08 11:50:11 +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
11 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#87134
No description provided.