Blender 2.8 Design Document

  • Goal
  • Big picture
  • View layers and collections
  • Workspace
  • User interface
  • Engine and draw manager
  • Asset management
  • Dependency graph

Goal

This document is for Blender developers and other contributors to the 2.8 project. It is meant to provide focus and general agreement on technical design decisions. It will allow to empower everyone to contribute more efficiently. UI and further usability design of features will happen after this, as an ongoing project.

“Blender 2.8 will enable artists to work faster and more efficient. Emphasis is on helping specialists or to enable specialist tasks better. 2.8 will allow Blender template/configurations to start with reduced or different user interfaces.”

The idea is to optimise one’s personal workflow better, instead of trying to maintain a single configuration that attempts to provide all the possible tasks at the same time for everyone.

Big picture

Each Blender window has all of its editors sharing the same state. That means there is always a single active Scene, visible objects, drawing engine, (editing) mode, and render engine. The render and viewport settings are being shared by all the editors.

More settings and viewport overrides might be brought in order to accommodate artist feedback. This feedback will be processed after the intended design has been implemented.

Targets

The Blender 2.8 workflow release original plan was rather ambitious. To make sure the development doesn’t drag forever, and everyone knows what we are working towards we will define the 2.8 project goal and targets as:

End-user targets

  • View layers, collections and overrides
  • Workspaces
  • Top bar with global tool area, and headers
  • Blender 101 – optimize the interface for specific tasks
  • Tool system and manipulators
  • PBR viewport render engine (Eevee)
  • General purpose engine (Workbench)
  • Pipeline for complete 2d animation with grease pencil
  • Amber asset engine (basic, local asset management)
  • Everything proxyable (static overrides)

Technical targets

  • Replace legacy OpenGL with newer OpenGL (3.3 core for now)
  • Replace Derived Mesh (internal modifier storage) with new system (using new Dependency Graph)
  • Interleaved global/local undo stack (material changes in Edit Mode are currently not registered by Undo)
  • Static override system
  • Asset engine API
  • Improved dependency system
  • Draw manager
  • Interface templates
  • Separation of existing grease pencil annotation tools and grease pencil objects

Orphan targets

Targets lacking developer-power

  • Rewrite particle system
  • Multi-object editing

Undefined targets

Targets with vague design to be discussed further

  • Workspace own add-ons and keymaps
  • Game engine

Not targets

Targets better left alone for Blender 3.0

  • Everything node
  • An in-depth redesign of our functional user interface

View layers and collections

The View Layer system for Blender 2.8 will integrate workflow and drawing, allowing for better Scene organization and viewport control.

Please read this if you’re not familiar with the very powerful new concepts for 2.8 layers.
https://code.blender.org/2017/09/view-layers-and-collections/

Workspace

Workspaces allow users to build up a working environment for a specific task.

Workspaces are simply a wrapper on top of the Blender Screens with extra added functionality such as drawing engine, view layer and viewport settings. It might also include custom keymaps and active add-ons.

Overlay engine

In 2.8 all of the edit modes are part of an overlay engine system and their settings are all stored in the Workspace. For example: “show normals”, “brush size”, “objects origins”.

This includes all the tool and display related settings. Some settings are still allowed to stay per-object (e.g., motion path and ghost settings), but whether to display them belongs to the Workspace.

The overlay engine draws on top of the Viewport’s own drawing engine. It’s not part of the final render. This enables for example Object Mode and Edit Modes in a viewport rendering Cycles.

Viewport settings

Some hand-picked render settings will be exposed to the Workspaces as well as Scene, we are calling them viewport settings.

For instance AO distance depends on Scene scale, and would be an annoyance to set per Workspace. However the number of samples, or whether to use AO are a perfect fit for a Workspace.

View Layers can have specific viewport settings overrides (as well as render settings).

Engine and view layer

The engine, View Layer and the viewport settings are set per Workspace, and therefore affect the entire window. However the final render (which is a Scene setting) is not influenced by it.

This way a file opened without UI will not lose its render settings. For that we store an active View Layer and engine in both Workspace and Scene data blocks.

Use scene settings

For viewport drawing, Workspaces have an option to use the Scene render settings (F12) instead of the viewport settings.

This way users can quickly preview the final render settings, engine and View Layer. This will affect all the editors in that workspace, and it will be clearly indicated in the top-bar.

Active mode

The Workspace stores a mode, instead of having it per object. That means if you switch the active object in a Workspace that is in Sculpt Mode, the new active object will be in Sculpt Mode as well.

The undo stack will store a mix of global and local stacks, to be able to flush the edited data when needed. For example when two windows have the same active object in different modes, and you alternate between them to do sculpting or mesh editing.

If syncing the same object in different modes becomes an issue, we switch the workspace to the object mode, keeping the original active mode as the go to mode when toggling back.

One of the driving forces for this feature is multi-object editing. This may not be implemented in time for the first 2.8 release though.

User interface

The Blender 2.5 design is still valid, we are not refactoring the entire Blender user interface. That being said, we do need to implement the following changes.

Top bar

The top bar will be a global area at the top of each window. It is a place for extended settings, and tools.

All the editors follow the top bar. That means per window we have one Scene, one View Layer and one engine used everywhere.

Templates

Apart from the always present top-bar, we will allow most of the Blender interface to be customizable. This is also known as the Blender 101 project.

The Blender 101 project goal is to be able to create a simplified version of Blender for specialized work such as:

  • 3d printing
  • Architectural planning
  • Movie previsualization

A template can be created with Python. Starting Blender with a template will only make UIs and options available as defined by the template.

Optionally, the template can allow a complete Blender to be accessible.

Workspace

The Workspace settings will be split across:

  • Top bar: layer, engine, mode
  • Properties editor: render settings
  • Viewport: tool settings

The tool settings are part of the overlay engine settings and thus stored in the workspace and global for the entire window.

Collections

A panel for collections will be present in the viewport and the properties editor for the Scene and Workspace tabs.

And we may need a tiny collection enable/disable template in the viewport header. We have no design yet but the goal is to mimic the simplicity and ease of use of the 2.7 visibility bits.

To edit the collection members we will use the outliner.

Manipulators

The manipulators and operators widgets bring the work to the 3d viewport. These are the main guidelines when designing manipulators:

  • All interactive elements of a manipulator should be visible (e.g., not only on cursor hover).
  • They should be toggleable in editors like UV. In dopesheet the box selection is more unanimous so widgets can be more omnipresent.
  • The exception of hidden information can be changing cursors based on the possible action (translate up, down, all directions, rotate, scale).
  • The whole widget area shouldn’t be an action area, such as panning widget.

Manipulator widget design

Collecting the cases for 2D manipulator will lead to create a new interaction language in Blender. For 2D it will likely converge to what we see in any other 2D drawing software: such as Google Draw and Inkscape.

For 3D there are fewer open source references to study from, so we will have to extrapolate from the 2D designs and create our own.

Established use cases

Paradigms to consider for the manipulators design:

  • Using tablet as main input device
  • ‘Face mapping’ rigging and posing
  • Virtual reality work – 3d manipulators for tools and operators

Tool system

The non-modal tool usage will be supplemented using manipulators. Instead of having to execute a tool from a shortcut, it will additionally be possible to execute it using visual handles.

The tool-shelf will use this heavily: Selecting a tool from the tool-shelf will activate its manipulators if available. The active tool will have some of its options exposed in the top bar as buttons, as well as its own widgets and events.

Only a single tool is active at a time, and transformation manipulators are only visible when no tool is active.

For example: Extrude tool manipulators mockup.

Engines and draw manager

The draw manager allows to compose overlay engines (the editing mode engines – i.e. object, mesh, sculpt, paint) on top of a render engine.

The concept of a render engine is to allow it to work interactively in viewports, and to work as an offline engine (e.g. Cycles). That means the new real-time engine Eevee can also be used as a production render engine.

Eevee engine

Eevee is a new real-time engine which supports high-end PBR graphics coupled with a responsive realtime viewport.

See: https://code.blender.org/2017/03/eevee-roadmap/

Workbench engine

This is a complete engine designed for modeling. It could be a beautiful white canvas with floor shadows for modelers to work. It does not aim at realism, but at the right visualisation for a certain task, and especially to work perfect with the overlay engines.

Grease Pencil

Grease pencil becomes consolidated as an annotation tool, while a full fledged 3d storyboarding system is implemented with the new grease pencil objects.

See: https://wiki.blender.org/index.php/User:Antoniov/Grease_Pencil_as_Object

Although technically this is a new engine, it’s currently an integral part of the overlay system. This way the 2D drawings can be combined with any other engine. We keep this as the only the exception to the rule, as a prelude of an upcoming viewport compositing system.

Asset management

We build an integrated system to handle files, projects and user’s asset libraries to allow browsing and importing data blocks, textures, and so on.

See: https://code.blender.org/2016/10/asset-management-and-pipeline/

Dependency graph

The dependency graph is responsible for dynamic updates of the Scene, where values vary over time – e.g. to enable animation. The new dependency graph was designed from scratch to allow multi-threading, efficient duplication and overrides. It uses a new data model for scene data, replacing the old ‘Derived Mesh’ from the modifier system.

Ultimately this new system will even allow to view a Scene on a different states in different windows. For example, two windows where one plays animation, and the other is on a still frame.

See: https://wiki.blender.org/index.php/Dev:2.8/Source/Depsgraph

Everything proxyable

Any data block (especially referenced ones from external files) will be able to have local properties. And as far as the tools and editors in Blender are concerned, the linked data with its modifications will be treated the same as any local data block.

See: https://developer.blender.org/D2417

This also means that the Armature Proxy will go away, and get replaced with this new system.

Overrides

View layers and collections can override draw and data block options. Those overrides are local to the view layers, but handled as part of the dependency graph rewrite.

See: https://wiki.blender.org/index.php/Dev:2.8/Source/overrides


Design document signed off by: Bastien Montagne, Brecht Van Lommel, Campbell Barton, Dalai Felinto, Jonathan Williamson, Julian Eisel, Pablo Vazquez, Sergey Sharybin, and Ton Roosendaal

96 comments
  1. Hi, I have a question. I’m trying 2.80 since a few months. I love the way EEVEE is working, replacing the old Internal Render. But still exists a big deal, for me. In my videos I often mix real footage with rendered objects. I used to work with internal, because in animation it was faster than cycles. Now I’ll try to do the same things with EEVEE. But I cannot do the complex works in compositor that I did with internal, because the render passes of EEVEE are too restricted and there’s no way, at the moment, to override the PBR materials carachteristics. I used to create transparent materials for catching shadows, that is a awesome feature if you have to do deep compositing. I also used render passes as Object Index and Material Index, Specular, Shadow, Emit… DO you think that they will be re-integrated in EEVEE rendering? Thank you, and sorry for my poor English!

  2. Hi, I have a question. I’m trying 2.80 since a few months. I love the way EEVEE is working, replacing the old Internal Render. But still exist a beg deal, for me. In my videos I often mix real footage with rendered objects. I used to work with internal, because in animation it was faster than cycles. Now I’ll try to do the same things with EEVEE. But I cannot do the complex works in compositor that I did with internal, because the render passes of EEVEE are too restricted and there’s no way, at the moment, to override the PBR materials carachteristics. I used to create transparent materials for catching shadows, that is a awesome feature if you have to do deep compositing. I also used render passes as Object Index and Material Index, Specular, Shadow, Emit… DO you think that they will be re-integrated in EEVEE rendering? Thank you, and sorry for my poor English!

  3. Some people experienced problems with baking spline IK animation, do you think it’ll work in this new dependency system?

  4. I have been teaching myself Blender since 2.4 and only now I would say I’m a competent user. I took a sneaky peak at the most recent build of 2.8 and was totally shocked at the interface, I feel like a totally new program that I would need to start from scratch which is not a good feeling. I just hope we will have an option to return the interface back to the classic appearance that we have all grown up with.

  5. I downloaded an experimental build of Blender 2.8, and as a user since 2.64, I personally don’t like the interface at all, its scattered everywhere for no reason at all, like the “object mode” switching at one end, pivot at another, and the rest is positioned awkwardly in the bottom, The “Collection” layer switching is an amazing feature, but a very slow method for working, granted its better in every other way, like naming and organizing, but i think stripping off the other feature completely would upset many blender users including me, I did download a few builds before and they were fine, but this UI update, i feel let down, although it will be easier for new users to get acquainted with this new interface, it hardly gives anything to people who are currently Blender users. And the work space switching from unreal, personally, i rarely use work spaces, only when i do video editing, I loved the way that you could completely customize Blender anyway you see fit,. After all whats more delightful than making it your own.

  6. The UI looks very touch friendly.
    Are there plans to have some ARM based version based on this?
    I mean, not all the software, but model/texture painting on the go with an Ipad would be awesome.

  7. WOW! Massive update since 2.5

  8. Where can I find the System requirements Blender 2.8 needs on OSX ?
    I work on a computer Mid 2011. Will my 2,5 GHz Intel Core i5 be good enough ?

  9. I’m suuuuuuuper exited!!!! mostly an massive UI update. love you developers you’re doing great job. Top bar is master piece!!! please release as soon as possible!!????

  10. I downloaded Blender 2.8 from https://www.blender.org/2-8/
    ..just for test and see how is new UI, but I can’t run the bookmarks
    https://wiki.blender.org/index.php/Dev:2.8/UI/Workshop_Writeup
    https://wiki.blender.org/index.php/Dev:Ref/Proposals/UI/Ribbon_Bar

    Any help?

  11. Hey Ton,
    I would like to see bullet, mantaflow, EEVEE code merged then used for realtime simulation in Blender AND as the new default for realtime BGE. While at it, get the GIMP team on board and merge use GIMP code as the core for a sophisticated internal texture studio(all Python). The final touch would be work being done at https://github.com/pybind/pybind11 being implemented. The conjoined work would surpass that of all else and also would open up a new world of design capabilities for designers and become the central utility for exchange(file formatting) as well. Awesome work

  12. “CUDA binary kernel for this graphics card compute capability (7.0) not found.”

    Current Blender releases do not work on Volta Nvidia Titan V graphics card.

    https://www.nvidia.com/en-us/titan/titan-v/

    Hoping 2.8 will support Volta and newer Compute Capability 7.x cards coming in 2018.

  13. Whoops sorry forgot to say-

    Scripting-‘Look in Console input for now’. We have been doing that for a looong time. Debugging also has no agreed framework. Could the editor allow breakpoint setting pdb. Another option might be to allow linking to an external editor. Allow running of scripts but not needing to have them loaded in the editor.

  14. my 10p worth:

    AnjinGames- all our work in Blender we love it

    * I disagree that scripting is easy: problems- Editor undo mixed up with object undo, long winded installation with need to register functions and other fluff is not easy. Users just want to say thats my macro, add button for it to desktop press it, it runs. Thats what happens in Maya. That is what easy should mean.

    * Materials and Eevee/Workbench viewport. Please dont shoot Material nodes and replace with something of less functionality. We dont always want PBR shaders. What we want is the Material Nodes shaders for PBR and whatever else we need (ie toon, or cut down PBR or other shading model). Material nodes could be better designed but we have a full library of shaders already to preview our game assets close to what appears in Unity. Its amazing and we only got there once we found this hidden piece of true magic in Blender. Material nodes is currently better than Unity and on a par with Unreal once you work out quirks like lights etc. Why not spend the time and fix then foibles and bring it in line with Cycles.

    * Material Asset Library- Huge, we would love to see this. An independent window where materials can be browsed (visual sphere/cube etc) and loaded from external library. Unfortunately if it Cycles only it would be useless to us. Perhaps some Cycles and Blender Render/Material Nodes convergence would be good. Some way of changing the input textures for Material nodes from the Material Properties tab would be good, instead of having the textures stack? That way new users can use Material Nodes shaders without caring how it works and delving into the node structure.

    * Animation- lastly please continue to work with Unreal and Unity guys on how animation can be moved and edited. There seemed to be real and identified issues that could be fixed about joints which hinders animations getting into Blender (see the UE4 video on this subject)

    On the positive side Blender has changed hugely with the whole UI revamp. I can’t say enough about how that has enabled our business to use Blender.

  15. Can we maybe have a pause button?

  16. Amazing progress! I work professionally for the game industry for 10 years and in the beginning I stated using blender over 3d studio max just as a stand against autodesk. Let’s be honest – in the beginning it lacked features and had issues. With the 2.5 project there was a big usability upgrade but blender was still a bit behind in some useful stuff. In the 2.6 and 2.7 I feel blender became a tool with no less power then any other product. I can’t wait for the 2.8 project because it will be the first time when blender actually starts leading! I try donating as much as possible and I plan to continue doing so! Thank you for the amazing software and taste of freedom!

    1. I want to share a single thing that bothers me – the modifier system. Many modifiers have the option of using another object as an origin point and that’s quite useful. The problem is that in complex project my scenes are cluttered with empties and finding the correct ones seems hard. I think it would be awesome if the modifiers have built in empties that you can move and are only visible when you edit the modifier. That will save a lot of clutter.
    2. This is also a problem regarding modifiers. I actually spoke about it many times but with no result. The problem is the bevel modifier. Until 2.72 it was the best thing ever and then something happened. The algorithm changed and it’s no longer usable in combination with subdiv. The geometry it’s producing now is simply not good and I have no idea why nobody is speaking about it. Here’s a picture showing the difference:
    blob:https://imgur.com/2ad85630-40a1-45fa-8320-8f27c62919c3

  17. WOW!! Blender 2.8 is going to be massive.
    * I think it’ll be better to include workspace toggles in the settings window. What I mean is that people should be able to choose what they want to use Blender for, e.g movie production (shows a Blender workspace for movie production), game development (includes modeling, animation, texturing, sculpting), etc. I think this is the best way to keep everyone satisfied and avoid confusion. The simplicity workspace for 3d printing and others should also have a toggle in the settings window. If the user can choose to use Blender for e.g game development from the splash menu, I think that would be a plus.
    I really like the way Blender’s UI is right now. I think everyone can handle a few changes in the UI, but killing the current minimalistic look Blender has right now, will bother so many artists who have been using it for years. Blender’s UI is really what differenciates it from 3DSMax, Maya, Modo and the others.

    * For the workbench viewport, I think it’s necessary to have the clay renderer as a different render engine. I know so many artists who use Matcaps when modeling. Well, I guess it will make more sense when 2.8 is released. The manipulators need a lot of love for sure. Of all the 3d modeling software packages I’ve tried, Modo’s was the one I liked the most (especially when scaling), It didn’t have plenty of axis showing up. It was rather intuitive and it was great! The reason I didn’t go with Modo was that the viewport (I spent so much time trying to make it look less daunting), awkward tools, and hotkeys were hard to understand. Most artists who use Blender, are game developers using Unity and UE4, so I think if you can make the manipulators look like what they use in their game engines, it will be wonderful.

    * It pains me so much when we talk about sculpting in Blender, and Zbrush artist laugh. Sculpting in Blender is awesome, but I think a sculpting workspace should be included. I dream of the day sculpting in Blender will look or feel like sculpting in Mudbox ( Zbrush is ugly, no offense). I don’t know when this will be done, maybe in Blender 3.0, but I hope it comes soon. The I’m seeing it, Blender and UE4 will be the best tools for game artists in about a year or two.

    That was pretty much all I could think of at the moment. Eevee is going to be a big step forward and I look forward to visualizing game scenes with it. Thank you for this wonderful software. I will definitely donate in the future. My experience in Blender has been nothing but good. I’ve been using Blender for barely a year now, and I don’t see myself using another 3d cad package. Cheers to the developers!!!

  18. Whatever happened to unified physics? That was once stated as a 2.8 goal but it’s not mentioned here at all. I hoped it wasn’t pushed back to 3.0, some of the simulations in Blender are in dire need of replacement.

    • It’s on the radar and on my mind all the time, but I can’t find a solution for it yet. We’re juggling here with too many balls already. Don’t want to drop them all :)

  19. i don’t like blender 2.8 ; the change in the interface and when install external render can’t show it in the render menu and i if the user use eevee and want render with cycles he will create new materials again ?

  20. Hello, I am quite excited about blender 2.8 especially layers. One question of I have about layers is whether it would be possible to import layers from a dxf now?

  21. Thanks for all your hard work guys! Will it be implemented that one group of faces could use another group of faces to mask/show the first? I see it nicely in EEVEE how the wireframes can be occluded by another object’s geometry. Sort of like alpha compositing in realtime. No biggie, just curious. As an NPRer I’m always thinking how a tool like EEVEE can be used for unintended purposes.

  22. Why was my message deleted? Just like Matthew Carson two messages ago I mentioned about a limitation with hotkeys and a possible solution to allow users to have more freedom on top of what is already assigned to hotkeys. Giving our feedback is probably the best way to get involved.

  23. I can’t wait for 2.80 and Eevee!

    Mm, I don’t know where I can post this, but I’ll try here. The more I’m using Blender, a detail is bothering me. You guys have using all hotkeys and didn’t left any for users. It’s extremely time consuming to guess which hotkey have been used among thousands of combinations. I suggest that Blender team allow an extra key modifier reserved only for users to make new key combinations. For example, most keyboard come with the ‘FN’ key.

    Is there an official forum for posting suggestions or requests?

  24. Im concerned it will have different views such; Solid view, Texture view, Material view, Ect.
    I don’t want to be in render view the entire time as that might fry my computer. Im on mac, and if Im to be in render view/ real time render the whole time I’m doing something, it might over heat my mac and will have to resort in breaks every 30 minutes.

    I hope the development team will keep the different views for cycles and Eevee cause they both are really good looking render engines and I want to use both as much as possible. Take in consideration not everyone has strong computers.

    So again I really hope to see different views then just real time render the whole time. But other then that, really look forward to 2.8

  25. I’ve subscribed to [email protected] to get the ideas and implementations about 2,8 UI but I don’t see much activity there. Where is blender institute picking up suggestions about workspaces and custom application templates at the moment?
    I´d really like to contribute with a new icon set as well as other workflow-related ideas on the workspace (or application template) but don´t know who to write or send all these ideas or mockups to?
    Thanks

    • That list is still the best place to talk about that, or even to inquiry how to get involved. It has been a low traffic list, but hopefully that will change in the upcoming months since a lot of the work in 2.8 can benefit from hands-on design work.

  26. I’ve written a few Addons based on other scripts so some idea of what is capable, but scripting a particular set of buttons somewhere is what a bunch of other panels already do (and crowding an already crowded zone). And they are mostly for newbs who need those basic tools front and center, so to speak.

    I’m in love with the idea of a specific editor window just for custom button palettes and lists. It absolutely would not interfere with anybody’s workspace if they don’t want, it preserves the non-overlapping paradigm, it allows you the same freedom of placement and multiplicity as the other editors, and it creates a place to adapt a particular set of tools for particular tasks, which seems awfully ‘workflow’ oriented and consistent with the efforts to reduce clutter.
    (of course people could say this about many UI ideas so perhaps I can’t speak for others).
    I wish I could create a new editor window in Python, then I would dive in! I’ve tried crawling through the C-code and although I could do it, it’s too deep for me right now.

    Frankly I find a hot-key-heavy process difficult to do fast. With ‘one hand on the mouse and one hand on the keyboard’, I can’t hit all the hotkeys with my left hand, so my right hand is constantly moving between the keyboard and the mouse. I can mouse REALLY fast if the tool buttons I need are as close as I can put them. And in my case as mentioned above, remapping a streamlined set of tools for a particular workflow is not valuable and really messes with the default setup and people can share with each other (in tutorials for example).

    I”ve been called weird though so perhaps everybody else is just ‘meh’ on my idea :)

  27. I have 1 point which i like, but also 2 points i dislike.

    First, I quite like the concept of workspace presets, it can easily access either custom or official workspaces.

    But the problem is, workspaces bar is actually wasting of screen space. I don’t think user of any kind would switch between different workspace very often. But that bar used almost 1/5 of screen space, which is very expensive to small monitor user (even in a 22″ monitor) and unnecessary. Instead, I proposed to used a small dropdown manual rather than a heading bar.

    i’m been using Blender like 4-6 years ago, one thing really impress me is the clear UI of blender. I’ve also been a user of maya, which got similar UI to the 2.8 proposal. We have to avoid the mistake of Maya, which got a crowd UI which is totally unnecessary.

    Second, new value slider is totally suck compare to the current version(2.7). The original got a thick sider which is easy to select and move around, plus we can easily edit values by double clicking the large box. The new one (photoshop style) is hard to select, hard to edit the value (selectable area was too small). This design is totally rubbish compare to 2.7.

    Please forgive me to be rude here, because all of us just want to make blender better and better.

  28. This new Blender will be killer, but I still do not hear about allowing the user to put most used, most recently used, or favorite tools in a directly mouse-accessible place (like a dedicated new Editor window, hint hint). It started to emerge in the beginning of the 2.5 refactor but quickly disappeared.
    Then different templates could be saved with different relevant tool buttons directly in the interface. Hotkeys are fast but there are what seem like 1000’s and some are very difficult to do with one hand. My projects are more diversified than say a rigger so I need a different way to optimize my workspace.

    And thanks for what must be the coolest and most powerful open-source project in the Solar System! [can’t speak for elsewhere :) ]

    • Agreed that a drag-n-drop style shelf would be nice to have, yet currently creating a button in the interface triggering some python is really not so hard. There are nice examples bundled with Blender that you can open from the text editor and use to create your own thing.
      Still a “place current script in toolbar” button in the text editor surely would be neat.

  29. Its amazing the new Blender 2.78-. I would like that the mesh its would be more organic like for example Softimage. Speciallly for organic characters and not for gaming characters. Please consider this idea. Thanks!

  30. anyone know what “An in-depth redesign of our functional user interface” means? what’s FUNCTIONAL USER INTERFACE?

    is that the system that will allow us to unify mouse button clicking so that we can switch to LMB select in 3d viewports without all previous LMB selects in other contexts switch to RMB? or keep RMB select in 3d viewports and turn all other selecting in other contexts into RMB too?

    • I didn’t write that line, I presume it’s “functional” to emphasis the core of it’s functionality (and not looks and defaults and configs).
      Making LMB select a sane working setting for Blender is high on the list. It’s flawed currently.

      • thanks for clarifying and for saying that, ton! i’m soooooooooo looking forward to that getting sorted!

  31. I’m currently using the addon Tab Interface. It saves me A LOT of time that I used to spend rolling, rolling and rolling the mouse through the panels.
    In Blender 2.8 I wait hopeful to see tabs everywhere.

  32. “Multi-object editing” When finally it will get any traction? It’s like the most requested feature of all time in Blender : (

    • If it were easy it would have been done. Blender is just too complicated to make things predictable.
      For example, what if you change a modifier in 1 object and want that copied to the selection? What gets copied then, how to define sane rules here? Same for material shaders (colors), textures you assign, and so on.

      • This is not what multi-object editing refers to in this case. Here, it means being able to have multiple objects in edit mode, pose mode etc. I pointed this ambiguity out when reviewing this post but it wasn’t clarified.

        The multi-object editing Ton was referring to is this one: https://wiki.blender.org/index.php/Dev:2.8/UI/Workshop_Writeup#Multi-Object_Editing. Basics of this are already working in the 2.8 branch (simple changes are applied to all selected objects), but the corner-cases Ton mentioned still need to be solved.

  33. I like all features , but UI, I am really worry about the blender will become the autodesk and lost it self style. I have read the new mockups from https://pablovazquez.art/ui/, the design make me despair, more like microsoft office, photoshop, even the 3ds max. the complex top bar, looks good but not useful and quickly, even the object mode merge in it, have three horizontal bar: the workspace bar, the tool setting option and the status bar in the bottom, less work space on the vertical in one screen with 16:9. more the idea from blenderguru, loss the editor rule in blender.

    New design have many same functions, like Visible Layers, Render Layers, Collections, and Object Groups. like the Templates, Workspaces, Screen Layouts, more or less have some relationship in it.

    The magical place in blender is the simple UI, simple operation, not need many buttons, just done with the hot key and mouse, so the work efficiency is very high, even not worry in the full screen mode, but new design succumb to tradition, become ordinary.

    The value slider in 2.7x, you can slider, type value and insert keys, the name, value, and slider all in one, save space and big operate area, new design is split them take more space and less operate area, more like the c4d.

    The current UI in blender is the best UI that I learned software, as same in Houdini, both used the editor rule, lots people don’t like is because don’t know how to use, like the Vim editor, So the good tip and start tutorial is much useful than change UI, like the good tip on the screen splash, it’s very useful. Change the UI in frequently is also not good for one software development, takes lots time, and most talked on it, so I think pull more developer on the features is much important, like Eevee, Manta flow, Fracture Modifier, and everything node, the vfx in blender is very weakest.

    Thanks for the Blender foundation and all developer, Looking fo the better blender, believe 2.8 is a new star in 3d world.

    • Leroy, you are missing the point, the hotkeys are not going anywhere. People who rely on hotkeys can keep using them with the same efficiency. The Shift+F7,F10 as you recommended (thank you) is good for you, but not for others. Those panels are still very very clustered. Especially if you add the addons.. (I guess would be nice if there was a dedicated add-on panel.. kind of like the tool-shelf).
      Point is Blender’s user interface needs serious reorganization to improve workflow and remove annoyances.

    • Thanks for the compliments of what you like in the current UI. I also think we did a good job, but it’s a job that’s never ending. We especially suffer feature–creep, too many tools and options, editor types, etc. That’s a reason to look at better configuration possibilities to keep it simple and sane.

      Work on style and layouts will be done as a public project and will commence in the coming (many) months. Feedback is welcome, and especially design proposals for how to solve the issues best – while keep being our own and unique fantastic “Blender” :)

      • Very thanks for your reply and take up your precious time, I think the reason of the problem more is from the people don’t know how to use when they get start, change the UI is’t the best way, takes lots time and money, especially change frequently. there is a little suggestion from my experience:

        1. Show the hotkeys after the editor name from the drop down list on the header, lets people to know that, not need hard to select, I find lots people don’t know this.
        2. Add the hotkey to the Split/Join editor, just like in houdini, not need to drag for every time, hotkey is much more fast.
        3. Add the use tip on the screen splash, not too more, just one line, it’s friendly for new start, as far as I know have a addon to do this.
        4. In the Image/uv editor, if can use the Alt+ Scroll MMB to loop switch the image will much better, it’s useful for lots images.

        BTW, in the new ui design, the display mode have merged into top bar, if I have two 3d viewer, how to achieve one is display as wireframe, and others one is render preview, I can’t imagine it, more like the mode option on the per 3d viewer header.

  34. 1. I just read that Ton was talking about color and viewport overrides in 2.8.
    One thing that would be really cool in 2.8 is a better visual way to organize your scene. For example being able to set different colors for groups, emptys, rigs, object outlines.
    Is this included in the workbench engine ?

    2.Right now I find the Driver interface, which is quite essential for rigging, very unclear. In the future, it would be great to have a seperate editor where we have an overview of all the dependencies in our scene! Where we can easily assign / copy / paste drivers.

    3.With the new dependency graph, will it be possible to have a single modifier for multiple objects ? Or multiple modifiers sharing the same input ?

    4. Will overrides be integrated in the outliner ? For example having a group of geometry, on which I can put an override on top in the outliner ( like a parent child structure)

    5. Will we have a better integration of transform / geometry caches in 2.8 ? Like an alembic point cache

    Keep up the great work so far, I am very excitet for 2.8!

    • 1. I always wanted a good system to assist users to assign meaningful colors to views. Your suggstion makes sense. I don’t know yet how much of that will happen. Part of the UI and design phase still.

      2.The Driver UI in Blender is one of the worst we have. Definitely should be solved.

      3. We keep the old stack work for the time being, after that’s stable we can move on a node system for it. Not a specific 2.8 target, but certainly one of the coolest results depsgraph rewrite will enable.

      4. Overrides relate do a certain ‘view’ or render ‘layer’. The outliner shows all data as in a scene.

      5. Better caches for sims/hair/cloth/particles/shards/etc is high on our design list.

  35. Man, I am really looking forward to that top bar (oh god I hope it has tabs too ^_^ )! I really hate clicking on the tiny sometimes hidden icons (camera, world, material, texture, etc.. panel) then scrolling up and down for what feels like minutes trying to find the property I want to change.. I am talking of course about the Properties panel. Been using Blender since 2005, and that panel is my one most hated thing about blender.

    • You can through the editor by the hotkeys, e.g. Shift+F7 switch to property editor, Shift+F3 switch to Node editor, +F10 switch to uv/image editor, it easy and faster for use not need select from the drop down list.

  36. End-User:
    -On the customisation I really wish you’ll put some extra time in making it user friendly for non-code savvy people. Right now there are many parts of Blender that are hard to customize (custom pie menus, custom window pop-us) and some parts that give poor feedback with conflicts (hotkey bindings, hotkeys that are specific to a tool which I don’t think can be changed at all, add-on hotkeys) and some that could tell you that what you are changing is basically same as X-thing which has different name (For example changing 3D navigation hotkeys should point to the relevant entries in the hotkey list of similar function on 2D views etc)
    Right now it is somewhat frustrating trying to customize Blender.

    – On render engines my only worry really is clutter. I don’t know if you already have plan for this but in the latest builds all the engines are still under single tab. Considering we might have a large amount of engines in the future (Cycles, Eevee, Workbench(is that same as current builds clay?), Renderman, AMD Prorenderer, Appleseed, Mitsuba… list goes on) there really should be better way to manage them than single drop down. (Or at least it would be nice then to have some kind of organization inside the drop down such as raytracers, real-time, visualization) Alternatively it could be interesting to have some kind of toggle button next to the drop down that would change its contents.
    Obviously no one is going to have all the mentioned engines installed at once (probably) but I can still see it posing a problem. Say you have the workbench for modeling, some kind of matcap engine for sculpting, then you have Eevee for realtime preview, Cycles for rendering. It does get cluttered fast.

    – Well I guess Amber will live a lot between now and 2.8 release.. For me personally right now most crucial parts of any kind of asset management would be to, easily drop in materials and objects, and to be able to manage those materials and objects in some kind of library. I do hope this gets some specific loving, though, because it has the potential to make many things majorly more simple for the artist.

    Technical:

    – Does the interleaved global/local undo stack mean I finally won’t loose everything if I accidentally do too many undos in object mode? If yes then praise the lord.

    – Does the draw manager allow compositing overlay engines into the final renders right now? For example could I have some kind of render engine that does “posterize” effect on an image, overlay engine that does silhouette based lineart and then have that combines as passes for final render? If yes then that opens some pretty interesting possibilities for the NPR workflow in the future. If not then it might be interesting thing to consider.
    Other than that I guess I just wish it is as accommodating for outside renders/developers who want to make new render/overlay engines.

    Well I guess that’s all coming to my mind for now. I do hope 2.8 turns out great.

    • Too many topics in 1 comment, hard to reply :)

      – On the customisation. The 101 project is aimed at testing the new customise features to make Blender accessible for 3d print users. I’m not sure how easy customising will become, the complexity of the tool might just make it a quite a tedious task. I don’t think it’s something you do daily (aside of the usual user prefs).

      – Render engine clutter; should be checked on. For as now it’s just 4 or so.

      – The asset manager will need a lot of attention from the UI team (and everyone is welcome)

      – Interleaved global/local undo stack: currently edit modes have own undo systems, not registereing changes you do for other stuff (material color or so). I never heard of losing object mode undos if you do it too many times…

      – We will work on real (real time) compositing of layers in the viewport later next year. First we want everything to work smooth and stable. Things like posterize or NPR could work then. It’s *not* about the overlay engine though, that engine is meant to assist the tools and edit modes.

  37. This is really minor but while you’re working on consistency of code and stuff in the rewrite, would you consider standardizing your multi layer EXR outputs with the rest of the CG sphere? When you bring stuff into Nuke or external compositing programs, the naming standards are mismatched, mist works better for depth than the actual z depth pass, RGB/RGBA instead of “Combined” (the difference is deeper than that, but that’s a long explanation) , things like this. I have a node that fixes the discrepancies on output as much as is possible without reconstructing how it’s done from the ground up but it’d be nice if it did it by default.

    • That’s a good suggestion. Breaking compatibility in 2.8 is possible. Needs to be studied on.

      Note that Blender was the first (2006) to implement this in OpenEXR. On the EXR mailing list I proposed defining a standard back then but we didn’t get a real response to that (they thought it was up to the apps themselves). I am an active reader of the OpenEXR list, and to my knowledge a standard was never proposed or set.

      Now I wonder if Nuke, Photoshop, Flame, etc. all do the same today?

    • I guess the solution would be having profiles that would allow you to remap that at export and save the profile for later use but might be hard to find someone to do that.

  38. we need nodes to be able to operate using dictionary and lists of data, also we need a inciriment setting for math node.

  39. How nice of you to release this information to us.

    I’m intrigued about the Workbench engine. It sounds exiting, but the decisions and specific intention surrounding it are a mystery.

    What more could be said about it?
    Are the aesthetics of it also targeted towards making a final render? maybe a technical one?
    Does it come with a library of predefined materials?
    Is there a rendering engine on other software that could be compared to? or is there software that being used for inspiration?

    I’d love to hear about the workbench engine.

    Thanks to all the devs making this leap forward possible!!

    • The workbench engine is basically what Blender now has. A drawing style optimised for for the editing tools in Blender (fixed ‘workbench’ lights, wire+solid, color overrides, texture previews, and so on). Modeling in Eevee is fun but not always useful :)

      • Topic clarified. Thanks Ton.

        • Although something like that I had figured.
          I thought maybe the plan could be to implement something like what Fusion 360 has: beautiful shaders and materials that are good for modeling in, and look good as a render to showcase what’s been modeled.
          But according to what I read in the developer blog color assigning was considered a main feature, so I guess it’s like zbrush… I don’t know.

      • Are we keeping the current drawing styles then? ( I hope so because as you say they are very useful )

  40. When using manipulators, would it be possible to take into account the direction of the movement when entering a numerical value? (i.e. like in AutoCAD. At the moment, to move an object one metre in negative-X direction we need to grab the x-arrow, and input -1, no matter in which direction we ‘pull’ the manipulator.)

  41. Please make sure that FBX is good as it is now in 2.79 as it is used daily in our Unreal Engine 4 workflow.

  42. “active mode per workspace” was making sense when the goal was to break actual modes, to rebuild them for specific tasks and to let user creates, customizes its own mode for a specific task.
    IMO, this is still too ambition considering what are orphan targets and postponed ones.
    I would suggest to have an “active mode per collection” transition that could work with current modes.

    • Currently these modes in Blender affect multipe (of not all) editors.
      For that reason it’s useful to communicate very well what the current mode is (Paint, GP edit, vertex edit, arnature edit, etc). Even some add-ons create entire modes.

      We propose to set this in the top bar, and allow each workspace to define own (persistent) modes.
      Mode switching then can also be done by switching workspaces, which then can have the UI layout configured to facilitate the mode best.

      This is the design theory. It’s a simple concept – and usually these survive best in the long term.
      Let’s first make that work and check on more refined methods later on.

  43. With the new design in 2.8 , will we be able to create different render settings for different render layers ? In order to not always having to change the ouput path / light path settings / file format etc. for different rendering “sections” like final / preview / volume rendering etc. ?

    • Not exactly for different render layers, but for different workspaces. So you can re-use the settings for new projects even. That said, we are still deciding which settings will be there.

      • That said, you will be able to override most of those settings directly for a view layer. For the cases where you don’t want to have this changing per workspace even.

    • To say it in my words: The new View Layer will have similar (and more!) properties as old Render Layers in Blender had. Just be aware that all layers are part of the same Scene – and that in a preprocess all geometry and shaders and light setups will be defined or created. All of the Scene’s layers have to use the same set of input data. For example, the result of modifiers and animation data.

      What’s visible in such layers is in control per layer (using Collections) – plus a number of override settings that are possible change on rendering time.

  44. Looking forward to seeing more information about workbench. Of course, I hope that there wire frame mode for this engine will be available, as it is very key for modelling for architecture / infrastructure.

    The other question is “The non-modal tool usage will be supplemented using manipulators. Instead of having to execute a tool from a shortcut, it will additionally be possible to execute it using visual handles.”

    I hope that this means that hotkeys / shortcuts are still available. selecting manipulators is time consuming compared to pressing a hotkey for a high speed modelling workflow.

    • Shortcuts are still an integral part of Blender (advanced) workflow. However in some scenarios (new users, Blender 101, VR) you can’t rely only on them. Thus the urge to improve the non-shortcut workflow. As the text says, “it will additionally be possible”, not exclusively.

  45. https://twitter.com/NVIDIADC/status/913150638703259649

    https://developer.nvidia.com/cuda-downloads

    Will Blender 2.8 support Nvidia Volta GPUs which uses CUDA 9.0 for full support?

  46. Very exciting stuff, really looking forward to the asset management engine, proxy everything, collections and workbench!

    seems like a really ambitious target, but you guys have demonstrated to be very capable and thorough.

    A ton of appreciation, cheers!

  47. What happened to:

    “More responsive to user actions (low latency editing, updates, selection)”

    ?

    • With the OpenGL upgrade we removed all calls to the ancient OpenGL selection system, that was the main reason for latency for many users. I find it all very responsive now, and we sure will give it high priority when we get reports it doesn’t work satisfying.

  48. On the Workspace changes. It seems to be the idea in 2.8 to limit the selection of the scene to the main header bar, so all open areas refer to the same scene?

    This makes me a bit curious about your thoughts on how to assemble ex. OpenGL clips, grease pencil drawings etc. in the sequencer? Because if the sequencer(in window) is accessing the same scene as you work on in ex. a 3d view(in the same window), things will be very confusing. Meaning a “source” project timeline and an “assembled” project timeline will be opened at the same time in the same window. A way to solve it, I guess, is to let the sequencer access a scene outside the globally selected scene? Are there any thoughts on how to deal with this, when the new workspaces are implemented?

    Another way of trying to explain the challenge(as I see it): https://blenderartists.org/forum/showthread.php?406129-Blender-2-8-development-thread-(Widgets-and-Eevee)&p=3200444&viewfull=1#post3200444

    • The Sequencer is currently more or less in a orphan state. We welcome developers to pick this up and modernise it as well.

      Further; the complete set of sequence strips belong to 1 Scene, even when it contains ‘scene strips’ from other scenes. It’s good to keep that context, but it’s certainly possible to allow some kind editing of other scenes (when active as strip) in the preview area. Think of position the camera and tweak camera or render settings. That would allow editing of real-time 3d content in similar ways the Unreal editor for cutscenes has.

      • Thank you. That would be very nice to adjust ex. the camera angle in 3d view, by selecting that strip in the sequencer. That would make a very smooth way to work with 3d camera setups in correlation with the clips before and after the current clip in the sequencer.

        Will the internal architecture of Blender allow an API addition to letting an area, ex. one instance of the sequencer, to access another scene than globally selected, through python?

        That way ex. could the http://easy-logging.net/ script work within the same window(with access to two different scenes from the same window(editing table+scene))?

      • On the integration of the Sequencer and the 3D Viewport for making Cut-Scenes/Previs I did a script to test it out: https://blenderartists.org/forum/showthread.php?442032-Previz-Camera-Tools&p=3264762&viewfull=1#post3264762

        It works well, but is limited to work inside the current scene. If the sequencer could run in a sequencer-dedicated-scene and all other areas of the screen could display a different scene(changed by the API) then it would be possible to make a script to seamless edit all scenes assembled in the sequencer, from the sequencer. IMHO that would be an amazing workflow.

  49. https://www.khronos.org/news/press/khronos-releases-opengl-4.6-with-spir-v-support

    Please use OpenGL 4.6 for maximum performance.

    Using OpenGL 3.3 from March 11, 2010 in 2018 is pretty ridiculous.

    • OpenGL 3.3 is the absolute minimum, we can use newer features too for as long there’s a fallback possible or when it’s a distinct feature that won’t impact or frustrate 3.3 users.

      Don’t rule all the people out there who don’t have the fastest or latest hardware, or labs in high schools or colleges. We had plenty of complaints of people who feel left out with 3.3 already. I think we found a good middle ground here.

      BTW: MacOS still uses 4.1 as latest.

  50. Thanks for this informative document. Blender 2.8 is gonna be a whole new ball game.

  51. I would love to see in all that goodness is there a way to ger vector displacement working in Blender?

  52. A showstopper with the animation system that should be addressed ASAP is “animation layering,” where an “Offset” or “Delta” blending mode for NLA Strips would offset the values in lower Strips by those in higher Strips.

    Softimage (RIP) has an animation layering system based on its NLA editor which uses this method.

    https://download.autodesk.com/global/docs/softimage2014/en_us/userguide/index.html?url=files/animlayers_CreatingAnimationLayers.htm,topicNumber=d30e159115

    • Now 2.8 work is on the rails, our animation system is definitely worth spending time on too. Working on making this happen.

  53. Very nice document! Thank you.

    Concerning 3D view port Manipulator Widget main issue is hiding some parts (axes) of it when rotating or translating. Because of this there is no reference for gimbal lock (crossing rotational axes) or original reference point of translation.

    Look for example at this old Blender (pre 2.48) interface picture where gimbal lock was very clearly visible when user rotated the rotational axes https://durian.blender.org/wp-content/uploads/2009/10/gimbal_widget.png

    • Right. While using manipulators its display can change or show additional info.

  54. Awesome !
    Thanks for sharing this ! Blender is always going in the right path !

    Keep up the good work !

  55. All exciting and excellent. I appreciate the work outline and scope. I noted the focus on the Grease Pencil component, but was disappointed, yet again, with the lack of any mention of NPR related efforts, outside of the Grease Pencil, such as Line Rendering with Artistic control updated live in Viewport. Freestyle had great features, but it is Post Process and linked the the BI engine, which is not going to make it to 2.8. The current project ‘Hero’ will have an NPR like look, but is going to be using the Grease Pencil toolset, rather than a Line Rendering toolset like Freestyle. Both are needed, but no mention of NPR in the short or long term goals?? Ton said he was going to talk to Tamito. Please put this on some ‘target.’ Thank you.
    Paul

    • Talks are still ongoing, waiting for proposals. It’s not a small thing to do.
      Note that new viewport/render design will make adding NPR render (in viewport and as offline render) very nicely integrated and possible – much nicer than before.

      Similarly, people can note that other topics are not listed. (like BGE, refresh of animation rigging system, Cycles, better texturing tools, compositor, and so on). These topics are not forgotten, but they either don’t have concrete plans now – or do not have a direct relationship with the core foundations of the 2.8 work.

      Blender has 1000s of great features and tools. The 2.8 project is to tackle some of these – especially the very hard ones. Doesn’t mean a lot of other projects just continue.

  56. UBER EXCITING!, cant wait to start using things like eevee the new Grease Pencil, and the gorgeous new the top bar

    • Yes me too. Those things will help me to finish my next animation.

In order to prevent spam, comments are closed 15 days after the post is published.
Feel free to continue the conversation on the forums.