Age | Commit message (Collapse) | Author |
|
|
|
This commit merge the full development done in greasepencil-object branch and include mainly the following features.
- New grease pencil object.
- New drawing engine.
- New grease pencil modes Draw/Sculpt/Edit and Weight Paint.
- New brushes for grease pencil.
- New modifiers for grease pencil.
- New shaders FX.
- New material system (replace old palettes and colors).
- Split of annotations (old grease pencil) and new grease pencil object.
- UI adapted to blender 2.8.
You can get more info here:
https://code.blender.org/2017/12/drawing-2d-animation-in-blender-2-8/
https://code.blender.org/2018/07/grease-pencil-status-update/
This is the result of nearly two years of development and I want thanks firstly the other members of the grease pencil team: Daniel M. Lara, Matias Mendiola and Joshua Leung for their support, ideas and to keep working in the project all the time, without them this project had been impossible.
Also, I want thanks other Blender developers for their help, advices and to be there always to help me, and specially to Clément Foucault, Dalai Felinto, Pablo Vázquez and Campbell Barton.
|
|
Most of these were mismatched const qualifiers
|
|
|
|
This allows operators to filter out properties from the
auto-generated draw functions.
Some custom draw functions can move to using this.
|
|
Support for sync selection switching which keys apply.
|
|
This reverts commit 81a93df6d22c2f148667b9a6e8308e083a4cec39, it is not safe
to handle initialization for startup.blend differently. Instead fix the root
issue of the preview icon data structures not being initialized in time.
|
|
|
|
This patch adds a new matte node that implements the Cryptomatte specification.
It also incluces a custom eye dropper that works outside of a color picker.
Cryptomatte export for the Cycles render engine will be in a separate patch.
Reviewers: brecht
Reviewed By: brecht
Subscribers: brecht
Tags: #compositing
Differential Revision: https://developer.blender.org/D3531
|
|
|
|
So all shading settings are in this struct and can be reused in the OpenGL
render engine.
|
|
|
|
|
|
Edit doxy files and header guards only.
|
|
Instead use global panel-type list.
|
|
|
|
|
|
This is a quick way to see if some of the object types in the
scene are hidden or unselected.
Icon design may change.
|
|
It's not necessary to do both, and trying to hit a target that changes
size is annoying.
|
|
A toggle for this is no longer required now that both header and background
colors are RGBA (disabling Show Header is the same setting the alpha to 0).
Thanks Brecht for reviewing!
|
|
|
|
|
|
Use for drawing modal operator header keys.
|
|
Internally it's still mostly named lamps, though some modules like Cycles
were already calling them lights.
|
|
|
|
It was a bit odd that the scene was stored per window but not the view
layer. The reasoning was that you would use different view layers for
different tasks. This is still possible, but it's more predictable to
switch them both explicitly, and with child window support manually
syncing the view layers between multiple windows is no longer needed
as often.
|
|
* Main windows show a topbar and statusbar, and select a workspace and
scene. They are created with Window > New Main Window.
* Child windows do not show a topbar or statusbar. These follow the
workspace and scene of their parent main window. Created with Window >
New Window or View > Duplicate Area into New Window.
* The purpose of this change is to support multi monitor setups where you
just want to put more editors on the other monitors. Without multiple
topbars and statusbars, working within a single workspace and scene.
Creating multiple main windows is intended to be a concious choice to
do different tasks in different workspaces and scenes.
* Note these changes do not currently affect how the operating system
treats the windows.
* When changing the workspace, the layout in all child windows changes.
This makes sense if we consider child windows to be just a way to
extend the main window across more monitors. In some case it may be
useful to keep the same layout though, we can add an option for this
depending on user feedback.
|
|
|
|
Some popovers don't fit well with the default width,
allow panels to adjust as needed.
|
|
Draw with alpha * 0.5 instead of using item them color, this doesn't work
well in the toolbar menu and highlighted menu items otherwise.
|
|
|
|
|
|
|
|
|
|
|
|
We were using int's for bool arguments in BKE,
just to avoid having wrapper functions.
|
|
Could support other RNA types,
however menus don't work well in this case.
|
|
|
|
|
|
|
|
|
|
|
|
Interface files are increasingly mixing up too much functionality,
add a file only to handle queries.
More functions can be moved/added here.
|
|
For example collapsing the lower part of the topbar with 2x interface scale
would hide the top-bar header region. There were also more asserts when changing
window size and moving area edges afterwards (same assert as in T55298).
Fixes are similar to e626998a262ebe4f.
With all the recent fixes I've done, area geometry handling should be stable
again. Let's hope I'm right :)
|
|
|
|
|
|
Key shortcuts and explanation about how to use the tool should go to the
status bar, but other info can in the header so it's near where the user
is working. This distinction has not been made yet for all operators.
|
|
Python API is context.workspace.status_text_set()
|
|
Show mouse button actions in status bar, based on context,
modifiers and active tool.
See: T54861
|
|
Monochrome icons from jendryzch
|