3 years agoMerge branch 'master' into blender2.8
Julian Eisel [Wed, 15 Mar 2017 19:28:12 +0000 (20:28 +0100)]
Merge branch 'master' into blender2.8

Needed for compile fix.

3 years agoMissed BGE in recent commit
Campbell Barton [Wed, 15 Mar 2017 19:28:03 +0000 (06:28 +1100)]
Missed BGE in recent commit

3 years agoOutliner: Change default display mode to "Active Layer"
Julian Eisel [Wed, 15 Mar 2017 19:03:35 +0000 (20:03 +0100)]
Outliner: Change default display mode to "Active Layer"

We concluded this is going to be the display mode users will need to work
with the most, so makes sense to make it the default one.
Also, if the opened file only has one collection in the active render
layer, we expand it (almost empty list would be misleading).

What I had to do to make the expanding work is a bit ugly, but didn't
find a better way. During do_version we don't have access to the
TreeElement instances, and including ED_outliner.h to share code here
should be avoided too.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 15 Mar 2017 17:53:07 +0000 (04:53 +1100)]
Merge branch 'master' into blender2.8

3 years agoLoad user-preferences before startup file
Campbell Barton [Wed, 15 Mar 2017 16:54:58 +0000 (03:54 +1100)]
Load user-preferences before startup file

Internal change needed for template support.
Loading the user preferences first so it's possible
for preferences to control startup behavior.

In general it's useful to load preferences before data-files,
so we know security settings for eg.

3 years agoOpenGL: remove non-GLSL option from basic shader
Mike Erwin [Wed, 15 Mar 2017 15:52:54 +0000 (11:52 -0400)]
OpenGL: remove non-GLSL option from basic shader

This code path was only used when Blender was launched with --enable-legacy-basic-shader at the command line.

Part of general OpenGL upgrade (T49165)

3 years agoFix "search for unknown operator 'WM_OT_window_duplicate'" warning
Julian Eisel [Wed, 15 Mar 2017 15:03:01 +0000 (16:03 +0100)]
Fix "search for unknown operator 'WM_OT_window_duplicate'" warning

Mistake in rB7bc76f8a3c1416.

3 years agoCycles: Allow rendering a range of resumable chunks
Sergey Sharybin [Wed, 15 Mar 2017 14:52:27 +0000 (15:52 +0100)]
Cycles: Allow rendering a range of resumable chunks

The range is controlled using the following command line arguments:


Those are 1-based index of range for rendering.

3 years agoCycles: Use argument parser for resumable render feature
Sergey Sharybin [Wed, 15 Mar 2017 14:36:40 +0000 (15:36 +0100)]
Cycles: Use argument parser for resumable render feature

Currently there is no functional changes, but we will be adding
couple more of options here soon.

3 years agoFix bug on Blender version string
Dalai Felinto [Wed, 15 Mar 2017 14:42:01 +0000 (15:42 +0100)]
Fix bug on Blender version string

Reported by Pablo Vazquez (venomgfx) over irc.

3 years agoImmediate Mode: Fix text color in iuage info line
Sergey Sharybin [Wed, 15 Mar 2017 14:04:41 +0000 (15:04 +0100)]
Immediate Mode: Fix text color in iuage info line

3 years agoBlender 2.8: Always prefer Occlusion Queries when using AUTO selection mode
Sergey Sharybin [Wed, 15 Mar 2017 13:55:46 +0000 (14:55 +0100)]
Blender 2.8: Always prefer Occlusion Queries when using AUTO selection mode

GL_SELECT is really slow in this branch and will be removed.

For now we simply change AUTO behavior to avoid possible conflicts with merges
and upcoming color-id-based selection.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Wed, 15 Mar 2017 13:19:53 +0000 (14:19 +0100)]
Merge branch 'master' into blender2.8

3 years agoDe-duplictae fix for lasso with Dalai
Sergey Sharybin [Wed, 15 Mar 2017 13:17:52 +0000 (14:17 +0100)]
De-duplictae fix for lasso with Dalai

Git silently merged our both fixes together. Sure thing it's double safe this way, but cmon.

3 years agoLayers: handle doversion naming differently
Dalai Felinto [Wed, 15 Mar 2017 13:12:38 +0000 (14:12 +0100)]
Layers: handle doversion naming differently

Talked with Pablo Vazquez (venomgfx) and Julian Eisel (Severin), and we came up with this solution instead.

Basically, if the file has only one layer, it is converted to a collection named "Default Collection". Otherwise we name the collections: "Collection 1 [converted from 2.75]"

3 years agoMove Blender version string handling to its own function
Dalai Felinto [Wed, 15 Mar 2017 13:10:20 +0000 (14:10 +0100)]
Move Blender version string handling to its own function

Planning to use this util function in 2.8 for doversioning (to communicate converted layers)

3 years agoCorrect assert failure in debug mode with lasso select
Sergey Sharybin [Wed, 15 Mar 2017 13:01:30 +0000 (14:01 +0100)]
Correct assert failure in debug mode with lasso select

Just do early output and don't bother with any GLSL program bind when
there is not enough points of lasso to draw.

This could have happened at the very beginning of the stroke.

3 years agoRemove commented out code from transform_snap.c
Dalai Felinto [Wed, 15 Mar 2017 11:17:29 +0000 (12:17 +0100)]
Remove commented out code from transform_snap.c

Code was commented out in 2012 and it was not working even then. So it makes for an impossible conversion to the new gawain API.

3 years agoRemove commented out code from reeb.c
Dalai Felinto [Wed, 15 Mar 2017 11:09:14 +0000 (12:09 +0100)]
Remove commented out code from reeb.c

Code was commented out in 2009

3 years agoRemove commented out code from pbvh.c
Dalai Felinto [Wed, 15 Mar 2017 11:06:46 +0000 (12:06 +0100)]
Remove commented out code from pbvh.c

Code was commented out in 2009

3 years agoRemove commented out code from editarmature_sketch.c
Dalai Felinto [Wed, 15 Mar 2017 10:55:32 +0000 (11:55 +0100)]
Remove commented out code from editarmature_sketch.c

Code was commented out in 2010

3 years agoImmediate Mode: update drawnode.c commented out debug code
Dalai Felinto [Wed, 15 Mar 2017 10:51:06 +0000 (11:51 +0100)]
Immediate Mode: update drawnode.c commented out debug code

It works fine if you uncomment it, it shows a bigger circle around the re-route element, with a different color based on the selection state

3 years agoFix crash on node editor when using lasso to remove nodes connections
Dalai Felinto [Wed, 15 Mar 2017 10:41:56 +0000 (11:41 +0100)]
Fix crash on node editor when using lasso to remove nodes connections

3 years agoRemove unused code from drawnode.c
Dalai Felinto [Wed, 15 Mar 2017 10:26:54 +0000 (11:26 +0100)]
Remove unused code from drawnode.c

The code in question was marked as /* not used in 2.5x yet */.

3 years agoImmediate Mode: remove commented out code from drawgpencil.c
Dalai Felinto [Wed, 15 Mar 2017 10:15:51 +0000 (11:15 +0100)]
Immediate Mode: remove commented out code from drawgpencil.c

Some of this was "tagged" for removal by Dec 2016.

3 years agoUse FTOCHAR rather than CLAMP of uchar output
Sergey Sharybin [Wed, 15 Mar 2017 12:48:47 +0000 (13:48 +0100)]
Use FTOCHAR rather than CLAMP of uchar output

This makes no sense to clamp after value was assigned to uchar already.
Proper way to do so is to use FTOCHAR.

3 years agoOpenGL: Converted gpu_compositing.c to use batches.
Clément Foucault [Wed, 15 Mar 2017 12:17:08 +0000 (13:17 +0100)]
OpenGL: Converted gpu_compositing.c to use batches.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Wed, 15 Mar 2017 11:48:48 +0000 (12:48 +0100)]
Merge branch 'master' into blender2.8

3 years agoFix strict compiler warning in the previous commit
Sergey Sharybin [Wed, 15 Mar 2017 11:48:07 +0000 (12:48 +0100)]
Fix strict compiler warning in the previous commit

3 years agoFix T50938: Cache not being reset when changing simulation settings with new depsgraph
Sergey Sharybin [Wed, 15 Mar 2017 10:10:42 +0000 (11:10 +0100)]
Fix T50938: Cache not being reset when changing simulation settings with new depsgraph

The thing i'm really starting to hate is the requirement to specify both
operation code and node type. Seems to be duplicated enums without real
need for that.

3 years agoBGE: Fix blenderplayer stub.
Porteries Tristan [Tue, 14 Mar 2017 21:15:50 +0000 (21:15 +0000)]
BGE: Fix blenderplayer stub.

Add dummy definition of WM_operator_is_repeat.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 14 Mar 2017 19:04:52 +0000 (06:04 +1100)]
Merge branch 'master' into blender2.8

3 years agoWM: free operators when repeating
Campbell Barton [Tue, 14 Mar 2017 18:16:07 +0000 (05:16 +1100)]
WM: free operators when repeating

Needed since the active operator isn't ensured to be the last.

3 years agofix D2552: Collada - Follow up change to complete the fix in rBda6cd7762810 (use...
Gaia Clary [Tue, 14 Mar 2017 18:31:15 +0000 (19:31 +0100)]
fix D2552: Collada - Follow up change to complete the fix in rBda6cd7762810 (use unique id for bones with same name in different armatures)

3 years agoCollada simplify: avoid duplicate negation in boolean
Gaia Clary [Tue, 14 Mar 2017 14:07:31 +0000 (15:07 +0100)]
Collada simplify: avoid duplicate negation in boolean

3 years agoWM: add Operator.is_repeat() check for C & Py
Campbell Barton [Tue, 14 Mar 2017 16:43:44 +0000 (03:43 +1100)]
WM: add Operator.is_repeat() check for C & Py

This addresses an issue raised by D2453 -
that there was no way to check if operators are run
multiple times in a row.

Actions are still ignored that don't cause an UNDO event.

3 years agoWM: store operators with undo flag
Campbell Barton [Tue, 14 Mar 2017 15:37:33 +0000 (02:37 +1100)]
WM: store operators with undo flag

This is needed so we can tell if operators are executed repeatedly.

3 years agoUpdate path_menu for recent API change
Campbell Barton [Tue, 14 Mar 2017 15:59:32 +0000 (02:59 +1100)]
Update path_menu for recent API change

3 years agoCycles: Cleanup, indentation
Sergey Sharybin [Tue, 14 Mar 2017 15:54:16 +0000 (16:54 +0100)]
Cycles: Cleanup, indentation

3 years agoFix T50926: python crashes with path containing utf8 characters.
Bastien Montagne [Tue, 14 Mar 2017 15:04:03 +0000 (16:04 +0100)]
Fix T50926: python crashes with path containing utf8 characters.

Default text encoding is platform-dependent in python, and windows
usually do not use utf-8 as default...

3 years agofix D2552: Collada - use unique id for bones with same name but in different armature...
Jon Allee [Tue, 14 Mar 2017 13:17:04 +0000 (14:17 +0100)]
fix D2552: Collada - use unique id for bones with same name but in different armatures. Co-authored-by: Gaia <>

3 years agoCLNor: rework threaded computation.
Bastien Montagne [Tue, 14 Mar 2017 10:48:11 +0000 (11:48 +0100)]
CLNor: rework threaded computation.

Was using some threaded queue on top of task pool, tssk...

Now using properly task pool directly to crunch chunks of smooth fans.

No noticable changes in speed.

Tried to completely get rid of the 'no threading with few loops' code,
but even just creating/freeing the task pool, without actually pushing
any task, is enough to make code 50% slower in worst case scenario (i.e.
few thousands of simple cube objects).

3 years agoCLNor code: use averaged debug timing.
Bastien Montagne [Mon, 13 Mar 2017 15:44:58 +0000 (16:44 +0100)]
CLNor code: use averaged debug timing.

3 years agoFix T50876: Cycles Crash - Cycles crashes before sampling when certain meshes have...
Bastien Montagne [Mon, 13 Mar 2017 15:13:47 +0000 (16:13 +0100)]
Fix T50876: Cycles Crash - Cycles crashes before sampling when certain meshes have autosmooth enabled.

The root of the issue was in custom normal code, so far it assumed that
we could only have one cyclic smooth fan around each vertex, which is...
blatantly wrong (again, the two cones sharing same vertex tip e.g.).

This required a rather deep change in how smooth fans/clnor spaces are processed,
took me some time to find a 'good' solution.

Note that new code is slightly slower than previous one (maybe about 5%),
not much to be done here, am afraid.

Tested against all older report files I could find, seems OK.

3 years agoFix own mistake in recent 'edge split' refactor.
Bastien Montagne [Mon, 13 Mar 2017 15:11:48 +0000 (16:11 +0100)]
Fix own mistake in recent 'edge split' refactor.

We do can have some vertices to split, while not having any edge (think
about two cones sharing the same tip vertex e.g.).

3 years agoCycles: Try to avoid infinite loops by catching invalid ray states
Mai Lavelle [Sat, 11 Mar 2017 12:03:17 +0000 (07:03 -0500)]
Cycles: Try to avoid infinite loops by catching invalid ray states

3 years agoWM: Option to load startup w/o closing the splash
Campbell Barton [Tue, 14 Mar 2017 10:05:00 +0000 (21:05 +1100)]
WM: Option to load startup w/o closing the splash

Not user visible, needed for switching templates.

3 years agoPyAPI: extend Menu.path_menu
Campbell Barton [Tue, 14 Mar 2017 09:58:16 +0000 (20:58 +1100)]
PyAPI: extend Menu.path_menu

- Add optional 'display_name' callback
  so callers can construct own names.
- Add optional 'prop_filepath' argument
  (for operators that don't use "filepath").
- Add doc-string.
- Use keyword only arguments.

3 years agoCMake: add missing headers
Campbell Barton [Tue, 14 Mar 2017 07:47:26 +0000 (18:47 +1100)]
CMake: add missing headers

3 years agoCleanup: warnings
Campbell Barton [Tue, 14 Mar 2017 07:40:23 +0000 (18:40 +1100)]
Cleanup: warnings

3 years agoFix T50932: depth picking w/ pose-bone constraints
Campbell Barton [Tue, 14 Mar 2017 07:01:04 +0000 (18:01 +1100)]
Fix T50932: depth picking w/ pose-bone constraints

3 years agofix warnings from previous commit
Mike Erwin [Tue, 14 Mar 2017 05:41:09 +0000 (01:41 -0400)]
fix warnings from previous commit

Batch struct initializer needed more {{braces}}

3 years agoGawain: multiple VertexBuffers per Batch
Mike Erwin [Tue, 14 Mar 2017 05:38:42 +0000 (01:38 -0400)]
Gawain: multiple VertexBuffers per Batch

So we can store (for example) vertex positions in one buffer and normals + colors in another buffer. Not super exciting right now, but very useful once we start changing some attribute values.

Supports future work by Clément et al. Only tested with one VBO per Batch since that's all our current code uses.

3 years agoOpenGL: remove deprecated calls
Mike Erwin [Tue, 14 Mar 2017 04:44:38 +0000 (00:44 -0400)]
OpenGL: remove deprecated calls


and glEnable/Disable for

All of these were just setting default values, so I don't expect any visible change.

Part of T49165 (general OpenGL upgrade)

3 years agofix "Modern Viewport" regression
Mike Erwin [Mon, 13 Mar 2017 20:08:55 +0000 (16:08 -0400)]
fix "Modern Viewport" regression

GPU_viewport_bind & unbind should be called as pairs. A recent commit -- 3b91989a093aef874b601efcffd247cf61e73bad -- called unbind only for some code paths, overflowing OpenGL's matrix & attrib stacks.

3 years agoOpenGL: remove packed imm mode functions from Python API
Mike Erwin [Mon, 13 Mar 2017 18:07:32 +0000 (14:07 -0400)]
OpenGL: remove packed imm mode functions from Python API

These are from the ARB_vertex_type_2_10_10_10_rev extension that became part of OpenGL 3.3.

So they are new, but only exist for compatibility with immediate mode, which is old.

Related to T49165 (general OpenGL upgrade)

3 years agoOpenGL: remove GLU functions from Python API
Mike Erwin [Mon, 13 Mar 2017 15:07:48 +0000 (11:07 -0400)]
OpenGL: remove GLU functions from Python API

Part of T49042

3 years agoOutliner/layer: fix users trying to drop a collection into itself (recursion hell)
Dalai Felinto [Mon, 13 Mar 2017 16:35:58 +0000 (17:35 +0100)]
Outliner/layer: fix users trying to drop a collection into itself (recursion hell)

3 years agoCycles: Cleanup, wipe obviously outdated parts of split kernel comments
Sergey Sharybin [Mon, 13 Mar 2017 16:15:40 +0000 (17:15 +0100)]
Cycles: Cleanup, wipe obviously outdated parts of split kernel comments

3 years agofix msvc warnings about unknown opencl pragmas
lazydodo [Mon, 13 Mar 2017 16:07:36 +0000 (10:07 -0600)]
fix msvc warnings about unknown opencl pragmas

3 years agoCycles: Add missing header in the file
Sergey Sharybin [Mon, 13 Mar 2017 15:59:09 +0000 (16:59 +0100)]
Cycles: Add missing header in the file

3 years agoFix T50920: Adds missing edges on return of bisect operator
Germano Cavalcante [Mon, 13 Mar 2017 12:22:11 +0000 (09:22 -0300)]
Fix T50920: Adds missing edges on return of bisect operator

3 years agoMode Engines: Fix MSVC compilation error.
Clément Foucault [Mon, 13 Mar 2017 10:39:41 +0000 (11:39 +0100)]
Mode Engines: Fix MSVC compilation error.

3 years agoFix T50925: Add AO approximation to split kernel
Hristo Gueorguiev [Sun, 12 Mar 2017 21:41:11 +0000 (22:41 +0100)]
Fix T50925: Add AO approximation to split kernel

3 years agoNew Window Operator (to replace Duplicate Window)
Dalai Felinto [Mon, 13 Mar 2017 09:43:49 +0000 (10:43 +0100)]
New Window Operator (to replace Duplicate Window)

A user doesn't want to necessarily create a new Screen only because she
wants a new window.

This patch allows the user to pick the screen to use for the new Window.
If the screen picked is the active one, it duplicates it (as the old
behaviour in Blender).

Patch with contributions and fixes by Julian Eisel (Severin)

Subscribers: venomgfx

Differential Revision:

3 years agoCycles: Make MESA compiler more happy
Sergey Sharybin [Mon, 13 Mar 2017 08:55:18 +0000 (09:55 +0100)]
Cycles: Make MESA compiler more happy

While this compiler is not officially supported yet, getting it to work is
a nice thing because more and more AMD cards will fall under MESA driver.

It's also nice to use explicit comparison with NULL, which makes it more
clear whether variable is a boolean or pointer. Even Rust enforces this!

Patch by Ian Bruce with own modifications.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 12 Mar 2017 20:51:10 +0000 (07:51 +1100)]
Merge branch 'master' into blender2.8

3 years agoUI: expose mesh conversion in apply menu
Campbell Barton [Sun, 12 Mar 2017 20:28:37 +0000 (07:28 +1100)]
UI: expose mesh conversion in apply menu

The mesh convert operator can 'freeze' a mesh
(WYSIWYG, modifiers, shape keys etc).
However its not very obvious that the way to perform this
operation is to convert a mesh to a mesh.

Expose this as 'Visual Geometry to Mesh' in the 'Apply' menu,
since this is where users might expect to see it.

3 years agoComments: minor clarification
Campbell Barton [Sun, 12 Mar 2017 20:12:28 +0000 (07:12 +1100)]
Comments: minor clarification

3 years agoClay Engine: Fix missing grid
Clément Foucault [Sun, 12 Mar 2017 20:16:19 +0000 (21:16 +0100)]
Clay Engine: Fix missing grid

3 years agoClay Engine: Mode engine templates.
Clément Foucault [Sun, 12 Mar 2017 20:16:03 +0000 (21:16 +0100)]
Clay Engine: Mode engine templates.

Standard Engine layout easy to extend.

Note that most of the work will also happen in mesh_render.c to create geometry batches.

3 years agofix T50923: Inconsistent default values and wrong order of parameters in api call
Gaia Clary [Sun, 12 Mar 2017 19:31:34 +0000 (20:31 +0100)]
fix T50923: Inconsistent default values and wrong order of parameters in api call

3 years agoFix T50930 Typo in 'jpeg2k_codec' description
Aaron Carlisle [Sun, 12 Mar 2017 17:55:43 +0000 (13:55 -0400)]
Fix T50930 Typo in 'jpeg2k_codec' description

3 years agoBMesh: rename cryptic functions
Campbell Barton [Sun, 12 Mar 2017 16:45:15 +0000 (03:45 +1100)]
BMesh: rename cryptic functions

Use expanded names for bmesh primitive operations
(urmv jvke semv jfke).

Use 'bmesh_kernel_' prefix,
these functions aren't intended for wide use so favor readability.

Remove BM_face_vert_separate,
it wasn't used and only skipped step of finding correct loop of face.

3 years agoCleanup: style
Campbell Barton [Sun, 12 Mar 2017 17:25:21 +0000 (04:25 +1100)]
Cleanup: style

3 years agoUI: Always open enum-search popups with empty search string
Julian Eisel [Sun, 12 Mar 2017 17:14:43 +0000 (18:14 +0100)]
UI: Always open enum-search popups with empty search string

It might be useful to keep the search string stored in some cases, but
in most it's not useful but confusing. Especially if the string is taken
from a menu showing a different enum.

3 years agoFix T50788: blender startup crash on macOS with some types of volumes available.
Brecht Van Lommel [Sun, 12 Mar 2017 14:48:44 +0000 (15:48 +0100)]
Fix T50788: blender startup crash on macOS with some types of volumes available.

3 years agoFix T50628: gray out cycles device menu when no device configured only for GPU Compute.
Brecht Van Lommel [Sun, 12 Mar 2017 05:45:29 +0000 (06:45 +0100)]
Fix T50628: gray out cycles device menu when no device configured only for GPU Compute.

3 years agoOpenGL: Convert drawobject.c (cont)
Clément Foucault [Sat, 11 Mar 2017 20:09:15 +0000 (21:09 +0100)]
OpenGL: Convert drawobject.c (cont)

All remaining 28 deprecated calls are derivedMesh related.

3 years agoFix icon alignment for pie buttons
raa [Sat, 11 Mar 2017 19:34:09 +0000 (22:34 +0300)]
Fix icon alignment for pie buttons

3 years agoOpenGL: Convert drawobject.c (cont)
Clément Foucault [Sat, 11 Mar 2017 16:13:49 +0000 (17:13 +0100)]
OpenGL: Convert drawobject.c (cont)

Edit Particle mode.

3 years agoOpenGL: Convert drawobject.c (cont)
Clément Foucault [Sat, 11 Mar 2017 15:10:03 +0000 (16:10 +0100)]
OpenGL: Convert drawobject.c (cont)

Particle system (not edit mode)

3 years agoOpenGL: Convert drawobject.c (cont)
Clément Foucault [Fri, 10 Mar 2017 17:55:52 +0000 (18:55 +0100)]
OpenGL: Convert drawobject.c (cont)

This commit have a serrious perf issue when drawing nurbs (+5 times slower) but it gets rid of deprecated functions.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sat, 11 Mar 2017 16:00:06 +0000 (03:00 +1100)]
Merge branch 'master' into blender2.8

3 years agoCleanup: code style & cmake
Campbell Barton [Sat, 11 Mar 2017 15:40:04 +0000 (02:40 +1100)]
Cleanup: code style & cmake

3 years agoAdd support for Objects in Drive variable `Rotational Difference`
Germano Cavalcante [Sat, 11 Mar 2017 13:43:23 +0000 (10:43 -0300)]
Add support for Objects in Drive variable `Rotational Difference`

Thus it is according to the Manual

3 years agoBMesh: Fix BM_face_loop_separate_multi
Campbell Barton [Sat, 11 Mar 2017 12:21:37 +0000 (23:21 +1100)]
BMesh: Fix BM_face_loop_separate_multi

When the loop region passed in had no loops to edge-split from,
it was assumed nothing needed to be done.

This ignored the case where loops share a vertex
without any shared edges.

Now BM_face_loop_separate_multi behaves like BM_face_loop_separate.

Fixed error where faces remained connected by verts in BM_mesh_separate_faces.

3 years agoCorrect recent bmesh separate addition
Campbell Barton [Sat, 11 Mar 2017 12:19:49 +0000 (23:19 +1100)]
Correct recent bmesh separate addition

- Was setting flag incorrectly to avoid re-use.
- Check edge has loops before accessing.

3 years agoFix T50888: Numeric overflow in split kernel state buffer size calculation
Mai Lavelle [Sat, 11 Mar 2017 10:23:11 +0000 (05:23 -0500)]
Fix T50888: Numeric overflow in split kernel state buffer size calculation

Overflow led to the state buffer being too small and the split kernel to
get stuck doing nothing forever.

3 years agoBMesh: add BM_mesh_separate_faces
Campbell Barton [Sat, 11 Mar 2017 09:39:28 +0000 (20:39 +1100)]
BMesh: add BM_mesh_separate_faces

Fast-path for bmesh split operator which duplicates and deletes.
Use when only separating faces, currently used by the intersect tool.

3 years agoMakefile: set tab width=4
Campbell Barton [Sat, 11 Mar 2017 06:14:39 +0000 (17:14 +1100)]
Makefile: set tab width=4

3 years agoFix text and icon positioning issue on high DPI, after recent changes in 32c5f3d.
Brecht Van Lommel [Sat, 11 Mar 2017 03:46:27 +0000 (04:46 +0100)]
Fix text and icon positioning issue on high DPI, after recent changes in 32c5f3d.

3 years agoFix OpenCL warnings about doubles on some platforms.
Brecht Van Lommel [Fri, 10 Mar 2017 23:55:23 +0000 (00:55 +0100)]
Fix OpenCL warnings about doubles on some platforms.

3 years agoBreakdowner - Constrain Transform and Axis
Joshua Leung [Fri, 10 Mar 2017 22:52:58 +0000 (11:52 +1300)]
Breakdowner - Constrain Transform and Axis

This commit adds new features to the breakdowner, giving animators more
control over what gets interpolated by the breakdowner. Specifically:

   "Just as G R S let you move rotate scale, and then X Y Z let you do that
   in one desired axis, when using the Breakdower it would be great to be
   able to add GRS and XYZ to constrain what transform / axis is being

As requested here:

* In addition to G/R/S, there's also B (Bendy Bone settings and C (custom properties)
* Pressing G/R/S/B/C or X/Y/Z again will turn these constraints off again

3 years agoCleanup: Add comment about use of ID pointer in TreeStoreElem
Julian Eisel [Fri, 10 Mar 2017 22:29:32 +0000 (23:29 +0100)]
Cleanup: Add comment about use of ID pointer in TreeStoreElem

3 years agoFix unwanted expanding/collapsing of collections using drag & drop
Julian Eisel [Fri, 10 Mar 2017 22:11:58 +0000 (23:11 +0100)]
Fix unwanted expanding/collapsing of collections using drag & drop

Turned out to be a quite easy fix. I thought the issue was that we
couldn't identify the TreeStoreElem when (re)creating its TreeElement item
correctly, because for non-ID elements that would be index dependent (=
bad for drag & drop). Turns out that we're actually allowed to store
custom data within the TreeStoreElem, the thing is just that it gets
stored as ID pointer (highly ugly and highly misleading).
Anyway, seems to work now so I won't complain too much :)

3 years agoOuliner drag&drop: Correct/increase margin for triggering insert into
Julian Eisel [Fri, 10 Mar 2017 20:06:10 +0000 (21:06 +0100)]
Ouliner drag&drop: Correct/increase margin for triggering insert into

3 years agoInsert into master collection when dragging above it
Julian Eisel [Fri, 10 Mar 2017 20:01:10 +0000 (21:01 +0100)]
Insert into master collection when dragging above it

3 years agoOutliner: Support dragging objects into different collections
Julian Eisel [Fri, 10 Mar 2017 19:47:48 +0000 (20:47 +0100)]
Outliner: Support dragging objects into different collections

Doing so will remove the object from the old collection and insert it
into the new one.

3 years agoOutliner drag&drop: Do generic check if no custom poll callback is defined
Julian Eisel [Fri, 10 Mar 2017 17:23:22 +0000 (18:23 +0100)]
Outliner drag&drop: Do generic check if no custom poll callback is defined

And quite some cleanup.