blender.git
11 months agoOptimization: Edit Mesh Overlay
mano-wii [Wed, 17 Oct 2018 18:45:58 +0000 (15:45 -0300)]
Optimization: Edit Mesh Overlay

In tests with edit_cage: performance jumped from 9.37ms to 9.17ms.

11 months agonode_shader_utils: Proper fix for node_normalmap accessor returning ellipsis value.
Bastien Montagne [Wed, 17 Oct 2018 18:18:40 +0000 (20:18 +0200)]
node_shader_utils: Proper fix for node_normalmap accessor returning ellipsis value.

Ellipsis value is internal ingredient only, to tag hidden _node_normalmap
'real' property as not yet initialized. Public node_normalmap accessor
should never ever have that value, it's either None or a valid node!

11 months agoRevert "Fix error on FBX export after material changes"
Bastien Montagne [Wed, 17 Oct 2018 18:17:02 +0000 (20:17 +0200)]
Revert "Fix error on FBX export after material changes"

This reverts commit ce4cfbe108d0641832d86a731ea32f596220b7c5.

Obviously wrong 'fix', please do not touch other dev’s code, especially
in active/WIP area, when you do not fully understand it.

11 months agoFix error on FBX export after material changes
Dalai Felinto [Wed, 17 Oct 2018 17:04:04 +0000 (17:04 +0000)]
Fix error on FBX export after material changes

Update the addons repository as well.

11 months agoDRW: Fix DRW_shgroup_create_sub returning source shgroup
Clément Foucault [Wed, 17 Oct 2018 17:01:56 +0000 (19:01 +0200)]
DRW: Fix DRW_shgroup_create_sub returning source shgroup

instead of the actual sub group...

11 months agoEditMesh: Fix uninitialized value causing red outline on edges
Clément Foucault [Wed, 17 Oct 2018 16:49:27 +0000 (18:49 +0200)]
EditMesh: Fix uninitialized value causing red outline on edges

11 months agoObjectMode: Fix Outlines being drawn for BBox meshes
Clément Foucault [Wed, 17 Oct 2018 16:09:23 +0000 (18:09 +0200)]
ObjectMode: Fix Outlines being drawn for BBox meshes

11 months agoObjectMode: Fix instances with BoundBox drawtype not displaying
Clément Foucault [Wed, 17 Oct 2018 16:08:00 +0000 (18:08 +0200)]
ObjectMode: Fix instances with BoundBox drawtype not displaying

11 months agoShrinkwrap: implement the use of smooth normals in constraint & modifier.
Alexander Gavrilov [Wed, 3 Oct 2018 16:09:43 +0000 (19:09 +0300)]
Shrinkwrap: implement the use of smooth normals in constraint & modifier.

- Use smooth normals to displace in Above Surface mode.
- Add an option to align an axis to the normal in the constraint.

I've seen people request the alignment feature, and it seems useful.
For the actual aligning I use the damped track logic.

In order to conveniently keep mesh data needed for normal
computation together, a new data structure is introduced.

Reviewers: mont29

Differential Revision: https://developer.blender.org/D3762

11 months agoMerge branch 'master' into blender2.8
Bastien Montagne [Wed, 17 Oct 2018 14:50:09 +0000 (16:50 +0200)]
Merge branch 'master' into blender2.8

Conflicts:
source/blender/blenkernel/BKE_global.h
source/blender/editors/undo/ed_undo.c

11 months agoDEBUG_IO: add sanity check on libdata in undo step as well.
Bastien Montagne [Wed, 17 Oct 2018 14:43:02 +0000 (16:43 +0200)]
DEBUG_IO: add sanity check on libdata in undo step as well.

There are serious suspicions that weird corruptions faced by studio
artists may happen in undo/redo code, so let's see whether that's the
case.

With this, and when --debug-io arg is passed on startup, the whole lib
data are checked at every undo. This makes undo slower (from two to
three times slower), but it could help us spot better what happens...

11 months agoExpose 'debug_io' flag in bpy.app
Bastien Montagne [Wed, 17 Oct 2018 14:42:36 +0000 (16:42 +0200)]
Expose 'debug_io' flag in bpy.app

11 months agoMinor style cleanup.
Bastien Montagne [Wed, 17 Oct 2018 14:42:18 +0000 (16:42 +0200)]
Minor style cleanup.

11 months agoDope Sheet: fix assert in new hold code when bezier keys are not sorted.
Alexander Gavrilov [Wed, 17 Oct 2018 13:07:52 +0000 (16:07 +0300)]
Dope Sheet: fix assert in new hold code when bezier keys are not sorted.

Turns out this can happen during duplicate+drag operations.

11 months agoFix T57096: Crash when scaling bones
Philipp Oeser [Wed, 17 Oct 2018 12:51:38 +0000 (14:51 +0200)]
Fix T57096: Crash when scaling bones

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D3777

11 months agoCleanup: remove some #if 0 blocks
Jacques Lucke [Wed, 17 Oct 2018 10:43:41 +0000 (12:43 +0200)]
Cleanup: remove some #if 0 blocks

Reviewers: brecht, campbellbarton

Differential Revision: https://developer.blender.org/D3802

11 months agoEevee: Fix error when using texture coordinate on world shaders
Clément Foucault [Wed, 17 Oct 2018 10:17:56 +0000 (12:17 +0200)]
Eevee: Fix error when using texture coordinate on world shaders

Compilation errors were happening on OSX with errors of the type:
```ERROR: Input of fragment shader 'viewNormal' not written by vertex shader```

11 months agoUI: particle deflector options in topbar
Campbell Barton [Wed, 17 Oct 2018 07:52:11 +0000 (18:52 +1100)]
UI: particle deflector options in topbar

See: T57228

11 months agoCleanup: better naming
Jacques Lucke [Wed, 17 Oct 2018 07:53:05 +0000 (09:53 +0200)]
Cleanup: better naming

Suggested by Campbell here: https://developer.blender.org/rB09cd651bb7e59044cbcd0664e8b1064cb37734ed

11 months agoGizmo: change axis used for shear handles
Campbell Barton [Wed, 17 Oct 2018 06:47:09 +0000 (17:47 +1100)]
Gizmo: change axis used for shear handles

The shear direction should be more obvious this way.

11 months agoTransform: map mouse input to shear direction
Campbell Barton [Wed, 17 Oct 2018 05:30:15 +0000 (16:30 +1100)]
Transform: map mouse input to shear direction

11 months agoTransform: show arrows for 'custom' ratio input
Campbell Barton [Wed, 17 Oct 2018 06:12:57 +0000 (17:12 +1100)]
Transform: show arrows for 'custom' ratio input

Arrows are now shown for vertex/edge slide.

11 months agoRNA: disable notifiers from property updates
Campbell Barton [Wed, 17 Oct 2018 05:14:58 +0000 (16:14 +1100)]
RNA: disable notifiers from property updates

This was re-enabled because it made copy-on-write bugs hard to
track down.

Since copy-on-write implementation has been simplified
this isn't a problem anymore.

11 months agoCleanup: naming
Campbell Barton [Wed, 17 Oct 2018 03:09:32 +0000 (14:09 +1100)]
Cleanup: naming

11 months agoCleanup: whitespace
Campbell Barton [Wed, 17 Oct 2018 03:08:44 +0000 (14:08 +1100)]
Cleanup: whitespace

11 months agoFix T56735: Autosmooth option corrupts UVs
Campbell Barton [Wed, 17 Oct 2018 02:20:44 +0000 (13:20 +1100)]
Fix T56735: Autosmooth option corrupts UVs

11 months agoUse CTX_DATA_BEGIN_FOR_ID
Dalai Felinto [Wed, 17 Oct 2018 01:18:02 +0000 (22:18 -0300)]
Use CTX_DATA_BEGIN_FOR_ID

11 months agoFix sculpt curve stroke paint
Dalai Felinto [Wed, 17 Oct 2018 00:36:22 +0000 (21:36 -0300)]
Fix sculpt curve stroke paint

11 months agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 17 Oct 2018 00:26:59 +0000 (11:26 +1100)]
Merge branch 'master' into blender2.8

11 months agoFix cmake not triggering rebuild on .glsl changes
Dalai Felinto [Tue, 16 Oct 2018 19:54:59 +0000 (16:54 -0300)]
Fix cmake not triggering rebuild on .glsl changes

At least on windows we do not re-run datatoc when the .glsl files change.

To test is simple, just change edit_mesh_overlay_common_lib.glsl
remove lines, write plain text, ..., now rebuild and go in edit mode
with the default cube.

I also had to remove the entry in gpu/CMakeLists.txt for
gpu_shader_material.glsl since this was being tracked directly, as well
as running data_to_c_simple (otherwise CMake raises an error for
duplicated entries).

We probably want to do the same for the other datatoc functions.

Reviewers: LazyDodo, brecht
Differential Revision: https://developer.blender.org/D3803

11 months agoMulti-Objects: POSE_OT_ik_add + POSE_OT_constraint_add_with_targets
Dalai Felinto [Tue, 16 Oct 2018 23:34:02 +0000 (20:34 -0300)]
Multi-Objects: POSE_OT_ik_add + POSE_OT_constraint_add_with_targets

You can now add the target from the non-active armature when they are
both in pose mode.

There were different ways of going about those operators:

* We could create one constraint on each active bone of each object.
  That wouldn't follow what creating constraints from the UI does
  though.

* We could change the selection/active order and create a constraint for
  all the selected bones, to the active bone. However this would change
  the design of changing only the active bone (which also is the one we
  see in the buttons editor).

But in the end I think it makes more sense to let users set a constraint
from a charactor to a prop in a handy way.

This is pretty much what we had in 2.7x. There we would go for the
selected objects, if no selected bone was found in the active object.
In 2.8, however, we need this change to make things working as
before/intended.

11 months agoOptimization: Edit Mesh Overlay: Avoid computing fixvec unnecessarily.
mano-wii [Tue, 16 Oct 2018 23:41:18 +0000 (20:41 -0300)]
Optimization: Edit Mesh Overlay: Avoid computing fixvec unnecessarily.

This brings a big difference to meshes with edit cage adjusted for modifiers.
In my tests, the suzanne with subdivision modifier level 3 went from 4.80ms to 3.05ms.

11 months agoMulti-Objects: POSE_OT_constraints_copy (refactor)
Dalai Felinto [Tue, 16 Oct 2018 22:20:01 +0000 (19:20 -0300)]
Multi-Objects: POSE_OT_constraints_copy (refactor)

This was already supporting multiple objects, but I changed it to use the API
we are using elsewhere.

12 months agoMulti-Objects: POSE_OT_constraints_clear
Dalai Felinto [Tue, 16 Oct 2018 21:41:45 +0000 (18:41 -0300)]
Multi-Objects: POSE_OT_constraints_clear

12 months agoMulti-Objects: POSE_OT_ik_clear
Dalai Felinto [Tue, 16 Oct 2018 21:30:27 +0000 (18:30 -0300)]
Multi-Objects: POSE_OT_ik_clear

12 months agoFix armature bones spline ik lines offset
Dalai Felinto [Tue, 16 Oct 2018 21:28:35 +0000 (18:28 -0300)]
Fix armature bones spline ik lines offset

12 months agoFix armature bones ik lines offset
Dalai Felinto [Tue, 16 Oct 2018 21:22:17 +0000 (18:22 -0300)]
Fix armature bones ik lines offset

12 months agoEdit Mesh Overlay Geometry Shader: Ignore correction geometry for loops that are...
mano-wii [Tue, 16 Oct 2018 21:03:38 +0000 (23:03 +0200)]
Edit Mesh Overlay Geometry Shader: Ignore correction geometry for loops that are not part of an edge.

By the tests I could only observe a considerable difference in the peformanse when the vertex size is 30.
Vertice 3 showed no difference in a suzzane with subdivision modifier level 3 + show-on-cage.

Point Size 30: 7.29ms vs 2.55ms

Reviewers: fclem

Reviewed By: fclem

Differential Revision: https://developer.blender.org/D3805

12 months agoDRW: Fix assert with BoundBox object display mode
Clément Foucault [Tue, 16 Oct 2018 20:52:00 +0000 (22:52 +0200)]
DRW: Fix assert with BoundBox object display mode

12 months agoFix cmake not triggering rebuild on .glsl changes
Dalai Felinto [Tue, 16 Oct 2018 19:54:59 +0000 (16:54 -0300)]
Fix cmake not triggering rebuild on .glsl changes

At least on windows we do not re-run datatoc when the .glsl files change.

To test is simple, just change edit_mesh_overlay_common_lib.glsl
remove lines, write plain text, ..., now rebuild and go in edit mode
with the default cube.

I also had to remove the entry in gpu/CMakeLists.txt for
gpu_shader_material.glsl since this was being tracked directly, as well
as running data_to_c_simple (otherwise CMake raises an error for
duplicated entries).

We probably want to do the same for the other datatoc functions.

Reviewers: LazyDodo, brecht
Differential Revision: https://developer.blender.org/D3803

12 months agoUI: fix misaligned underline for menu item shortcut keys.
Harley Acheson [Tue, 16 Oct 2018 18:31:07 +0000 (20:31 +0200)]
UI: fix misaligned underline for menu item shortcut keys.

12 months agoUI: tweak icon spacing in menus to put them in the middle of the edge and text.
Harley Acheson [Tue, 16 Oct 2018 18:29:28 +0000 (20:29 +0200)]
UI: tweak icon spacing in menus to put them in the middle of the edge and text.

12 months agoUI: icon set updates Andrzej Ambroz.
Brecht Van Lommel [Tue, 16 Oct 2018 18:20:24 +0000 (20:20 +0200)]
UI: icon set updates Andrzej Ambroz.

This adds and changes various icons, in particular modifier and force field
icons are now included.

12 months agoFix T56250: brush cycling with shortcuts is broken.
Brecht Van Lommel [Tue, 16 Oct 2018 18:17:03 +0000 (20:17 +0200)]
Fix T56250: brush cycling with shortcuts is broken.

It was cycling both in the brush system and tool system which conflicted.
Now it uses just the tool system. This is more of a temporary fix until
the new tool/brush decoupled design is in place.

12 months agonode_shader_utils: fix bad setting of use_nodes in readonly case.
Bastien Montagne [Tue, 16 Oct 2018 14:32:43 +0000 (16:32 +0200)]
node_shader_utils: fix bad setting of use_nodes in readonly case.

Also added access to extension property in texture wrapper.

12 months agoDope Sheet: unify comparison threshold for the ActKeyColumn tree.
Alexander Gavrilov [Tue, 16 Oct 2018 16:45:03 +0000 (19:45 +0300)]
Dope Sheet: unify comparison threshold for the ActKeyColumn tree.

Use the same floating point precision threshold to merge keys
when building the tree as when searching it.

12 months agoDope Sheet: rewrite computation of keyframe hold blocks.
Alexander Gavrilov [Sat, 13 Oct 2018 17:22:44 +0000 (20:22 +0300)]
Dope Sheet: rewrite computation of keyframe hold blocks.

Computation of hold blocks was done by storing ranges (with start and
an end, and likely overlapping) in a tree keyed only by the block start.
This cannot work well, and there even were comments that it is not
reliable in complex cases.

A much better way to deal with it is to split all ranges so they don't
overlap. The most thorough way of doing this is to split at all and every
known keyframe, and in this case the data can actually be stored in the
key column data structures, avoiding the need for a second tree.

In practice, splitting requires a pass to copy this data to newly added
keys, and the necessity to loop over all keyframes in the range being
added. Both are linear and don't add excess algorithmic complexity.

The new implementation also calls BLI_dlrbTree_linkedlist_sync for
its own needs, so the users of the *_to_keylist functions don't have
to do it themselves anymore.

Differential Revision: https://developer.blender.org/D3790

12 months agoTemplates: updated 2D animation template from grease pencil team.
Brecht Van Lommel [Tue, 16 Oct 2018 16:08:46 +0000 (18:08 +0200)]
Templates: updated 2D animation template from grease pencil team.

12 months agoSmall change to Annotation panel
Antonioya [Tue, 16 Oct 2018 15:59:42 +0000 (17:59 +0200)]
Small change to Annotation panel

Add one line more by default

12 months agoUI: tweak and fixes for cycles sampling panel, remove unneeded decorators.
Brecht Van Lommel [Tue, 16 Oct 2018 15:11:37 +0000 (17:11 +0200)]
UI: tweak and fixes for cycles sampling panel, remove unneeded decorators.

12 months agoUI: put show emitter option in particles panels.
Brecht Van Lommel [Tue, 16 Oct 2018 14:54:45 +0000 (16:54 +0200)]
UI: put show emitter option in particles panels.

This settings is duplicated from the object duplication panel, but
otherwise it's too hard to find.

12 months agoFix remaining copy/paste button header, these are in menus now.
William Reynish [Tue, 16 Oct 2018 12:58:16 +0000 (14:58 +0200)]
Fix remaining copy/paste button header, these are in menus now.

12 months agoFix incorrect icon for UV selection sync.
William Reynish [Tue, 16 Oct 2018 12:57:30 +0000 (14:57 +0200)]
Fix incorrect icon for UV selection sync.

12 months agoCleanup: naming
Campbell Barton [Tue, 16 Oct 2018 11:08:43 +0000 (22:08 +1100)]
Cleanup: naming

'mp' was a reference to 'manipulator'

12 months agoTool System: add gizmo for shear tool
Campbell Barton [Tue, 16 Oct 2018 10:55:39 +0000 (21:55 +1100)]
Tool System: add gizmo for shear tool

12 months agoTransform: axis support for shear tool
Campbell Barton [Tue, 16 Oct 2018 10:52:30 +0000 (21:52 +1100)]
Transform: axis support for shear tool

12 months agoFix T57247: Render animation does not respect render single view layer
Philipp Oeser [Tue, 16 Oct 2018 10:45:41 +0000 (12:45 +0200)]
Fix T57247: Render animation does not respect render single view layer

Reviewers: brecht

Maniphest Tasks: T57247

Differential Revision: https://developer.blender.org/D3800

12 months agoEvent System: don't invoke operator that should only be executed
Jacques Lucke [Tue, 16 Oct 2018 09:48:12 +0000 (11:48 +0200)]
Event System: don't invoke operator that should only be executed

Problem was that the event was not `NULL` even though the `context` is `WM_OP_EXEC_*`.
I noticed this problem when dropping .blend files into Blender.
Instead of only executing `WM_OT_open_mainfile`, it was invoked (opening a file selector).

The `wm_operator_invoke`, which also executes operators, always invokes operators when `event != NULL`. So setting `event` to `NULL` tells `wm_operator_invoke` not to invoke but to execute the operator.

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3799

12 months agoView 3D: fix image dropping in 3d view
Jacques Lucke [Tue, 16 Oct 2018 09:17:32 +0000 (11:17 +0200)]
View 3D: fix image dropping in 3d view

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3798

12 months agoGP: Set Dopesheet layers in Top-Down order
Antonioya [Tue, 16 Oct 2018 08:37:18 +0000 (10:37 +0200)]
GP: Set Dopesheet layers in Top-Down order

The layers are Top-Down and the dopesheet must use the same order.

12 months agoGP: Fix Blur shift when add more samples
Antonioya [Tue, 16 Oct 2018 08:23:13 +0000 (10:23 +0200)]
GP: Fix Blur shift when add more samples

The image was moving in +X and +Y when added samples due round precission.

12 months agoSet Annotation list in Top-Down order
Antonioya [Tue, 16 Oct 2018 06:45:01 +0000 (08:45 +0200)]
Set Annotation list in Top-Down order

This makes consistent the orders of any grease pencil related list

12 months agoFix crash in loose edge check
Campbell Barton [Tue, 16 Oct 2018 04:02:30 +0000 (15:02 +1100)]
Fix crash in loose edge check

12 months agoCleanup: headers
Campbell Barton [Tue, 16 Oct 2018 02:18:03 +0000 (13:18 +1100)]
Cleanup: headers

12 months agoMesh: use mesh tessellation for face-map drawing
Campbell Barton [Tue, 16 Oct 2018 02:09:30 +0000 (13:09 +1100)]
Mesh: use mesh tessellation for face-map drawing

Also use batch instead of immediate mode.

12 months agoCleanup: replace check for derivedFinal w/ mesh_eval
Campbell Barton [Mon, 15 Oct 2018 23:33:44 +0000 (10:33 +1100)]
Cleanup: replace check for derivedFinal w/ mesh_eval

12 months agoFix UI error in annotation tool
Campbell Barton [Mon, 15 Oct 2018 22:13:26 +0000 (09:13 +1100)]
Fix UI error in annotation tool

12 months agoCleanup: redundant check for hidden edge
Campbell Barton [Mon, 15 Oct 2018 22:01:52 +0000 (09:01 +1100)]
Cleanup: redundant check for hidden edge

12 months agoCleanup: redundant len() checks
Campbell Barton [Mon, 15 Oct 2018 21:50:35 +0000 (08:50 +1100)]
Cleanup: redundant len() checks

12 months agoMesh: replace derived-mesh with mesh API's for project paint
Campbell Barton [Mon, 15 Oct 2018 21:41:43 +0000 (08:41 +1100)]
Mesh: replace derived-mesh with mesh API's for project paint

12 months agoAdd popover for Annotations in topbar
Antonioya [Mon, 15 Oct 2018 16:54:09 +0000 (18:54 +0200)]
Add popover for Annotations in topbar

Part of T57211

12 months agoEevee: Fix Missing alpha when rendering with DOF
Clément Foucault [Mon, 15 Oct 2018 14:04:33 +0000 (16:04 +0200)]
Eevee: Fix Missing alpha when rendering with DOF

NOTE: There is a float imprecision near the focus plane
due to the current technique used for DOF. This makes the alpha channel
transparent on nearly in focus objects even when they should not.
This artifact should be fixed when the DOF will use scatter as gather for
low brightness areas.

Fix T57042 : Eevee does not render alpha when DOF is turned on

12 months agoEdit Mesh: Fix missing loop normal display
Clément Foucault [Mon, 15 Oct 2018 09:51:47 +0000 (11:51 +0200)]
Edit Mesh: Fix missing loop normal display

12 months agoFix related to T55961: Glitch in selecting loose edges on some AMD drives.
mano-wii [Mon, 15 Oct 2018 12:54:24 +0000 (09:54 -0300)]
Fix related to T55961: Glitch in selecting loose edges on some AMD drives.

12 months agoEdit Mesh: Add comments explaining weirdness in the code.
mano-wii [Mon, 15 Oct 2018 12:50:31 +0000 (09:50 -0300)]
Edit Mesh: Add comments explaining weirdness in the code.

12 months agoTexture Paint: Don't create material if operation is cancelled
Jacques Lucke [Mon, 15 Oct 2018 11:53:14 +0000 (13:53 +0200)]
Texture Paint: Don't create material if operation is cancelled

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3793

12 months agoTexture Paint: remove odd UI behavior
Jacques Lucke [Mon, 15 Oct 2018 10:16:54 +0000 (12:16 +0200)]
Texture Paint: remove odd UI behavior

Differential Revision: https://developer.blender.org/D3791

12 months agoFix an obvious typo: use CD_MASK_CUSTOMLOOPNORMAL for CustomDataMask.
Alexander Gavrilov [Mon, 15 Oct 2018 09:27:35 +0000 (12:27 +0300)]
Fix an obvious typo: use CD_MASK_CUSTOMLOOPNORMAL for CustomDataMask.

12 months agoCleanup: Edit Mesh shader: Remove unecessary varying
Clément Foucault [Mon, 15 Oct 2018 08:43:49 +0000 (10:43 +0200)]
Cleanup: Edit Mesh shader: Remove unecessary varying

12 months agoCleanup: unused code
Campbell Barton [Mon, 15 Oct 2018 07:11:37 +0000 (18:11 +1100)]
Cleanup: unused code

12 months agoGP: Cleanup style
Antonioya [Mon, 15 Oct 2018 06:35:11 +0000 (08:35 +0200)]
GP: Cleanup style

12 months agoGP: Small tweak to improve speed
Antonioya [Sun, 14 Oct 2018 14:28:07 +0000 (16:28 +0200)]
GP: Small tweak to improve speed

12 months agoCleanup: unused functions
Campbell Barton [Mon, 15 Oct 2018 06:37:54 +0000 (17:37 +1100)]
Cleanup: unused functions

12 months agoMesh: remove DerivedMesh for boundbox calculation
Campbell Barton [Mon, 15 Oct 2018 06:14:05 +0000 (17:14 +1100)]
Mesh: remove DerivedMesh for boundbox calculation

Fixes edit-mesh not having a boundbox calculated for it.

12 months agoCleanup: remove unused functions
Campbell Barton [Mon, 15 Oct 2018 05:58:42 +0000 (16:58 +1100)]
Cleanup: remove unused functions

12 months agoCleanup: remove references to DerivedMesh
Campbell Barton [Mon, 15 Oct 2018 05:06:42 +0000 (16:06 +1100)]
Cleanup: remove references to DerivedMesh

12 months agoMesh: remove DerivedMesh for displist conversion
Campbell Barton [Mon, 15 Oct 2018 04:58:58 +0000 (15:58 +1100)]
Mesh: remove DerivedMesh for displist conversion

12 months agoMesh: mostly remove DerivedMesh for vertex parent
Campbell Barton [Mon, 15 Oct 2018 04:31:17 +0000 (15:31 +1100)]
Mesh: mostly remove DerivedMesh for vertex parent

The exception is for subdivision surface which still uses derived mesh.

12 months agoMesh: remove DerivedMesh for face-map drawing
Campbell Barton [Mon, 15 Oct 2018 04:08:37 +0000 (15:08 +1100)]
Mesh: remove DerivedMesh for face-map drawing

12 months agoMesh: remove DerivedMesh from various places
Campbell Barton [Mon, 15 Oct 2018 03:29:46 +0000 (14:29 +1100)]
Mesh: remove DerivedMesh from various places

12 months agoCleanup: remove DerivedMesh bvhtree_from_mesh_get
Campbell Barton [Mon, 15 Oct 2018 02:38:10 +0000 (13:38 +1100)]
Cleanup: remove DerivedMesh bvhtree_from_mesh_get

12 months agoBake: remove derived mesh for bake API
Campbell Barton [Mon, 15 Oct 2018 02:32:53 +0000 (13:32 +1100)]
Bake: remove derived mesh for bake API

Multires baking still uses DerivedMesh.

12 months agoDepsgraph: Add proper API functions for CustomDataMask dependencies.
Alexander Gavrilov [Sun, 14 Oct 2018 16:59:27 +0000 (19:59 +0300)]
Depsgraph: Add proper API functions for CustomDataMask dependencies.

There were a few copies of the same few lines in depsgraph build code,
so it seems to be logical to introduce a function for it, and make it
accessible from C code for completeness.

As an example, register the mask needs of the Data Transfer modifier.

12 months agoFix T55961: Anomalous edges cage on some AMD buggy drivers.
mano-wii [Sun, 14 Oct 2018 17:07:19 +0000 (14:07 -0300)]
Fix T55961: Anomalous edges cage on some AMD buggy drivers.

Reviwed on irc by @fclem.

12 months agoGP: Fix several issues in blur FX
Antonioya [Sun, 14 Oct 2018 10:19:16 +0000 (12:19 +0200)]
GP: Fix several issues in blur FX

There were some problems with the z-depth and especially when tries to blur a pixel outside the viewport.

12 months agoEdit Mesh: Optimize the overlay triangle geometry shader
Clément Foucault [Sat, 13 Oct 2018 21:43:33 +0000 (23:43 +0200)]
Edit Mesh: Optimize the overlay triangle geometry shader

On my test it's 30% faster than before.

Test case : Suzanne, subsurf lvl3, 64K tris, Edge select mode for fair
comparison.

0.95ms before optimization
0.64ms after optimization

Note that this only optimize the "nicest" display of edit mesh overlays,
not the one when rotating the view where half of the border edges are
missing.

12 months agoEdit Mesh: Do not use barycentric coord in EDGE_FIX shader and ...
Clément Foucault [Sat, 13 Oct 2018 14:54:53 +0000 (16:54 +0200)]
Edit Mesh: Do not use barycentric coord in EDGE_FIX shader and ...

... display vertex even when occluded.

Add back the vertex display because occluded vertex are not visible when
the triangle is almost parallel to the view.

The problem with the barycentric coord is that they are hard to work with
and their derivatives not enough precise to compute the vertex positions.

So we need to pass the vertices scree positions down to the fragment shader.

12 months agoEdit Mesh: Fix and increase the depth bias on vertices
Clément Foucault [Sat, 13 Oct 2018 14:49:03 +0000 (16:49 +0200)]
Edit Mesh: Fix and increase the depth bias on vertices

12 months agoGP: Remove Layer order userprefs parameter
Antonioya [Sat, 13 Oct 2018 18:34:11 +0000 (20:34 +0200)]
GP: Remove Layer order userprefs parameter

After a lot of discussion about this option (see 18f117594004) we have decided set always the order of GP layers in 2D mode (Top->Down) and remove the parameter from User Preferences screen.

Internally all works equal, but in the UI the list is inverted.

The filter buttons to reverse the list or sort alphabetically have been removed because these buttons are not logic in this context.

12 months agonode_shader_utils: several fixes, improvements and cleanups.
Bastien Montagne [Sat, 13 Oct 2018 17:27:12 +0000 (19:27 +0200)]
node_shader_utils: several fixes, improvements and cleanups.

Fix broken behavior in case of texcoords mapping (we do need texcoords
node in all cases, then, even for UV coords...).

Use nodes by default when generating new write-allowed wrapper around a
material.

Do not try to find nodes in existing tree all the time, do it only once,
even for lazy-initialized nodes (through accessors).

Fix ugly spacing in property accessors (since it looks like some people
do not like a single 'block' with both getters, setters and prop
definition, at least use one sep line everywhere (and two sep lines to
separate properties)...