Workspaces and managing complex scenes

Hello

In 2.79 Screens and Scenes are linked, so when a Screen is changed Scene also changes to whatever Scene was open for that particular Screen. In 2.8 with Workspaces that is no longer the case.

This seems optional, but it’s important to understand how much easier it becomes to manage bigger scenes. Big scenes and assets always compose of subsets (e.g screws, wires, detail > engine / interior / steering -> final asset(boat,car,airplane etc) or foliage / furniture > assemble and architectural render). Isolating these elements into separate scenes results in clarity, ease of management and speed (such as rendering previews). It’s very desirable to have specific workspace with specific reference loaded. Example:
wires_scene
For animation you might have editable assets in different scenes or assembly of master scenes out of linked assets. In addition any particular renderable Scene will likely needs specific editors open (you might be animating character face closeup in one, setting up VFX in other, perhaps populating scene with foiliage/particles in third etc).

Such detatchment of workspaces <-> Scenes (unlike Screens and Scenes) will make complex projects a lot harder to manage. What makes situation worse is that currently there seems no way to set Workspace with Python? bpy.ops.workspaces.workspace contains no applicable functionality so even if this is considered user cannot currently do much about it:
workspaces

I would not only like to kindly request that bpy.ops.workspaces.workspace_set(workspace/string) be added, but that it could be set directly without delta (unlike with Screens which made setting them in python unreliable (screens change when in fullscreen or multiple windows)).

In short, please consider:
a) (option) to link workspaces and scenes (as it was with Screens in 2.79)
b) and/OR at very least please provide Python op to set them so user can change workspace

I understand it is alpha and some things might be on roadmap, just wanted to bring this issue to attention.

Thank you for consideration.

2 Likes

I’m not sure if the link between workspaces and scenes will come back, so far you’re the first I’ve seen ask about this so there hasn’t been much reason to do it. What you can do is open multiple windows with difference workspace/scene combinations, though this is not always convenient.

It is possible to change the workspaces and scene through Python. It’s the windows that define which workspace and scene to use:

for window in bpy.context.window_manager.windows:
    window.workspace = bpy.data.workspaces[0]
1 Like

Ability to manage workspaces with python solves the issue! Thank you for example, glad to see it’s there.