Maniphest T54592

Workbench Task list (WIP)
Closed, ArchivedDESIGN

Assigned To
Jeroen Bakker (jbakker)
Authored By
Jeroen Bakker (jbakker)
Apr 13 2018, 12:25 PM
Tags
  • BF Blender: 2.8
  • Code Quest
Subscribers
Bartosz Moniewski (monio)
Brecht Van Lommel (brecht)
Jeroen Bakker (jbakker)
michael knubben (michaelknubben)
Nahuel Belich (belich)
Okavango (Okavango)
William Reynish (billreynish)

Description

This ticket gives an overview of the tasks that need to be done for the workbench engine.

UI Changes

  • Each 3d view will have a location where the Viewpoint (Camera, Front, Side etc), Draw mode and Overlays can be selected

Draw modes

  • Each render engine should be able to register their own set of draw modes.
  • User should be able to select an draw mode. from the overlay render engine, workbench render engine
  • When a user selects a draw mode the draw manager will enable the corresponding draw engine.
  • Inside the draw mode selection menu the active draw mode can render its settings. [related to D834]

Overlay modes

  • Users should be able to activate/inactivate an overlay.
  • Only relevant overlay's for the workspace edit mode are selectable by the user (poll function)
  • Active overlays are stored with the current workspace edit mode. Switching workspace edit modes will change the active overlays
  • A user should be able to turn off/on the overlay render engine. (simulate render only)
  • the active mode can also add an overlay that the users can enable/disable (floor)

Workbench Render Engine

The mission of the workbench render engine is to be the fastest render engine as possible.

Shading mode

  • Silhouette drawing mode: The object/materials is rendered in a single emission color
  • Solid drawing mode: The object is rendered using a diffuse shared with a constant color
    • All objects will use the same diffuse settings.
  • Textured drawing mode?: Currently unclear if this will be the responsibility of the Workbench engine as it doesn't know about the used texture coordinates.
  • drawing object smoke

Lighting options

  • Studio lighting: a set of static lights will be used for highlights and shadows, The lights are parented to the viewing point. We will render these lights to a spherical texture and use the viewpoint normal to pick the highlight color.
    • Users should be able to change the static lighting setup.

Background

  • HDRI
  • Color

Floor

  • Will render a reflective floor beneath the model.
    • Base Color
    • Roughness

F12-rendering

  • Connect F12 rendering

Note: For scene lighting should we use the scene render engine?

Overlay Render Engine

  • 3 types of wireframe drawing mode (front, front+back, tessellated)
  • Texture drawing mode
    • The texture of the selected texture node of the material will be rendered.
      • The used texture coordinates have to be determined from the scene render engine. So we need go into this design...
  • MotionTrail overlay: will draw the motion trails of the bones of the current object. The motion trails are baked.
  • XRay
  • Image (connected to empties or viewpoint)
  • Bounding Box

Event Timeline

Jeroen Bakker (jbakker) renamed this task from Workbench Task list to Workbench Task list (WIP).Apr 13 2018, 12:25 PM
Jeroen Bakker (jbakker) lowered the priority of this task from 90 to Normal.
Jeroen Bakker (jbakker) created this task.
Jeroen Bakker (jbakker) updated the task description.
Jeroen Bakker (jbakker) updated the task description.Apr 13 2018, 1:04 PM
Jeroen Bakker (jbakker) updated the task description.Apr 13 2018, 1:46 PM
Jeroen Bakker (jbakker) updated the task description.Apr 13 2018, 3:10 PM
Jeroen Bakker (jbakker) updated the task description.Apr 13 2018, 3:25 PM
Jeroen Bakker (jbakker) updated the task description.Apr 13 2018, 6:01 PM
Okavango (Okavango) added a subscriber: Okavango (Okavango).EditedApr 14 2018, 10:14 AM

Hi @Jeroen Bakker (jbakker) , good luck with the project, it will be one of the most important ones. And best regards to the rest of the Code Quest team!

If i may, just to add a little heads-up, for us technical users, don't know if this one is in plans, but it would be great as one of the options in the workbench engine:

A cleaner, simplified geometry look with sharp edges and contours. It should be excellent for better geometry overview and dimensioning. Also encouraging love for precision design.

Some sort of openGL textured diffuse shade with 'hidden line' overlay and simplified shadow engine, i have an impression it would fit nicely with your points above. Wires excluded between coplanar faces:

EXMP - link 1, link 2, link 3

Nahuel Belich (belich) added a subscriber: Nahuel Belich (belich).Apr 14 2018, 11:36 PM
William Reynish (billreynish) added a subscriber: William Reynish (billreynish).Apr 15 2018, 3:10 PM
michael knubben (michaelknubben) added a subscriber: michael knubben (michaelknubben).Apr 16 2018, 3:33 PM
Okavango (Okavango) added a comment.EditedApr 16 2018, 5:42 PM

As i understand, the engine / draw / overlay terminology and concepts are still not clear. From the user standpoint, the haze is only thicker :)
If you are open to general user feedback, it would be nice if you layout the exact terminology when it settles in the task description so we could be more precise when giving feedback :)

Besides the 'hidden line' suggestion above i could help by supplying a screenshot of my work context. I am an architect and i use Blender heavily when designing exterior / interior spaces, prior to making plan drawings. So this screenshot is architecture specific and is especially authentic when making detailed design decisions (this project is used for illustration, the 'hidden line' suggestion would be used in the largest 3D view):

Hope others will bring their use cases too, so you would have better overview.

Okavango (Okavango) added a comment.Apr 17 2018, 9:37 AM

On a larger scope, i don't know if you guys considered this approach, perhaps it makes sense:

Jeroen Bakker (jbakker) added a project: Code Quest.Apr 18 2018, 3:15 PM
Bartosz Moniewski (monio) added a subscriber: Bartosz Moniewski (monio).May 6 2018, 2:21 AM
Brecht Van Lommel (brecht) changed the task status from Unknown Status to Unknown Status.Aug 13 2018, 2:53 PM
Brecht Van Lommel (brecht) added a subscriber: Brecht Van Lommel (brecht).

Archiving this task for now, most of the design here has been implemented and further improvements will be handled in other tasks like T56349.