22 months agoCleanup: Remove gitignore for api images
Aaron Carlisle [Thu, 27 Jul 2017 20:04:42 +0000 (16:04 -0400)]
Cleanup: Remove gitignore for api images

22 months agoFix UI messages...
Bastien Montagne [Thu, 27 Jul 2017 13:20:44 +0000 (15:20 +0200)]
Fix UI messages...

22 months agoFix factory setup using user scripts path still
Campbell Barton [Thu, 27 Jul 2017 12:22:26 +0000 (22:22 +1000)]
Fix factory setup using user scripts path still

22 months agoFix T51776: Make sure button icons are updated on Ctrl-ScrollWheel
Jeff Knox [Thu, 27 Jul 2017 10:55:17 +0000 (12:55 +0200)]
Fix T51776: Make sure button icons are updated on Ctrl-ScrollWheel

22 months agoFix button text overlapping with shortcut text in popups
Julian Eisel [Thu, 27 Jul 2017 09:49:41 +0000 (11:49 +0200)]
Fix button text overlapping with shortcut text in popups

The purpose of the keymap strings is probably for un-embossed menu items
like seen in most pulldowns. I can't see a reason for also adding that
string for regularly drawn buttons within popups, we don't add it
anywhere else in the UI either. So this commit makes sure shortcut
strings are only added to buttons that are drawn like pulldown-menu

22 months agoMinor code style corrections
Julian Eisel [Thu, 27 Jul 2017 09:44:51 +0000 (11:44 +0200)]
Minor code style corrections

22 months agoFix Label colors in popups
Aleksandr Zinovev [Thu, 27 Jul 2017 07:27:29 +0000 (10:27 +0300)]
Fix Label colors in popups

22 months agoFix: use click style if a pie was spawned by release or click event
Aleksandr Zinovev [Thu, 27 Jul 2017 07:13:40 +0000 (10:13 +0300)]
Fix: use click style if a pie was spawned by release or click event

22 months agoCleanup: remove check for old GCC&PPC
Campbell Barton [Wed, 26 Jul 2017 21:28:29 +0000 (07:28 +1000)]
Cleanup: remove check for old GCC&PPC

22 months agoCleanup: Py3.7x warning
Campbell Barton [Wed, 26 Jul 2017 21:23:36 +0000 (07:23 +1000)]
Cleanup: Py3.7x warning

22 months agoMinor template code patch. (objectHitList =/= hitObjectList)
Aaron Carlisle [Wed, 26 Jul 2017 19:56:43 +0000 (15:56 -0400)]
Minor template code patch. (objectHitList =/= hitObjectList)

The Blender text editor's built in python template "Gamelogic" has a reference near the bottom to "objectHitList" as an alleged attribute to the KX_TouchSensor. This name is incorrect, it's correct name is "hitObjectList."

Attempting to access the suggested objectHitList returns error...
AttributeError: 'KX_TouchSensor' object has no attribute 'objectHitList'

The provided diff corrects this minor error.

Reviewers: kupoman, moguri, campbellbarton, Blendify

Reviewed By: Blendify

Tags: #game_engine, #game_python

Differential Revision:

23 months agoFix T52176: Bevel doesn't correctly work with default empty Vgroup.
Bastien Montagne [Wed, 26 Jul 2017 14:23:24 +0000 (16:23 +0200)]
Fix T52176: Bevel doesn't correctly work with default empty Vgroup.

`defvert_array_find_weight_safe()` was confusing 'invalid vgroup' and
'valid but totally empty vgroup' cases.

Note that this also affected at least ShrinkWrap and SimpleDeform

23 months agoPyAPI: Skip user scripts w/ factory-startup
Campbell Barton [Tue, 25 Jul 2017 10:50:12 +0000 (20:50 +1000)]
PyAPI: Skip user scripts w/ factory-startup

used to check if user scripts should be loaded.

23 months agoPython module test: Don't cfail the test when import failure happens in preset
Sergey Sharybin [Tue, 25 Jul 2017 09:38:33 +0000 (11:38 +0200)]
Python module test: Don't cfail the test when import failure happens in preset

23 months agoPyAPI: utility for creating register, unregister
Campbell Barton [Tue, 25 Jul 2017 07:34:34 +0000 (17:34 +1000)]
PyAPI: utility for creating register, unregister

This simplifies creation of register, unregister functions that
simply forward calls submodules.

23 months agoFix T51450: viewport render time keeps increasing after render is done.
Jeff Knox [Mon, 24 Jul 2017 23:35:33 +0000 (01:35 +0200)]
Fix T51450: viewport render time keeps increasing after render is done.

Reviewed By: brecht

Differential Revision:

23 months agoFix compositor Glare node with Simpler Star resulting in uneven rays.
Matheus de Sousa Faria [Mon, 24 Jul 2017 22:29:25 +0000 (00:29 +0200)]
Fix compositor Glare node with Simpler Star resulting in uneven rays.

Reviewed By: brecht

Differential Revision:

23 months agoCleanup: trailing space
Campbell Barton [Mon, 24 Jul 2017 15:27:43 +0000 (01:27 +1000)]
Cleanup: trailing space

23 months agoCleanup: remove scons config
Campbell Barton [Mon, 24 Jul 2017 13:59:41 +0000 (23:59 +1000)]
Cleanup: remove scons config

23 months agoRevert "ransform: fix unreported bug: geometry hidden by clipping border (alt + b...
mano-wii [Mon, 24 Jul 2017 15:08:23 +0000 (12:08 -0300)]
Revert "ransform: fix unreported bug: geometry hidden by clipping border (alt + b) is not bypassed in snap to faces"

This reverts commit 7f09b55d01c248a741e967af597b7519f095983b.

23 months agoransform: fix unreported bug: geometry hidden by clipping border (alt + b) is not...
mano-wii [Mon, 24 Jul 2017 14:13:33 +0000 (11:13 -0300)]
ransform: fix unreported bug: geometry hidden by clipping border (alt + b) is not bypassed in snap to faces

The geometry behind the farther clip_plane is not bypassed

23 months agoFix T50039: texture paint soften strength not working with float images.
Brecht Van Lommel [Mon, 24 Jul 2017 13:02:39 +0000 (15:02 +0200)]
Fix T50039: texture paint soften strength not working with float images.

23 months agoFix T51948: pen pressure not detected with some Wacom tablets.
James Fulop [Mon, 24 Jul 2017 11:32:16 +0000 (13:32 +0200)]
Fix T51948: pen pressure not detected with some Wacom tablets.

Generalizes current conditions, QT implements it the same way.

23 months agoCorrect invalid assert use
Campbell Barton [Mon, 24 Jul 2017 07:32:09 +0000 (17:32 +1000)]
Correct invalid assert use

23 months agoFix Cycles multi scatter GGX different render results with Clang and GCC.
Brecht Van Lommel [Sun, 23 Jul 2017 20:43:55 +0000 (22:43 +0200)]
Fix Cycles multi scatter GGX different render results with Clang and GCC.

The order of evaluation of function arguments is undefined, and the order
was reversed between these compilers. This was causing regressions tests
to give different results between Linux and macOS.

23 months agoFix T52152: allow zero roughness for Cycles principled BSDF, don't clamp.
Brecht Van Lommel [Sat, 22 Jul 2017 19:38:44 +0000 (21:38 +0200)]
Fix T52152: allow zero roughness for Cycles principled BSDF, don't clamp.

23 months agoFix Cycles denoising NaNs with a 1 sample renders.
Brecht Van Lommel [Fri, 21 Jul 2017 19:43:49 +0000 (21:43 +0200)]
Fix Cycles denoising NaNs with a 1 sample renders.

This was causing different render results with different compilers. We
can't do much useful with 1 sample, but better for debugging.

23 months agoFix use of uninitialized value in Cycles, probably did not cause a bug.
Brecht Van Lommel [Fri, 21 Jul 2017 02:18:11 +0000 (04:18 +0200)]
Fix use of uninitialized value in Cycles, probably did not cause a bug.

23 months agoTransform: remove unused argument
mano-wii [Fri, 21 Jul 2017 21:04:05 +0000 (18:04 -0300)]
Transform: remove unused argument

23 months agoUI: Add Open Image button to Mask Stencil Image panel
Aaron Carlisle [Fri, 21 Jul 2017 20:46:35 +0000 (16:46 -0400)]
UI: Add Open Image button to Mask Stencil Image panel

In the future we should make these two buttons on one line
However because we need `gen_context = 'PAINT_STENCIL'`
this is a little hard and we need to find a proper solution.
One might be using `context_pointer_set`

Patch by @craig_jones with edits by @blendify

Differential Revision:

23 months agoUI: Add Open Image button to Mask Stencil Image panel
Aaron Carlisle [Fri, 21 Jul 2017 20:46:35 +0000 (16:46 -0400)]
UI: Add Open Image button to Mask Stencil Image panel

In the future we should make these two buttons on one line
However because we need `gen_context = 'PAINT_STENCIL'`
this is a little hard and we need to find a proper solution.
One might be using `context_pointer_set`

Patch by @craig_jones with edits by @blendify

Differential Revision:

23 months agoAnother solution to bug T38358 and related
mano-wii [Fri, 21 Jul 2017 17:02:16 +0000 (14:02 -0300)]
Another solution to bug T38358 and related

Moving the ray_start_local to the new position does not lose as much precision as moving the ray_org_local to the corresponding position.

The problem of inaccuracy is within the functions: `bvhtree_ray_cast_data_precalc` and` fast_ray_nearest_hit`. And not directly in the values of the rays.

23 months agoFix strict compiler warning in BGE when linking directly to SDL
Sergey Sharybin [Fri, 21 Jul 2017 14:07:59 +0000 (16:07 +0200)]
Fix strict compiler warning in BGE when linking directly to SDL

23 months agoFix T52134: New depsgraph crashes when evaluating several psys on from object
Sergey Sharybin [Fri, 21 Jul 2017 09:12:34 +0000 (11:12 +0200)]
Fix T52134: New depsgraph crashes when evaluating several psys on from object

23 months agoFix strict compiler error after recent UI changes
Sergey Sharybin [Fri, 21 Jul 2017 08:52:36 +0000 (10:52 +0200)]
Fix strict compiler error after recent UI changes

23 months agoFix T52136: Blender segfault (stack overflow most certainly) when converting to mesh.
Bastien Montagne [Fri, 21 Jul 2017 08:24:20 +0000 (10:24 +0200)]
Fix T52136: Blender segfault (stack overflow most certainly) when converting to mesh.

Stupid mistake in own recent refactor.

23 months agoUI/floats: Reduce our UI_PRECISION_FLOAT_MAX by one to avoid most rounding issues.
Bastien Montagne [Fri, 21 Jul 2017 08:10:36 +0000 (10:10 +0200)]
UI/floats: Reduce our UI_PRECISION_FLOAT_MAX by one to avoid most rounding issues.

The way we use it, UI_PRECISION_FLOAT_MAX is actually + 1 to get total
number of digits, and float only has 7 meaningful digits, so that define
shall be at 6.

23 months agoFix a few harmless maybe uninitialized warnings with GCC 5.4.
Brecht Van Lommel [Thu, 20 Jul 2017 21:51:15 +0000 (23:51 +0200)]
Fix a few harmless maybe uninitialized warnings with GCC 5.4.

GCC seems to detect uninitialized into function calls now, but then isn't
always smart enough to see that it is actually initialized. Disabling this
warning entirely seems a bit too much, so initialize a bit more now.

23 months agoFix T46560: 2D paint smear and soften brushes not working with alpha.
Brecht Van Lommel [Thu, 20 Jul 2017 22:16:59 +0000 (00:16 +0200)]
Fix T46560: 2D paint smear and soften brushes not working with alpha.

Interpolate rather than do alpha over mix, matching projection paint.

23 months agoFix T52135: Cycles should not keep generated/packed images in memory after render.
Brecht Van Lommel [Thu, 20 Jul 2017 20:31:46 +0000 (22:31 +0200)]
Fix T52135: Cycles should not keep generated/packed images in memory after render.

23 months agoFix potential memory leak in Cycles loading of packed/generated images.
Brecht Van Lommel [Thu, 20 Jul 2017 20:31:02 +0000 (22:31 +0200)]
Fix potential memory leak in Cycles loading of packed/generated images.

23 months agoFix T52125: principled BSDF missing with macOS OpenCL.
Brecht Van Lommel [Thu, 20 Jul 2017 13:15:43 +0000 (15:15 +0200)]
Fix T52125: principled BSDF missing with macOS OpenCL.

23 months agoCycles: fixed the SM_2x CUDA kernel build that I broke in my previous commit
Stefan Werner [Thu, 20 Jul 2017 11:28:34 +0000 (13:28 +0200)]
Cycles: fixed the SM_2x CUDA kernel build that I broke in my previous commit

23 months agoFix T52107: Color management difference when using multiple and different GPUs together
Stefan Werner [Thu, 20 Jul 2017 08:03:27 +0000 (10:03 +0200)]
Fix T52107: Color management difference when using multiple and different GPUs together

This commit unifies the flattened texture slot names for bindless and regular CUDA textures. Texture indices are now identical across all CUDA architectures, where before Fermi used different indices, which lead to problems when rendering on multi-GPU setups mixing Fermi with newer hardware.

23 months agoFix topology mirror ignoring center verts
Campbell Barton [Wed, 19 Jul 2017 17:29:08 +0000 (03:29 +1000)]
Fix topology mirror ignoring center verts

Caused select-mirror to fail with edges & faces.

23 months agoFix (unreported) seldom crash when using previews in filebrowser.
Bastien Montagne [Wed, 19 Jul 2017 10:55:05 +0000 (12:55 +0200)]
Fix (unreported) seldom crash when using previews in filebrowser.

Hopefully fix it actually, at least could not reproduce it anymore with
that changen, but Was already quite hard to trigger before.
We need a memory barrier at this allocation, otherwise it might happen
after preview gets added to done queue, so preview could end up being
freed twice, leading to crash.

23 months agoFix T52116: Blender internal BVH build crash in degenerate cases.
Brecht Van Lommel [Wed, 19 Jul 2017 09:04:04 +0000 (11:04 +0200)]
Fix T52116: Blender internal BVH build crash in degenerate cases.

23 months agoFix T52092: Crash un-grouping nodes
Campbell Barton [Wed, 19 Jul 2017 04:32:31 +0000 (14:32 +1000)]
Fix T52092: Crash un-grouping nodes

23 months agoFix T49498: continuous grab issues on macOS, particularly with gaming mouses.
Brecht Van Lommel [Tue, 18 Jul 2017 14:00:07 +0000 (16:00 +0200)]
Fix T49498: continuous grab issues on macOS, particularly with gaming mouses.

Change the implementation so it no longer takes over the mouse cursor motion
from the OS, instead only move it when warping, similar to Windows and X11.
Probably the reason it was not done this way originally is that you then get
a 500ms delay after warping, but we can use a trick to avoid that and get much
smoother mouse motion than before.

23 months agoFix T52109: Folder search won't work when selecting animation output folder.
Bastien Montagne [Tue, 18 Jul 2017 14:01:28 +0000 (16:01 +0200)]
Fix T52109: Folder search won't work when selecting animation output folder.

Text search would not run in case there was no 'type' enabled in filter
buttons. Now instead consider that no types enabled == all types

23 months agoFix bad loss of precision when manually editing values in numbuttons.
Bastien Montagne [Mon, 17 Jul 2017 16:22:12 +0000 (18:22 +0200)]
Fix bad loss of precision when manually editing values in numbuttons.

While drawing nice 'rounded' values is OK also for 'low precision'
editing like dragging and such, it's quite an issue when you type in a
precise value, validate, edit again the value, and find a rounded
version of it instead of what you typed in!

So now, *only when entering textedit of num buttons*, we always get the highest
reasonable precision for floats (and use exponential notation when
values are too low or too high, to avoid tremendous amounts of zero's).

23 months agoCleanup: use WM_event prefix for modal_tweak_exit
Campbell Barton [Tue, 18 Jul 2017 08:09:26 +0000 (18:09 +1000)]
Cleanup: use WM_event prefix for modal_tweak_exit

23 months agoWM: move WM_event_is_last_mousemove to the WM API
Campbell Barton [Tue, 18 Jul 2017 08:06:21 +0000 (18:06 +1000)]
WM: move WM_event_is_last_mousemove to the WM API

23 months agoFix T52021: Shadow catcher renders wrong when catcher object is behind transparent...
Sergey Sharybin [Tue, 18 Jul 2017 07:25:58 +0000 (09:25 +0200)]
Fix T52021: Shadow catcher renders wrong when catcher object is behind transparent object

Tweaked the path radiance summing and alpha to accommodate for possible contribution of
light by transparent surface bounces happening prior to shadow catcher intersection.

This commit will change the way how shadow catcher results looks when was behind semi
transparent object, but the old result seemed to be fully wrong: there were big artifacts
when alpha-overing the result on some actual footage.

23 months agoCycles: Remove meaningless camera ray check
Sergey Sharybin [Mon, 17 Jul 2017 10:09:13 +0000 (12:09 +0200)]
Cycles: Remove meaningless camera ray check

In branched path tracing main loop is always a camera ray, with varying
number of transparent bounces.

23 months agoCleanup: quiet picky warnings
Campbell Barton [Tue, 18 Jul 2017 02:12:40 +0000 (12:12 +1000)]
Cleanup: quiet picky warnings

23 months agoTransform: avoid possible uninitialized var
Campbell Barton [Tue, 18 Jul 2017 02:10:23 +0000 (12:10 +1000)]
Transform: avoid possible uninitialized var

23 months agoWork around small DPI resulting in blurry fonts, clamping auto DPI to minimum 96.
Brecht Van Lommel [Mon, 17 Jul 2017 12:10:57 +0000 (14:10 +0200)]
Work around small DPI resulting in blurry fonts, clamping auto DPI to minimum 96.

Since we added auto DPI on Linux, on some systems the UI draws smaller than before
due to the monitor reporting DPI values like 88. Blender font drawing gives quite
blurry results for such slightly smaller DPI, apparently because the builtin font
isn't really designed for such small font sizes. As a workaround this clamps the
auto DPI to minimum 96, since the main case we are interested in supporting is
high DPI displays anyway.

Differential Revision:

23 months agoFix T52090: clarify meaning of EnumProperty number when using ENUM_FLAG.
Brecht Van Lommel [Mon, 17 Jul 2017 11:56:51 +0000 (13:56 +0200)]
Fix T52090: clarify meaning of EnumProperty number when using ENUM_FLAG.

23 months agoFix T51971: IK non-uniform scale regression.
Brecht Van Lommel [Wed, 5 Jul 2017 21:15:12 +0000 (23:15 +0200)]
Fix T51971: IK non-uniform scale regression.

This is a different fix for the issue from D2088, preserving backwards compatibility
for IK stretching. The main problem with this patch is that this new behavior has
been there for a year, so it may break rigs created since then which rely on the new
IK stretch behavior.

Test file for various cases:

Reviewers: campbellbarton

Subscribers: maverick, pkrime

Differential Revision:

23 months agofix T52065: Joint ID was generated wrong for bone animation exports
Gaia Clary [Mon, 17 Jul 2017 14:39:33 +0000 (16:39 +0200)]
fix T52065: Joint ID was generated wrong for bone animation exports

23 months agoFix T39925: Set Origin to Geometry on a new text object moves the origin away from...
Bastien Montagne [Mon, 17 Jul 2017 10:56:12 +0000 (12:56 +0200)]
Fix T39925: Set Origin to Geometry on a new text object moves the origin away from the object

No need to take into account font size here...

23 months agoPy API doc generation: remove reference to "Blender/Python Add-on Tutorial"
Bastien Montagne [Mon, 17 Jul 2017 09:36:27 +0000 (11:36 +0200)]
Py API doc generation: remove reference to "Blender/Python Add-on Tutorial"

That one has been moved to wiki!

23 months agoBuildbot: Switch to GCC-7 for Linux build slaves
Sergey Sharybin [Mon, 17 Jul 2017 07:32:19 +0000 (09:32 +0200)]
Buildbot: Switch to GCC-7 for Linux build slaves

This is GCC version was used for Testbuild1 and Testbuild2.

23 months agoPyDoc: minor change to recent workaround
Campbell Barton [Mon, 17 Jul 2017 03:16:37 +0000 (13:16 +1000)]
PyDoc: minor change to recent workaround

- Isolate workaround in single string and link to issue.
- Quiet unused file warning (since it's an include).

23 months agoPyAPI: don't use deprecated PyModule_GetFilename
Campbell Barton [Mon, 17 Jul 2017 02:44:03 +0000 (12:44 +1000)]
PyAPI: don't use deprecated PyModule_GetFilename

Allows compiling with newer Python versions.
Also add missing decref when compiling as a py-module.

23 months agoBPY API: Fix broken ref link
Aaron Carlisle [Sun, 16 Jul 2017 22:11:58 +0000 (18:11 -0400)]
BPY API: Fix broken ref link

23 months agoBPY API: Fix usless links leading to compile errors
Aaron Carlisle [Sun, 16 Jul 2017 21:05:29 +0000 (17:05 -0400)]
BPY API: Fix usless links leading to compile errors

See for more information

23 months agoFix T52058: Jumping to keyframe causes Blender to freeze indefinitely
Joshua Leung [Sun, 16 Jul 2017 14:24:45 +0000 (02:24 +1200)]
Fix T52058: Jumping to keyframe causes Blender to freeze indefinitely

Revise the logic here to be more robust when keyframes with
similar-but-different frame numbers (e.g. 70.000000 vs 70.000008)
would cause the search to go into an infinite loop, as the same
keyframe was repeatedly found (and skipped).

23 months agoFix T52034: cell noise renders different.
Brecht Van Lommel [Thu, 13 Jul 2017 10:47:41 +0000 (12:47 +0200)]
Fix T52034: cell noise renders different.

Tweak the bias from the previous fix a bit to be more backwards compatible in
some scene. In the end which way we round is quite arbitrary, but keeping the
case where the texture coordinate is exactly zero the same seems better.

23 months agoFix T52066: Grid Mesh UV's aren't correct
Campbell Barton [Sat, 15 Jul 2017 14:02:09 +0000 (00:02 +1000)]
Fix T52066: Grid Mesh UV's aren't correct

23 months agoSnap System: Fixed index of objects used to make `snap to volume`
mano-wii [Fri, 14 Jul 2017 20:25:16 +0000 (17:25 -0300)]
Snap System: Fixed index of objects used to make `snap to volume`

*note: make a complete test scene

23 months agoSnap System: Use function that does the interactor instead of Macro
mano-wii [Fri, 14 Jul 2017 19:52:31 +0000 (16:52 -0300)]
Snap System: Use function that does the interactor instead of Macro

Macro makes debugging difficult. And in that case I was escaping from the style used in Blender

23 months agoSnap System: missing change
mano-wii [Fri, 14 Jul 2017 14:20:28 +0000 (11:20 -0300)]
Snap System: missing change

23 months agoSnap System: fix rename `ob` to `obj`
mano-wii [Fri, 14 Jul 2017 13:41:47 +0000 (10:41 -0300)]
Snap System: fix rename `ob` to `obj`

This would bring problems with dupli objects

23 months agoFix unit test error on Windows
Sybren A. Stüvel [Fri, 14 Jul 2017 07:53:20 +0000 (09:53 +0200)]
Fix unit test error on Windows

23 months agoSnap System: Replace creation and destruction of the object list by a Macro
mano-wii [Thu, 13 Jul 2017 22:39:17 +0000 (19:39 -0300)]
Snap System: Replace creation and destruction of the object list by a Macro

The macro got a little strange, but it's better than using the MEM_mallocN inside a loop, or repeat the lines

23 months agoCleanup: Fix MSVC warning message
Antonio Vazquez [Thu, 13 Jul 2017 15:54:24 +0000 (17:54 +0200)]
Cleanup: Fix MSVC warning message

The const key is required by compiler to avoid warning

23 months agoSequence editor: Renamed "Override" to "Overwrite" in "Set Selected Strip Proxies"
Sybren A. Stüvel [Thu, 13 Jul 2017 14:26:19 +0000 (16:26 +0200)]
Sequence editor: Renamed "Override" to "Overwrite" in "Set Selected Strip Proxies"

The option has always (un)set the "Overwrite" flag on all strips. Calling
it "Override" seems misleading, since even when unchecking it, it overrides
whatever was set on the selected strips. It really just (un)sets the
"Overwrite" flag, and now it is also labeled as such.

23 months agoFix texture paint crash when painting onto stencil
Campbell Barton [Thu, 13 Jul 2017 10:48:55 +0000 (20:48 +1000)]
Fix texture paint crash when painting onto stencil

23 months agoRevert T44320: UV island overlap considered linked
Campbell Barton [Thu, 13 Jul 2017 04:32:04 +0000 (14:32 +1000)]
Revert T44320: UV island overlap considered linked

In the reported example it seemed reasonable to apply this change.
But it causes a much more common case (selecting projections)
to be split into 2x islands.

Resolves T50970

23 months agoFix T51100: Vertex pick fails after extrude
Campbell Barton [Thu, 13 Jul 2017 04:13:59 +0000 (14:13 +1000)]
Fix T51100: Vertex pick fails after extrude

23 months agoSnap System: remove unused function
mano-wii [Wed, 12 Jul 2017 23:43:28 +0000 (20:43 -0300)]
Snap System: remove unused function

23 months agoBMesh: move safe loop-normal-calc to own function
Campbell Barton [Wed, 12 Jul 2017 13:06:59 +0000 (23:06 +1000)]
BMesh: move safe loop-normal-calc to own function

This makes sense when we want to avoid float precision error
for near co-linear edges. OTOH, this is an arbitrary decision,
so keep functions separate.

23 months agoCycles: Enable SSS from Principled BSDF only when actually in use
Mai Lavelle [Wed, 12 Jul 2017 08:36:46 +0000 (04:36 -0400)]
Cycles: Enable SSS from Principled BSDF only when actually in use

This gives speed up for the split kernel in scenes using the principled BSDF
but without subsurface scattering.

23 months agoCleanup: unused vars
Campbell Barton [Wed, 12 Jul 2017 03:54:20 +0000 (13:54 +1000)]
Cleanup: unused vars

23 months agoCycles: Fix comparison in principled BSDF
Mai Lavelle [Wed, 12 Jul 2017 03:41:22 +0000 (23:41 -0400)]
Cycles: Fix comparison in principled BSDF

Could have lead to black pixels.

23 months agoFix T52027: OSL getattribute() crash, when optimizer calls it before rendering.
Brecht Van Lommel [Tue, 11 Jul 2017 20:39:51 +0000 (22:39 +0200)]
Fix T52027: OSL getattribute() crash, when optimizer calls it before rendering.

23 months agoFix [T51595]: Snap to edge does not work with high zoom level
mano-wii [Tue, 11 Jul 2017 20:03:49 +0000 (17:03 -0300)]
Fix [T51595]: Snap to edge does not work with high zoom level

That problem occurs because of the imprecision of `short int` (16 bits).
The 3d coordinates are converted to 2d, and when they are off the screen, their values can exceed 32767! (max short int value)

One quick solution is to use float instead of short

The snap code is actually a little tricky. I want to make some arithmetic simplifications in it

23 months agoStyle (remove characters that caused "a binary file")
mano-wii [Tue, 11 Jul 2017 17:22:07 +0000 (14:22 -0300)]
Style (remove characters that caused "a binary file")

23 months agoSnap System: Separate raycast functions from nearest2d functions
mano-wii [Tue, 11 Jul 2017 16:47:28 +0000 (13:47 -0300)]
Snap System: Separate raycast functions from nearest2d functions

The only similarity between these functions is that both serve to snap.
However their codes are totally different from one another.
So by separating these functions, it:
- removes the need to put several conditions;
- simplifies and
- optimizes the code

23 months agoFix T52022 Alembic Inherits transform not taken into account
Sybren A. Stüvel [Tue, 11 Jul 2017 14:16:56 +0000 (16:16 +0200)]
Fix T52022 Alembic Inherits transform not taken into account

Alembic's "inherits transform" flag wasn't taken into account when
constructing the parent object relations.

23 months agoA bunch of fixes for Pose Library while checking on T51607
Joshua Leung [Tue, 11 Jul 2017 13:33:08 +0000 (01:33 +1200)]
A bunch of fixes for Pose Library while checking on T51607

* Display a warning above the pose list if the pose library is in an invalid
  state (i.e. when it has keyframes but no pose-markers associated with those
  keyframes). This warning prompts users to run the "Sanitize Pose Library Action"
  operator, which should fix up such issues.

* "Sanitize" operator now creates unique names for each newly create pose
  marker it generates, including the frame on which it found the pose

23 months agoFix: Accidentally left debug print in last commit
Joshua Leung [Tue, 11 Jul 2017 11:39:35 +0000 (23:39 +1200)]
Fix: Accidentally left debug print in last commit

23 months agoFix T52009: F-Curve "Stepped interpolation" modifier "restrict frame-range" IN and...
Joshua Leung [Tue, 11 Jul 2017 06:07:11 +0000 (18:07 +1200)]
Fix T52009: F-Curve "Stepped interpolation" modifier "restrict frame-range" IN and OUT parameters cannot be edited

The problem here was that the "frame_start" and "frame_end" RNA properties of
the Stepped FModifier were shadowing/overriding "frame_start" and "frame_end"
properties of the base FModifier. As a result, when the range() callback
for the In/Out parameters (defined as part of the base FModifier) checked
it's start/end properties, they were always still zero, meaning that the
acceptable range for the In/Out parameters was 0 -> 0 = 0.

If you've got old files with this problem, you'll need to manually click on
the frame_start/end properties to flush out the old values. It's probably
not worth the effort of applying a version patch for this (given that this
modifier is not one of the most often used ones AFAIK).

23 months agoFix T51879: NLA Influence can not be autokeyed
Joshua Leung [Tue, 4 Jul 2017 03:35:27 +0000 (15:35 +1200)]
Fix T51879: NLA Influence can not be autokeyed

As with Strip Time, the updates here would get triggered before the
autokeying had a chance to record the unkeyed values, making it impossible
to autokey.

23 months agoCycles: Disable OpenCL clFlush workarounds
Sergey Sharybin [Tue, 11 Jul 2017 10:16:58 +0000 (12:16 +0200)]
Cycles: Disable OpenCL clFlush workarounds

This is something which was reported to work fine by Mai, Benjamin and
confirmed by myself. Disabling this workaround gains us some speedup:

                      Before           Now
bmw27                04:28.42        04:07.79
classroom            09:26.48        08:54.53
fishy_cat            08:44.01        08:18.70
koro                 09:17.98        08:57.18
pavillon_barcelone   12:26.64        11:52.81

Test environment is:
- Ubuntu 16.04, with all updates installed
- AMD RX 480 GPU
- amdgpu pro driver version 17.10-450821

23 months agoTheme Flatty Light
Pablo Vazquez [Tue, 11 Jul 2017 09:17:36 +0000 (11:17 +0200)]
Theme Flatty Light

Color GraphEditor tabs, brighter 3D viewport gradient

23 months agoFix memory leak caused by node clipboard
Sergey Sharybin [Tue, 11 Jul 2017 09:06:36 +0000 (11:06 +0200)]
Fix memory leak caused by node clipboard

The issue was caused by combination of following factors:

- Clipboard cleanup function will pass node tree as NULL to node free

  This is fine on it's own, we don't have tree in clipboard.

- Node free function will call node storage cleanup only when there is
  a non-NULL node tree.

  This is somewhat weird, because storage cleanup does not take node
  tree as argument.

So the solution here: move node storage cleanup outside of check that
node tree is not NULL.

23 months agoOpensubdiv: Fix compilation error with older Opensubdiv versions
Sergey Sharybin [Tue, 11 Jul 2017 09:05:21 +0000 (11:05 +0200)]
Opensubdiv: Fix compilation error with older Opensubdiv versions