7 hours agobring back multithreading support functions
Jacques Lucke [Thu, 20 Jun 2019 13:49:49 +0000 (15:49 +0200)]
bring back multithreading support

7 hours agodon't inline simulation functions to make profiles more useful
Jacques Lucke [Thu, 20 Jun 2019 13:20:55 +0000 (15:20 +0200)]
don't inline simulation functions to make profiles more useful

8 hours agoremove outdated simulation code
Jacques Lucke [Thu, 20 Jun 2019 13:17:23 +0000 (15:17 +0200)]
remove outdated simulation code

8 hours agomove events and actions to separate files
Jacques Lucke [Thu, 20 Jun 2019 13:16:57 +0000 (15:16 +0200)]
move events and actions to separate files

8 hours agouse mesh surface emitter again
Jacques Lucke [Thu, 20 Jun 2019 13:05:08 +0000 (15:05 +0200)]
use mesh surface emitter again

8 hours agotest multiple events
Jacques Lucke [Thu, 20 Jun 2019 12:56:42 +0000 (14:56 +0200)]
test multiple events

8 hours agosupport for multiple events per particle per time step
Jacques Lucke [Thu, 20 Jun 2019 12:34:09 +0000 (14:34 +0200)]
support for multiple events per particle per time step

8 hours agosupport killing particles again
Jacques Lucke [Thu, 20 Jun 2019 12:23:39 +0000 (14:23 +0200)]
support killing particles again

9 hours agobring back event handling
Jacques Lucke [Thu, 20 Jun 2019 11:57:32 +0000 (13:57 +0200)]
bring back event handling

10 hours agocompress blocks after each simulation step
Jacques Lucke [Thu, 20 Jun 2019 10:51:07 +0000 (12:51 +0200)]
compress blocks after each simulation step

10 hours agoactually free emitters etc.
Jacques Lucke [Thu, 20 Jun 2019 10:44:07 +0000 (12:44 +0200)]
actually free emitters etc.

10 hours agoapply forces to particles again
Jacques Lucke [Thu, 20 Jun 2019 10:36:23 +0000 (12:36 +0200)]
apply forces to particles again

10 hours agoPass particle influences into the right functions
Jacques Lucke [Thu, 20 Jun 2019 10:21:30 +0000 (12:21 +0200)]
Pass particle influences into the right functions

11 hours agoseparate emitters from particle influencers
Jacques Lucke [Thu, 20 Jun 2019 10:16:43 +0000 (12:16 +0200)]
separate emitters from particle influencers

11 hours agosupport emitting particles again
Jacques Lucke [Thu, 20 Jun 2019 10:10:07 +0000 (12:10 +0200)]
support emitting particles again

11 hours agobring back creating the combined positon array
Jacques Lucke [Thu, 20 Jun 2019 09:18:54 +0000 (11:18 +0200)]
bring back creating the combined positon array

12 hours agorestructure solver api
Jacques Lucke [Thu, 20 Jun 2019 09:04:45 +0000 (11:04 +0200)]
restructure solver api

Now I have to bring back all the functionality that was there already.

13 hours agoremove abstractions that are wrong for now
Jacques Lucke [Thu, 20 Jun 2019 08:17:09 +0000 (10:17 +0200)]
remove abstractions that are wrong for now

13 hours agoMerge branch 'master' into functions
Jacques Lucke [Thu, 20 Jun 2019 07:43:01 +0000 (09:43 +0200)]
Merge branch 'master' into functions

16 hours agoFix T65770: File Browser missing "Sidebar" in View menu
Campbell Barton [Thu, 20 Jun 2019 04:49:55 +0000 (14:49 +1000)]
Fix T65770: File Browser missing "Sidebar" in View menu

16 hours agoFix T65922: Custom property error
Campbell Barton [Thu, 20 Jun 2019 04:34:20 +0000 (14:34 +1000)]
Fix T65922: Custom property error

26 hours agoFix sculpt not updating on undo with EEVEE enabled
Pablo Dobarro [Wed, 19 Jun 2019 18:29:25 +0000 (20:29 +0200)]
Fix sculpt not updating on undo with EEVEE enabled

27 hours agoFix T65398 - Fix frame rate base use in Python SMPTE functions
Richard Antalik [Wed, 19 Jun 2019 17:49:37 +0000 (10:49 -0700)]
Fix T65398 - Fix frame rate base use in Python SMPTE functions

Differential Revision:

Reviewed By: brecht

27 hours agoVSE: Draw pre-animated (volume) sound strip waveforms.
Richard Antalik [Wed, 19 Jun 2019 17:36:45 +0000 (10:36 -0700)]
VSE: Draw pre-animated (volume) sound strip waveforms.

29 hours agoFix T65780: unnecessary GPU image texture reloads after recent changes
Brecht Van Lommel [Wed, 19 Jun 2019 15:49:39 +0000 (17:49 +0200)]
Fix T65780: unnecessary GPU image texture reloads after recent changes

29 hours agoGPencil: Remove unreported duplicated Reproject operator in menu
Antonioya [Wed, 19 Jun 2019 15:19:22 +0000 (17:19 +0200)]
GPencil: Remove unreported duplicated Reproject operator in menu

The reproject option was duplicated. Detected writing the manual.

30 hours agoFix order of modifications for Set Origin.
Sergey Sharybin [Wed, 19 Jun 2019 12:36:07 +0000 (14:36 +0200)]
Fix order of modifications for Set Origin.

The logic of parent update is very similar to Apply Transform, so made it
so parents are handled before children.

30 hours agoFix T65900: Apply Scale doesn't work correct with parenting
Sergey Sharybin [Wed, 19 Jun 2019 12:12:34 +0000 (14:12 +0200)]
Fix T65900: Apply Scale doesn't work correct with parenting

Parents are to be handled prior to their children.

30 hours agoFix T65614: Sequencer render single layer only
Sergey Sharybin [Wed, 19 Jun 2019 14:00:38 +0000 (16:00 +0200)]
Fix T65614: Sequencer render single layer only

Was noticeable when sequencer uses scene with a compositor.

The way it was using render API was forcing a single render layer.

Reviewers: brecht

Reviewed By: brecht

Differential Revision:

30 hours agoFix T65914: Workbench Transparency Film
Jeroen Bakker [Wed, 19 Jun 2019 14:20:02 +0000 (16:20 +0200)]
Fix T65914: Workbench Transparency Film

When performing F12 render on a transparent film all solid objects where
a bit transparent. Single Pass AA and no AA passes were not visible at

Issue was that the first frame was not handled correctly making these
artifacts. This commit changes the order of `GPU_state_init` and
`DRW_state_reset` so the state is correct during the first pass.

32 hours agoBring mask tools back to Masking Tool Area and update Context Menu
Sebastian Koenig [Wed, 19 Jun 2019 13:05:25 +0000 (15:05 +0200)]
Bring mask tools back to Masking Tool Area and update Context Menu

The mask tools in the Tool Area of Clip Editor where never brought back,
after decision was made to postpone proper masking tools to 2.81.

This brings back the Mask Tool Panel in the Mask tab of Masking Tool Area.

This Diff also adds a better Context Menu, which respects whether you're
in Masking or Tracking mode. I have added the most important operators
there, with a focus on those that are otherwise harder to access.

Reviewers: sergey, billreynish

Subscribers: sebastian, brecht, hype

Tags: #motion_tracking

Differential Revision:

32 hours agoFix T65902: save all modified images should not try to save .psd files
Brecht Van Lommel [Wed, 19 Jun 2019 12:28:54 +0000 (14:28 +0200)]
Fix T65902: save all modified images should not try to save .psd files

We can't save these without data loss, so don't try to do this.

33 hours agoCleanup: Pass explicit dependency graph
Sergey Sharybin [Wed, 19 Jun 2019 10:15:10 +0000 (12:15 +0200)]
Cleanup: Pass explicit dependency graph

Avoids hash lookup on per-object basis when applying transform.

34 hours agoinitial curve emitter
Jacques Lucke [Wed, 19 Jun 2019 10:24:20 +0000 (12:24 +0200)]
initial curve emitter

34 hours agoFix T65918 DRW: Crash when add a any modifier to a curve
Clément Foucault [Wed, 19 Jun 2019 10:20:55 +0000 (12:20 +0200)]
Fix T65918 DRW: Crash when add a any modifier to a curve

36 hours agomove forces into separate file
Jacques Lucke [Wed, 19 Jun 2019 09:06:23 +0000 (11:06 +0200)]
move forces into separate file

36 hours agorename files
Jacques Lucke [Wed, 19 Jun 2019 08:39:02 +0000 (10:39 +0200)]
rename files

36 hours agoremove turbulence force to have less distorted profiles
Jacques Lucke [Wed, 19 Jun 2019 08:34:30 +0000 (10:34 +0200)]
remove turbulence force to have less distorted profiles

36 hours agoextract temporary method for old particle deletion
Jacques Lucke [Wed, 19 Jun 2019 08:34:08 +0000 (10:34 +0200)]
extract temporary method for old particle deletion

36 hours agoavoid creating the same arrays many times
Jacques Lucke [Wed, 19 Jun 2019 08:29:58 +0000 (10:29 +0200)]
avoid creating the same arrays many times

36 hours agoIndustry Compat keymap: Some curve edit keymap entries were using Click events
William Reynish [Wed, 19 Jun 2019 08:29:15 +0000 (10:29 +0200)]
Industry Compat keymap: Some curve edit keymap entries were using Click events

This was inconsistent and make the actions seem slow and unresponsive. Change to using Press, like other modes.

43 hours agoUI: show label in tool-tips
Campbell Barton [Wed, 19 Jun 2019 01:38:06 +0000 (11:38 +1000)]
UI: show label in tool-tips

When button text doesn't already show the label,
include the label in the tool-tip.

Without this the descriptions for icon-only buttons
don't always make sense.

This also gives a tool-tip for icon-only popovers.

43 hours agoUI: add popover access for button labels
Campbell Barton [Wed, 19 Jun 2019 01:34:54 +0000 (11:34 +1000)]
UI: add popover access for button labels

Needed for tool-tips to access labels.

43 hours agoFix button label access returning empty label
Campbell Barton [Wed, 19 Jun 2019 01:29:51 +0000 (11:29 +1000)]
Fix button label access returning empty label

The check the buttons string has content (not just that it's non-NULL).

44 hours agoFix active face-dot color
Campbell Barton [Wed, 19 Jun 2019 00:42:32 +0000 (10:42 +1000)]
Fix active face-dot color

Unlike edge/vert this was blending with the regular selection color.

45 hours agoMove to Collection: Fix tooltip
Dalai Felinto [Tue, 18 Jun 2019 23:45:48 +0000 (20:45 -0300)]
Move to Collection: Fix tooltip

Found this while writing the manual page. A scene collection nowadays is simply
called collection.

46 hours agoUI: add set upper/lowercase to edit-text menu
Campbell Barton [Tue, 18 Jun 2019 22:21:25 +0000 (08:21 +1000)]
UI: add set upper/lowercase to edit-text menu

Lost when toolbar was removed.

47 hours ago3D View: draw edit-text selection on-top (x-ray)
Campbell Barton [Tue, 18 Jun 2019 22:00:47 +0000 (08:00 +1000)]
3D View: draw edit-text selection on-top (x-ray)

This changes behavior from 2.7x, where selection & cursor could be
occluded by other objects.

Doing this without z-fighting in 2.8x isn't so simple because drawing
the text geometry is separated from edit-selection.

Change behavior since this doesn't seem like an important difference.

Fixes assert drawing text edit mode.

47 hours agoCleanup: style, indentation
Campbell Barton [Tue, 18 Jun 2019 21:24:55 +0000 (07:24 +1000)]
Cleanup: style, indentation

47 hours agoCMake: cleanup, unset temporary var after use
Campbell Barton [Tue, 18 Jun 2019 21:12:16 +0000 (07:12 +1000)]
CMake: cleanup, unset temporary var after use

2 days agoMeshBatchCache: Speedup: Do not return valid batch if geometry is empty
Clément Foucault [Tue, 18 Jun 2019 20:25:37 +0000 (22:25 +0200)]
MeshBatchCache: Speedup: Do not return valid batch if geometry is empty

There was a huge overhead of batches that had no geometry. The loose
wire batch was the culprit.

2 days agoFix T65631 Eevee: Translucent shader broken in Eevee when AO is enabled
Clément Foucault [Tue, 18 Jun 2019 16:28:35 +0000 (18:28 +0200)]
Fix T65631 Eevee: Translucent shader broken in Eevee when AO is enabled

2 days agoCleanup: GPU: Fix codestyle
Clément Foucault [Tue, 18 Jun 2019 16:11:16 +0000 (18:11 +0200)]
Cleanup: GPU: Fix codestyle

2 days agoFile Browser: Various fixes and enhancements to 'autoscroll to item' feature.
Bastien Montagne [Tue, 18 Jun 2019 19:44:14 +0000 (21:44 +0200)]
File Browser: Various fixes and enhancements to 'autoscroll to item' feature.

Initial trigger to this work was T65782, requesting faster autoscroll
when current folder contains thousands of items. That was a fairly
simple change, just needed to make scrolling steps variable based on
'distance' between current position and desired one.

But several other issues showed up while working on this, among the most
annoying ones, the scrolltimer could keep running forever in some cases,
failing to detect properly an 'end condition', we could even get some
'bouncing' in extreme corner cases, edited item was not always properly
visible in the end, etc.

So as usual with UI, this ended up in a frustrating equilibrium game of
finding the optimal solution among several tradeof, taking unexpected
large amount of time... At least new code seems to work OK in
all possible (reasonable) cases, that will do for now.

2 days agoFix Cycles CUDA suboptimal performance on Windows 10 with recent graphics cards
Brecht Van Lommel [Tue, 18 Jun 2019 16:30:48 +0000 (18:30 +0200)]
Fix Cycles CUDA suboptimal performance on Windows 10 with recent graphics cards

When compute preemption is available we schedule more work which is more
efficient. However the CUDA driver appears to be incorrectly reporting this as
unavailable, even though it should be supported starting with Windows 10 1803
and Pascal and Turing (10x0 and 20x0) graphics cards.

This reduces render time by about a 25% difference on our benchmark scenes. On
Linux compute preemption appears to be reported correctly.

2 days agorefactor moving particles to next event time
Jacques Lucke [Tue, 18 Jun 2019 16:23:10 +0000 (18:23 +0200)]
refactor moving particles to next event time

2 days agoextract methods to simulate to next event vs. to next frame
Jacques Lucke [Tue, 18 Jun 2019 14:45:18 +0000 (16:45 +0200)]
extract methods to simulate to next event vs. to next frame

2 days agoIntegrate particles again after an event
Jacques Lucke [Tue, 18 Jun 2019 14:22:05 +0000 (16:22 +0200)]
Integrate particles again after an event

2 days agoFix T65689 Geometry overlaps axis selector
Clément Foucault [Tue, 18 Jun 2019 14:14:17 +0000 (16:14 +0200)]
Fix T65689 Geometry overlaps axis selector

It seems that in 2.79 callbacks were drawn with depth test off by default.

2 days agoFix T65660 Mirror modifier didn't work with custom normals.
Howard Trickey [Tue, 18 Jun 2019 14:07:53 +0000 (10:07 -0400)]
Fix T65660 Mirror modifier didn't work with custom normals.

2 days agoFix T61912, T63297: error baking tangent space normal map with autosmooth
Brecht Van Lommel [Tue, 18 Jun 2019 13:51:17 +0000 (15:51 +0200)]
Fix T61912, T63297: error baking tangent space normal map with autosmooth

2 days agoremove specialized step function for new particles
Jacques Lucke [Tue, 18 Jun 2019 13:18:31 +0000 (15:18 +0200)]
remove specialized step function for new particles

2 days agoFix T65901: Alembic crash on out-of-bounds UV indices
Sybren A. Stüvel [Tue, 18 Jun 2019 13:08:41 +0000 (15:08 +0200)]
Fix T65901: Alembic crash on out-of-bounds UV indices

An Alembic file saved by 3DS Max caused Blender to crash when importing.
Either the UV indices in the file are out of bounds or they are written
in a way we don't expect. In either case, this now no longer causes Blender
to crash.

2 days agouse indices mask to update only certain particles
Jacques Lucke [Tue, 18 Jun 2019 13:02:59 +0000 (15:02 +0200)]
use indices mask to update only certain particles

2 days agonaming cleanup
Jacques Lucke [Tue, 18 Jun 2019 12:26:57 +0000 (14:26 +0200)]
naming cleanup

2 days agoinitial positional event abstraction
Jacques Lucke [Tue, 18 Jun 2019 12:21:35 +0000 (14:21 +0200)]
initial positional event abstraction

2 days agomore explicit particle integration step
Jacques Lucke [Tue, 18 Jun 2019 12:02:32 +0000 (14:02 +0200)]
more explicit particle integration step

2 days agoAdd a new function to recover the next shading group.
Antonioya [Tue, 18 Jun 2019 12:00:19 +0000 (14:00 +0200)]
Add a new function to recover the next shading group.

After talking with @fclem, we decided to keep this as a workaround function waiting for the clearing operation to be available inside the shgroups.

2 days agoFix T64153: RenderEngine.update_result does not show result immediately
Brecht Van Lommel [Tue, 18 Jun 2019 11:53:50 +0000 (13:53 +0200)]
Fix T64153: RenderEngine.update_result does not show result immediately

2 days agoFix T63359: no render preview when save buffers is on
Brecht Van Lommel [Tue, 18 Jun 2019 10:47:16 +0000 (12:47 +0200)]
Fix T63359: no render preview when save buffers is on

2 days agoCleanup: remove unused render buffers
Brecht Van Lommel [Tue, 18 Jun 2019 10:36:42 +0000 (12:36 +0200)]
Cleanup: remove unused render buffers

2 days agoFix --help text output
Campbell Barton [Tue, 18 Jun 2019 11:17:38 +0000 (21:17 +1000)]
Fix --help text output

2 days agoCleanup: improve description wording
Campbell Barton [Tue, 18 Jun 2019 10:59:20 +0000 (20:59 +1000)]
Cleanup: improve description wording

2 days agoDocs: correct --help text
Campbell Barton [Tue, 18 Jun 2019 08:34:42 +0000 (18:34 +1000)]
Docs: correct --help text

Also correct description indentation.

2 days agoUse multithreading when moving particles forward
Jacques Lucke [Tue, 18 Jun 2019 10:35:22 +0000 (12:35 +0200)]
Use multithreading when moving particles forward

Timings in my current test file (nanoseconds per particle per time step):
* Debug Build: 150ns
* Optimized Build: 47ns
* With threading: 9ns

2 days agorestructure simulation steps in solver
Jacques Lucke [Tue, 18 Jun 2019 10:03:46 +0000 (12:03 +0200)]
restructure simulation steps in solver

2 days agoUtility to convert SmallSet to SmallVector
Jacques Lucke [Tue, 18 Jun 2019 10:03:15 +0000 (12:03 +0200)]
Utility to convert SmallSet to SmallVector

2 days agoCleanup: reorder some functions
Jacques Lucke [Tue, 18 Jun 2019 09:49:15 +0000 (11:49 +0200)]
Cleanup: reorder some functions

2 days agoAllow emitters to emit into separate buffers
Jacques Lucke [Tue, 18 Jun 2019 09:46:14 +0000 (11:46 +0200)]
Allow emitters to emit into separate buffers

2 days agoTexturePaint: Projection Edit
Jeroen Bakker [Wed, 29 May 2019 11:27:27 +0000 (13:27 +0200)]
TexturePaint: Projection Edit

Disable all overlays except the texture paint overlay. Add alpha to the
resulting image buffer.

Reviewed By: brecht

Differential Revision:

2 days agoCompositor: File output node sockets
Jeroen Bakker [Fri, 24 May 2019 12:08:21 +0000 (14:08 +0200)]
Compositor: File output node sockets

When using RNA to alter the type of socket only the type was changed.
the typeinfo was not updated. Internally the File Output Node used RNA
to update the sockettype. making the socket invalid. When users save the
file and reopened the typeinfo was used. Also the color of the node was
determined via the typeinfo.

Another thing that happened was that the socket conversion was ignored
when empty node groups were present. The empty node groups were
optimized away before the needed data conversion was determined.

Reviewed By: brecht

Differential Revision:

2 days agominor emitter API improvement
Jacques Lucke [Tue, 18 Jun 2019 08:05:16 +0000 (10:05 +0200)]
minor emitter API improvement

2 days agoFix T65852: Cmake fails with paths containing special characters.
mano-wii [Tue, 18 Jun 2019 02:55:01 +0000 (23:55 -0300)]
Fix T65852: Cmake fails with paths containing special characters.

MATHES performs a regular expression which in this case is unnecessary.

3 days agoFix T65805 Assert "Too many draw engines enabled at the same time"
Clément Foucault [Mon, 17 Jun 2019 21:07:41 +0000 (23:07 +0200)]
Fix T65805 Assert "Too many draw engines enabled at the same time"

3 days agoFix T57650 UVEdit: selection not visible if behind unselected UVs
Clément Foucault [Mon, 17 Jun 2019 18:28:27 +0000 (20:28 +0200)]
Fix T57650 UVEdit: selection not visible if behind unselected UVs

Use depth buffer to order the uv edges correctly to always draw selected
edges on top.
We still use the double drawing workaround for points to keep the smooth
antialiased display.

3 days agoFix T65357: wrong facemap indices after applying a boolean modifier
Philipp Oeser [Mon, 17 Jun 2019 17:05:41 +0000 (19:05 +0200)]
Fix T65357: wrong facemap indices after applying a boolean modifier

Properly initialize custom data layers to default values when copying from
a mesh that does not have all the same layers.

Differential Revision:

3 days agoInconsistent Percentage Formatting
Harley Acheson [Mon, 17 Jun 2019 17:34:09 +0000 (10:34 -0700)]
Inconsistent Percentage Formatting

Percentage formatting of x% (used elsewhere) when using percentage display factor

Differential Revision:

Reviewed by Brecht Van Lommel

3 days agoUI_GetThemeColorShadeAlpha4fv not clamping alpha channel
Harley Acheson [Mon, 17 Jun 2019 17:21:27 +0000 (10:21 -0700)]
UI_GetThemeColorShadeAlpha4fv not clamping alpha channel

Fixing small error in UI_GetThemeColorShadeAlpha4fv() clamping blue channel twice instead of alpha

Differential Revision:

Reviewed by Brecht Van Lommel

3 days agoFix missing keyframe type operation in dopesheet and timeline context menu
Jean First [Mon, 17 Jun 2019 16:54:08 +0000 (18:54 +0200)]
Fix missing keyframe type operation in dopesheet and timeline context menu

Differential Revision:

3 days agoFix T53581: remesh modifier artifacts in sharp mode
Dan Koschier [Mon, 17 Jun 2019 16:35:18 +0000 (18:35 +0200)]
Fix T53581: remesh modifier artifacts in sharp mode

Replace relative threshold for pseudo inverse in sharp remeshing modifier with
0.1 as proposed in the original paper.

Also change pseudo-inverse implementation that works with dynamic heap-allocated
matrix to static 3x3 version, for performance

Differential Revision:

3 days agoFix AV-sync sometimes putting scene one frame back
Sergey Sharybin [Mon, 17 Jun 2019 15:52:02 +0000 (17:52 +0200)]
Fix AV-sync sometimes putting scene one frame back

3 days agoFix T65886: Crash when deleting a scene when "New Main Window" is open.
Bastien Montagne [Mon, 17 Jun 2019 14:37:15 +0000 (16:37 +0200)]
Fix T65886: Crash when deleting a scene when "New Main Window" is open.

When we delete a scene, we need to update to new scene pointer all main
widows that might be using it, not only the active one from the context...

3 days agoFix frame jump with AV-sync enabled
Sergey Sharybin [Mon, 17 Jun 2019 14:32:29 +0000 (16:32 +0200)]
Fix frame jump with AV-sync enabled

It was possible to have animation player step happening after manual
jump prior to the dependency graph evaluation.

Now we forbid changing scene frame if it was manually requested to
be changed.

3 days agoFix T59915: Skin modifier produces inverted normals on end-cap faces when vertically...
Sebastian Parborg [Mon, 17 Jun 2019 14:33:16 +0000 (16:33 +0200)]
Fix T59915: Skin modifier produces inverted normals on end-cap faces when vertically aligned edge is assigned root

Sometimes when the end caps pointed strait up (z axis) their faces would
become inverted.

It seems like the code tried to rely on a certain vertex order to always
happen. However this edge case did manage to produce an order that would
produce inverted cap faces.  So now I introduce a normal check instead
so we can be certain that the face will have the normal direction we

Reviewed By: Jacques Lucke

Differential Revision:

3 days agoDRW: Make stencil state clearer and distinct
Clément Foucault [Mon, 17 Jun 2019 13:18:21 +0000 (15:18 +0200)]
DRW: Make stencil state clearer and distinct

Write and test states are now separate and need to be explicit.

Also add asserts when trying to write without test enabled.

3 days agoCleanup: Fix typo error
Antonioya [Mon, 17 Jun 2019 14:12:50 +0000 (16:12 +0200)]
Cleanup: Fix typo error

3 days agoFix T65674: Rigid bodies in duplicated collections are not automatically added to...
Bastien Montagne [Mon, 17 Jun 2019 14:07:19 +0000 (16:07 +0200)]
Fix T65674: Rigid bodies in duplicated collections are not automatically added to Rigid Body World.

As title says, we need to add back new copies of objects that are RB
items to the RBW collections...

3 days agoFix T62384: Grease pencil blank material slot
Antonioya [Mon, 17 Jun 2019 14:09:48 +0000 (16:09 +0200)]
Fix T62384: Grease pencil blank material slot

Now, when you add an slot and then draw, the automatic created material will use the empty slot, instead to add a new slot and leave a empty one.

This fix only works if you add only an empty slot. We could remove any empty slot in the middle, but as this has no impact  in the drawing or file, it does not worth the CPU time to review every time the material list. Anyway, the user can press delete button to remove any empty slot.

If we see this is a big problem in the future, we can reopen the bug and add this cleaning function.

3 days agoFix T65878: "Bpy.ops.object.camera_add" doesn't take the rotation
Philipp Oeser [Mon, 17 Jun 2019 13:21:36 +0000 (15:21 +0200)]
Fix T65878: "Bpy.ops.object.camera_add" doesn't take the rotation
argument into account

- if a rotation is given, always take it into account [which means
setting alignment to ALIGN_WORLD prior]
- caused by recent rB06fe2a5e0c5d

Reviewers: brecht

Maniphest Tasks: T65878

Differential Revision:

3 days agoimproved particle attribute handling
Jacques Lucke [Mon, 17 Jun 2019 13:52:04 +0000 (15:52 +0200)]
improved particle attribute handling