blender.git
2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Mon, 29 Oct 2018 02:04:47 +0000 (13:04 +1100)]
Merge branch 'master' into blender2.8

2 years agoModifier: mask threshold option
Campbell Barton [Mon, 29 Oct 2018 02:01:48 +0000 (13:01 +1100)]
Modifier: mask threshold option

D3834 by @Allosteric

2 years agoCleanup: avoid C++ keyword in DNA
Campbell Barton [Mon, 29 Oct 2018 01:49:47 +0000 (12:49 +1100)]
Cleanup: avoid C++ keyword in DNA

2 years agoPyAPI: remove GPUVertFormat() creation from a list
Campbell Barton [Mon, 29 Oct 2018 00:08:55 +0000 (11:08 +1100)]
PyAPI: remove GPUVertFormat() creation from a list

We already have `attr_add` method,
best not have two ways to do the same thing.

See: D3830

2 years agoCleanup: typo
Campbell Barton [Sun, 28 Oct 2018 23:35:05 +0000 (10:35 +1100)]
Cleanup: typo

2 years agoCleanup: style
Campbell Barton [Sun, 28 Oct 2018 23:24:42 +0000 (10:24 +1100)]
Cleanup: style

2 years agoFix crash flipping region without active area
Julian Eisel [Sun, 28 Oct 2018 21:55:21 +0000 (22:55 +0100)]
Fix crash flipping region without active area

Would happen when cursor is in-between editors for example.

2 years agoDRW: Cleanup: Redundant check
Clément Foucault [Sun, 28 Oct 2018 20:46:52 +0000 (21:46 +0100)]
DRW: Cleanup: Redundant check

2 years agoEevee: Implement jittered soft shadowmap
Clément Foucault [Sun, 28 Oct 2018 20:41:40 +0000 (21:41 +0100)]
Eevee: Implement jittered soft shadowmap

This new option is located in the shadows options in the render settings.
This approach is simple and just randomize the shadow map position (not
the lamp itself) and just let the temporal supersampling do the average of
all the shadowing. The downside is that is needs quite a large number of
samples to give smooth results and individual sample position can remain
visible.

Enabling this option will make the viewport refresh all shadow maps every
redraw so it has a serious performance impact.

This approach is not physicaly based at all and will not match cycles.

----

The sampling for point lamps (spheres) is not

2 years agoBLI: Add comment about to orthogonalize_m3/4
Clément Foucault [Sun, 28 Oct 2018 18:27:14 +0000 (19:27 +0100)]
BLI: Add comment about to orthogonalize_m3/4

2 years agoEevee: Fix contact shadow creating to overshadowing
Clément Foucault [Sun, 28 Oct 2018 18:24:56 +0000 (19:24 +0100)]
Eevee: Fix contact shadow creating to overshadowing

This was because the shadow rays could be generated below the geometric
normal.

2 years agoUse keyword argument for ui label text in cryptomatte passes
Philipp Oeser [Sun, 28 Oct 2018 19:39:44 +0000 (20:39 +0100)]
Use keyword argument for ui label text in cryptomatte passes

2 years agoGP: Refactor Instance modifier and rename to Array
Antonioya [Sun, 28 Oct 2018 17:08:24 +0000 (18:08 +0100)]
GP: Refactor Instance modifier and rename to Array

The old name Instance was logic when the modifier created new object instances, but now works equal to mesh Array modifier, so the old name was not logic and must be Array.

Also added a Object to use as offset similar to mesh Array modifier.

2 years agoFix label misalignment when there are multiple buttons on the right side.
Brecht Van Lommel [Thu, 25 Oct 2018 13:27:31 +0000 (15:27 +0200)]
Fix label misalignment when there are multiple buttons on the right side.

2 years agoCleanup: fix compiler warnings.
Brecht Van Lommel [Sun, 28 Oct 2018 16:22:26 +0000 (17:22 +0100)]
Cleanup: fix compiler warnings.

2 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Sun, 28 Oct 2018 15:41:30 +0000 (16:41 +0100)]
Merge branch 'master' into blender2.8

2 years agoFix snaps appearing in system bookmarks on Linux.
Roel Koster [Sun, 28 Oct 2018 12:03:50 +0000 (13:03 +0100)]
Fix snaps appearing in system bookmarks on Linux.

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

2 years agoFix Linux build after Cryptomatte commit.
Brecht Van Lommel [Sun, 28 Oct 2018 13:53:08 +0000 (14:53 +0100)]
Fix Linux build after Cryptomatte commit.

2 years agoFix T57394: missing bl_category in panel (custom props / stereoscopy)
Philipp Oeser [Fri, 26 Oct 2018 18:30:41 +0000 (20:30 +0200)]
Fix T57394: missing bl_category in panel (custom props / stereoscopy)

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

2 years agoCycles: Added Cryptomatte output.
Stefan Werner [Sun, 28 Oct 2018 09:37:41 +0000 (05:37 -0400)]
Cycles: Added Cryptomatte output.

This allows for extra output passes that encode automatic object and material masks
for the entire scene. It is an implementation of the Cryptomatte standard as
introduced by Psyop. A good future extension would be to add a manifest to the
export and to do plenty of testing to ensure that it is fully compatible with other
renderers and compositing programs that use Cryptomatte.

Internally, it adds the ability for Cycles to have several passes of the same type
that are distinguished by their name.

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

2 years agoCleanup: More meaningful variable name
Severin [Sat, 27 Oct 2018 15:12:51 +0000 (17:12 +0200)]
Cleanup: More meaningful variable name

2 years agoFix T57393: Cycles OSL bevel and AO not working after OSL upgrade.
Brecht Van Lommel [Fri, 26 Oct 2018 17:26:06 +0000 (19:26 +0200)]
Fix T57393: Cycles OSL bevel and AO not working after OSL upgrade.

2 years agoTool System: pie menu style activate-on-release
Campbell Barton [Sat, 27 Oct 2018 01:22:20 +0000 (12:22 +1100)]
Tool System: pie menu style activate-on-release

Support activate on release for the popup toolbar.

2 years agoUI: operator to press the active button
Campbell Barton [Sat, 27 Oct 2018 01:21:19 +0000 (12:21 +1100)]
UI: operator to press the active button

Needed to use the keymap to activate buttons from other keys.

2 years agoMulti-Objects: Curve - select pick, linked and short path
Dalai Felinto [Fri, 26 Oct 2018 22:54:11 +0000 (19:54 -0300)]
Multi-Objects: Curve - select pick, linked and short path

I'm following mesh editing to decide when to switch active object, or
deselect the other objects. I hope we can keep this all consistent in
the end.

2 years agoCleanup: Remove silly redundant if check in ED_armature_edit_select_pick
Dalai Felinto [Fri, 26 Oct 2018 22:20:12 +0000 (19:20 -0300)]
Cleanup: Remove silly redundant if check in ED_armature_edit_select_pick

2 years agoFix T57367: Multi-Object-Mode: Edit Lattice selection only working for active object
Dalai Felinto [Fri, 26 Oct 2018 22:18:49 +0000 (19:18 -0300)]
Fix T57367: Multi-Object-Mode: Edit Lattice selection only working for active object

For the records, curves still have this problem.

2 years agoFix lasso selection not working for lattices
Dalai Felinto [Fri, 26 Oct 2018 21:29:42 +0000 (18:29 -0300)]
Fix lasso selection not working for lattices

Regression introduced on e88e80a6.
This was broken for both single and multi-objects.

It is a typo that apparently slipt through testing, oh well.
I'm glad I caught this, I just wished it would have been faster.

2 years agoFix crash when switching to Scripting workspace
Dalai Felinto [Fri, 26 Oct 2018 18:33:03 +0000 (15:33 -0300)]
Fix crash when switching to Scripting workspace

Crash introduced on: a4a6ed1ba3c86ed842f4373c65d64d28d827f864.

2 years agoSmall cleanup: Remove uneeded/wrong check
Dalai Felinto [Fri, 26 Oct 2018 16:45:35 +0000 (13:45 -0300)]
Small cleanup: Remove uneeded/wrong check

If ob was NULL it would crash in the else part of the if statement.
If we really think we may run into that (which we should not) we can just assert
or add a if (ob == NULL) return; in the top of the function.

2 years agoFix unreported: Crash when adding lattice vertex group
Dalai Felinto [Fri, 26 Oct 2018 16:44:14 +0000 (13:44 -0300)]
Fix unreported: Crash when adding lattice vertex group

2 years agoFix unreported: Crash when removing lattice vertex group
Dalai Felinto [Fri, 26 Oct 2018 16:36:30 +0000 (13:36 -0300)]
Fix unreported: Crash when removing lattice vertex group

2 years agoRefactor cleanup: BKE_object_is_in_editmode
Dalai Felinto [Fri, 26 Oct 2018 16:21:54 +0000 (13:21 -0300)]
Refactor cleanup: BKE_object_is_in_editmode

Using switch and keep it concise.

2 years agoFix T57368: Multi-Object-Mode: Edit Lattice draws only active
Dalai Felinto [Fri, 26 Oct 2018 16:11:07 +0000 (13:11 -0300)]
Fix T57368: Multi-Object-Mode: Edit Lattice draws only active

As it turned out the issue wasn't that we were drawing only the active,
but that the "object mode" lattice drawing was drawing on top of the
drawing for all the edit mode lattice objects.

We are doing the same original behaviour for curves and even meshes. To be
investigated if it is ok for those other cases.

2 years agoCycles: Expose noisy image pass by default when rendering with denoiser
Lukas Stockner [Thu, 30 Aug 2018 21:28:10 +0000 (23:28 +0200)]
Cycles: Expose noisy image pass by default when rendering with denoiser

Apparently quite a few users would like to have the noisy pass available when using the denoiser, and since it's being generated anyways we might as well expose it by default.

Reviewers: brecht

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

2 years agoMulti-Objects: LATTICE_OT_make_regular
Dalai Felinto [Fri, 26 Oct 2018 14:01:53 +0000 (11:01 -0300)]
Multi-Objects: LATTICE_OT_make_regular

Committing this for the sake of completionism. I'm going to bring this
up for review, I think we may want to revert it.

Fundamentally I'm changing the behaviour of the operator both in object
mode (acting on all selected lattice objects), as well as the edit mode
(acting on all lattices in edit mode, regardless of them having any
 selected vertice).

2 years agoEevee: SSS: Fix issue with mac and stencil buffer blitting
Clément Foucault [Thu, 25 Oct 2018 20:13:46 +0000 (22:13 +0200)]
Eevee: SSS: Fix issue with mac and stencil buffer blitting

Adding a workaround in this case: we blit the depth buffer instead of the
stencil buffer and use the copy as the texture. This is slower but at
least it should work.

2 years agoGPU: Add workarounds for buggy glBlitFramebuffer function on macOS + Radeon
Clément Foucault [Thu, 25 Oct 2018 19:57:40 +0000 (21:57 +0200)]
GPU: Add workarounds for buggy glBlitFramebuffer function on macOS + Radeon

When calling glBlitFramebuffer on most (if not all) mac that have a GPU
from the Radeon Pro series, the data is not properly copied and only a
subset of the pixels are correctly copied.

This only happens when blitting the depth buffer if the depth buffer is
GL_DEPTH24_STENCIL8.

Changing the depth buffer format to GPU_DEPTH32F_STENCIL8 fixes the issue
but only works if blitting the depth componnent. The stencil componnent
still provoke issues when being copied.

2 years agoGPUTexture: Add supports for GL_DEPTH32F_STENCIL8 texture format
Clément Foucault [Thu, 25 Oct 2018 17:08:35 +0000 (19:08 +0200)]
GPUTexture: Add supports for GL_DEPTH32F_STENCIL8 texture format

2 years agoWorkbench: Fix shadows on macOS
Clément Foucault [Thu, 25 Oct 2018 11:01:15 +0000 (13:01 +0200)]
Workbench: Fix shadows on macOS

2 years agoGP: Assign new materials to brushes
Antonioya [Fri, 26 Oct 2018 07:02:28 +0000 (09:02 +0200)]
GP: Assign new materials to brushes

When create a new material, this must be set to the brushes automatically.

2 years agoPyAPI: raise error when toolbar panels use tabs
Campbell Barton [Fri, 26 Oct 2018 04:05:07 +0000 (15:05 +1100)]
PyAPI: raise error when toolbar panels use tabs

Add-ons that register panels in the toolbar can
no longer use 'bl_categories' (tabs).

2 years agoCorrection for Gizmo.draw_custom_shape utility API
Campbell Barton [Fri, 26 Oct 2018 01:43:40 +0000 (12:43 +1100)]
Correction for Gizmo.draw_custom_shape utility API

2 years agoPyAPI: gpu utility module to create new batches
Jacques Lucke [Fri, 26 Oct 2018 01:38:04 +0000 (12:38 +1100)]
PyAPI: gpu utility module to create new batches

Support the common case of creating batches from python geometry,
a shader and optionally indices.

See D3779

2 years agoUpdate gpu offscreen PyAPI example
Campbell Barton [Fri, 26 Oct 2018 01:13:03 +0000 (12:13 +1100)]
Update gpu offscreen PyAPI example

2 years agoFix parsing single int for uniform_int
Campbell Barton [Fri, 26 Oct 2018 00:59:49 +0000 (11:59 +1100)]
Fix parsing single int for uniform_int

This worked for float but not int.

2 years agoCleanup: minor change to last commit
Campbell Barton [Fri, 26 Oct 2018 00:48:42 +0000 (11:48 +1100)]
Cleanup: minor change to last commit

2 years agoUpdate Gizmo.draw_custom_shape for API changes
Campbell Barton [Fri, 26 Oct 2018 00:26:39 +0000 (11:26 +1100)]
Update Gizmo.draw_custom_shape for API changes

2 years agoWM: default tool was being set for space types w/o tools
Campbell Barton [Thu, 25 Oct 2018 23:42:31 +0000 (10:42 +1100)]
WM: default tool was being set for space types w/o tools

Add mask for space types so we don't accidentally add tools
for space types that don't support it.

2 years agoPyAPI: draw handlers now store args in the capsule context
Campbell Barton [Thu, 25 Oct 2018 22:19:51 +0000 (09:19 +1100)]
PyAPI: draw handlers now store args in the capsule context

Was using the handlers custom-data which crashes
when Blender frees the screen data before Python removes the handler.

2 years agoPyAPI: Temp workaround for crash removing cursor
Campbell Barton [Thu, 25 Oct 2018 21:49:10 +0000 (08:49 +1100)]
PyAPI: Temp workaround for crash removing cursor

Opening a new file frees the cursors,
add check if the cursor is still valid.

This leaks a Python reference, so a better solution is needed.

2 years agoPyAPI: Make GPUVertFormat() argument optional
Campbell Barton [Thu, 25 Oct 2018 21:06:05 +0000 (08:06 +1100)]
PyAPI: Make GPUVertFormat() argument optional

2 years agoGP: Add warning when mix Build and Time Offset
Antonioya [Thu, 25 Oct 2018 17:15:32 +0000 (19:15 +0200)]
GP: Add warning when mix Build and Time Offset

2 years agoGP: Include option to render layers by view layer
Antonioya [Thu, 25 Oct 2018 14:50:42 +0000 (16:50 +0200)]
GP: Include option to render layers by view layer

This allows to make composition getting each grease pencil layer in a different render output.

2 years agoCleanup: comments and unused code
Ines Almeida [Thu, 25 Oct 2018 13:41:32 +0000 (13:41 +0000)]
Cleanup: comments and unused code

2 years agoCycles: Overhaul ensure_valid_reflection to fix issues with normal- and bumpmapping
Lukas Stockner [Sun, 21 Oct 2018 01:41:31 +0000 (03:41 +0200)]
Cycles: Overhaul ensure_valid_reflection to fix issues with normal- and bumpmapping

This function is supposed to prevent the black artifacts caused by strong normal- or bumpmapping, but failed in some cases.

Now the code correctly handles all test files and previous issues I am aware of and also has extensive comments describing
the algorithm and the math behind it.

Basically, the main problem was that there can be multiple valid solutions that fulfil the reflection angle criterium,
but I had assumed that only one would exist and therefore simply picked the first solution with a positive term in srqt().
Now, the code uses additional validity checks and a simple heuristic to pick the best valid solution.

Additionally, the code messed up very shallow reflections even if the normal map strength was zero due to the constant
limit for the outgoing ray angle, which caused shallow incoming rays to fail the initial test even when reflected directly
on Ng. Now, the code accounts for this by reducing the threshold in the case of a shallow incoming ray, ensuring that at
least N=Ng is always a valid solution.

Reviewers: brecht

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

2 years agoTool System: draw circle-select brush outline
Campbell Barton [Thu, 25 Oct 2018 10:05:29 +0000 (21:05 +1100)]
Tool System: draw circle-select brush outline

2 years agoTool System: support custom cursor drawing
Campbell Barton [Thu, 25 Oct 2018 10:03:41 +0000 (21:03 +1100)]
Tool System: support custom cursor drawing

2 years agoPyAPI: initial gpu_extras module (circle drawing utility)
Campbell Barton [Thu, 25 Oct 2018 10:04:38 +0000 (21:04 +1100)]
PyAPI: initial gpu_extras module (circle drawing utility)

2 years agoPyAPI: rename GPL VertBuf.attr_fill identifier to id
Campbell Barton [Thu, 25 Oct 2018 09:32:02 +0000 (20:32 +1100)]
PyAPI: rename GPL VertBuf.attr_fill identifier to id

This is used elsewhere in the API and its a common abbreviation.

2 years agoDepsgraph: don't lose the update tag on rebuild for op nodes with a name.
Alexander Gavrilov [Thu, 25 Oct 2018 07:29:17 +0000 (10:29 +0300)]
Depsgraph: don't lose the update tag on rebuild for op nodes with a name.

This fixes a missing update when clearing the Text On Curve
(follow_curve) option of a text object.

2 years agoCleanup: move params into their own struct
Campbell Barton [Thu, 25 Oct 2018 06:20:26 +0000 (17:20 +1100)]
Cleanup: move params into their own struct

2 years agoPyAPI: take paint-cursor space/region type args
Campbell Barton [Thu, 25 Oct 2018 05:27:13 +0000 (16:27 +1100)]
PyAPI: take paint-cursor space/region type args

2 years agoWM: space, region type filtering for paint cursor
Campbell Barton [Thu, 25 Oct 2018 05:06:47 +0000 (16:06 +1100)]
WM: space, region type filtering for paint cursor

Avoids calling poll on mouse-move for unrelated space/region types.

2 years agoPyAPI: support for Python paint cursors
Campbell Barton [Thu, 25 Oct 2018 04:31:02 +0000 (15:31 +1100)]
PyAPI: support for Python paint cursors

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Thu, 25 Oct 2018 04:19:35 +0000 (15:19 +1100)]
Merge branch 'master' into blender2.8

2 years agoWM: minor changes to cursor API
Campbell Barton [Thu, 25 Oct 2018 04:18:24 +0000 (15:18 +1100)]
WM: minor changes to cursor API

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Thu, 25 Oct 2018 01:26:08 +0000 (12:26 +1100)]
Merge branch 'master' into blender2.8

2 years agoCleanup: unused vars, correct bad (unused) logic
Campbell Barton [Thu, 25 Oct 2018 01:24:38 +0000 (12:24 +1100)]
Cleanup: unused vars, correct bad (unused) logic

2 years agoCleanup: unused variables
Campbell Barton [Thu, 25 Oct 2018 01:03:34 +0000 (12:03 +1100)]
Cleanup: unused variables

2 years agoUI: move 2d paint panels to topbar & toolsettings
Campbell Barton [Thu, 25 Oct 2018 00:13:22 +0000 (11:13 +1100)]
UI: move 2d paint panels to topbar & toolsettings

Removed 'Tool' and 'Options' panels,
both these settings are quite obscure and
already available in the 'Brush' menu.

2 years agoFix top bar unified color & image paint brush
Campbell Barton [Wed, 24 Oct 2018 22:53:22 +0000 (09:53 +1100)]
Fix top bar unified color & image paint brush

2 years agoGP: Fix compiler warnings
Antonioya [Wed, 24 Oct 2018 20:35:37 +0000 (22:35 +0200)]
GP: Fix compiler warnings

2 years agoDepsgraph: fixes for the eval_flags API behavior.
Alexander Gavrilov [Wed, 24 Oct 2018 16:38:50 +0000 (19:38 +0300)]
Depsgraph: fixes for the eval_flags API behavior.

- Use the original ID pointer for lookup in DEG_get_eval_flags_for_id.
- When the flags change after a DEG rebuild, tag the object for update.
- Instead of mixing int and short in different places, use uint32_t.

This fixes text not updating when a Follow Curve reference is set.

2 years agoFix T56172 Accessing COW data from RNA - Dimension
Bastien Montagne [Wed, 24 Oct 2018 15:18:02 +0000 (17:18 +0200)]
Fix T56172 Accessing COW data from RNA - Dimension

Also fixes T55769 Dimension Not properly work
and T56064 Blender crashes on selecting text-object

We decided to go to the easy way in the end, simply enforcing computing
BBox of all objects when using 'active' depsgraph, and copying back to
orig object (same as transform matrix, etc.).

2 years agoGP: Add missing title for Armature modifier
Antonioya [Wed, 24 Oct 2018 15:10:51 +0000 (17:10 +0200)]
GP: Add missing title for Armature modifier

2 years agoGP: Rename Fixed type in Time modifier
Antonioya [Wed, 24 Oct 2018 14:59:13 +0000 (16:59 +0200)]
GP: Rename Fixed type in Time modifier

2 years agoGP: Add new Layer Pass Index filter to modifiers
Antonioya [Wed, 24 Oct 2018 14:46:14 +0000 (16:46 +0200)]
GP: Add new Layer Pass Index filter to modifiers

Now the modifier can be filtered using the new layer index.

Also changed panels to put layers and passes filter always at the end of the panel.

2 years agoFix T57361: Creating a new scene with a full copy doesn't work.
Bastien Montagne [Wed, 24 Oct 2018 12:45:18 +0000 (14:45 +0200)]
Fix T57361: Creating a new scene with a full copy doesn't work.

BKE_scene_copy() & co. were pretty much doing nothing right...

Was a tough fight, but at least now they should behave a tad better (and
reported issue is fixed).

Proper fix is to fully rewrite that PoS, it was already a mess without
collections, now it's even hairier to handle properly, we need to use
modern new ID handling API for that (and maybe extend it a bit as
needed). But way too late to do that in 2.80.

2 years agoCleanup: Remove unused modifiers callback
Sergey Sharybin [Wed, 24 Oct 2018 12:03:51 +0000 (14:03 +0200)]
Cleanup: Remove unused modifiers callback

Was only used by subsurf in the past years, it is unlikely
other modifiers will every need this any time soon.

2 years agoDepsgraph: minor renaming and refactor of API for adding evaluation flags.
Alexander Gavrilov [Wed, 24 Oct 2018 09:31:24 +0000 (12:31 +0300)]
Depsgraph: minor renaming and refactor of API for adding evaluation flags.

2 years agoSubsurf: Remove edit mesh modifier callbacks
Sergey Sharybin [Wed, 24 Oct 2018 10:35:54 +0000 (12:35 +0200)]
Subsurf: Remove edit mesh modifier callbacks

Those were used for partial updates during edit mode, which will
not be possible anymore with OpenSubdiv.

Optimization for OpenSubdiv would be to re-use topology refiner
if topology does not change. But this is something to be done
for both edit and object modes, no need to have separate code
paths for those.

This commit makes OpenSubdiv to properly work in edit mode.

2 years agoFix Python warnings when running in background.
Brecht Van Lommel [Tue, 23 Oct 2018 12:52:01 +0000 (14:52 +0200)]
Fix Python warnings when running in background.

2 years agoCleanup: fix compiler warnings.
Brecht Van Lommel [Tue, 23 Oct 2018 10:50:31 +0000 (12:50 +0200)]
Cleanup: fix compiler warnings.

2 years agoGP: Add layer pass index to time modifier
Antonioya [Wed, 24 Oct 2018 09:02:52 +0000 (11:02 +0200)]
GP: Add layer pass index to time modifier

2 years agoFix: buffer overflow when creating gpu.types.GPUIndexBuf
Jacques Lucke [Wed, 24 Oct 2018 08:57:16 +0000 (10:57 +0200)]
Fix: buffer overflow when creating gpu.types.GPUIndexBuf

2 years agoGP: Add new modes to Time Offset modifier
Antonioya [Wed, 24 Oct 2018 08:31:48 +0000 (10:31 +0200)]
GP: Add new modes to Time Offset modifier

2 years agoGPUShader: shader.uniform_float, matrix parsing
Campbell Barton [Wed, 24 Oct 2018 07:45:47 +0000 (18:45 +1100)]
GPUShader: shader.uniform_float, matrix parsing

Add checks to parse 3x3 or 4x4 matrices,
also use error from `mathutils_array_parse` instead of overwriting.

2 years agoPartially revert "GPUShader: shader.uniform_float parameters"
Campbell Barton [Wed, 24 Oct 2018 06:59:41 +0000 (17:59 +1100)]
Partially revert "GPUShader: shader.uniform_float parameters"

`mathutils_array_parse` is meant to parse 1d arrays of numbers.

Using matrices internal memory layout is confusing since
mathutils matrices are exposed as row major.

Also, the matrix shape wasn't checked for.

Callers that want to handle matrices should check for them explicitly.

2 years agoFix T57359: Crash adding a Driver and then changing frame
Sergey Sharybin [Wed, 24 Oct 2018 07:44:57 +0000 (09:44 +0200)]
Fix T57359: Crash adding a Driver and then changing frame

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Wed, 24 Oct 2018 07:00:13 +0000 (09:00 +0200)]
Merge branch 'master' into blender2.8

Conflicts:
source/blender/blenkernel/intern/scene.c

2 years agoFix (unreported) bad halding of ID usercounts when fully copying a scene.
Bastien Montagne [Wed, 24 Oct 2018 06:43:20 +0000 (08:43 +0200)]
Fix (unreported) bad halding of ID usercounts when fully copying a scene.

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Wed, 24 Oct 2018 06:26:32 +0000 (08:26 +0200)]
Merge branch 'master' into blender2.8

Conflicts:
intern/locale/boost_locale_wrapper.cpp

2 years agoI18n: tweak/fix exception catching code of pgettex() wrapper.
Bastien Montagne [Wed, 24 Oct 2018 06:23:14 +0000 (08:23 +0200)]
I18n: tweak/fix exception catching code of pgettex() wrapper.

Related to T57066, rather unlikely to fix core of the issue, but may
solve crash itself.

Same as rBf22385f28ec8 (did it by mistake in 2.8 first :/ ).

2 years agoFix error w/ poly-build clearing the edit-object
Campbell Barton [Wed, 24 Oct 2018 05:24:01 +0000 (16:24 +1100)]
Fix error w/ poly-build clearing the edit-object

2 years agoFix T57351: Deform modifiers skipped in editmode
Campbell Barton [Wed, 24 Oct 2018 03:45:36 +0000 (14:45 +1100)]
Fix T57351: Deform modifiers skipped in editmode

2 years agoFixup for LATTICE_OT_flip
Dalai Felinto [Wed, 24 Oct 2018 03:00:55 +0000 (00:00 -0300)]
Fixup for LATTICE_OT_flip

Committed by accident (1076523b1b62a3d8833bf2a).
But now I need to fix building.

Note: The operator itself shouldn't have been committed because it
should operate in the world space (for the axis), not local.

I will tackle this later.

2 years agoSilence some false positiver warnings
Dalai Felinto [Wed, 24 Oct 2018 02:47:04 +0000 (23:47 -0300)]
Silence some false positiver warnings

2 years agoMulti-Objects: LATTICE_OT_flip
Dalai Felinto [Wed, 24 Oct 2018 02:27:05 +0000 (23:27 -0300)]
Multi-Objects: LATTICE_OT_flip

2 years agoFix mapped mesh display skipping generated faces
Campbell Barton [Wed, 24 Oct 2018 02:12:18 +0000 (13:12 +1100)]
Fix mapped mesh display skipping generated faces