blender.git
3 years agofix a minor bug when compiling soc-2016-sculpt_tools
JIANG Kairong [Sun, 26 Jun 2016 12:16:18 +0000 (20:16 +0800)]
fix a minor bug when compiling

3 years agoadd support for transformed objects
JIANG Kairong [Sun, 26 Jun 2016 10:46:53 +0000 (18:46 +0800)]
add support for transformed objects

3 years agofirst working version of silhouette brush tool
JIANG Kairong [Sun, 26 Jun 2016 03:53:57 +0000 (11:53 +0800)]
first working version of silhouette brush tool

3 years agofirst attempts to add silhouette brush
JIANG Kairong [Sat, 18 Jun 2016 20:39:49 +0000 (04:39 +0800)]
first attempts to add silhouette brush

3 years agoCleanup: Don't use f suffix for values in GLSL
Sergey Sharybin [Fri, 20 May 2016 16:14:04 +0000 (18:14 +0200)]
Cleanup: Don't use f suffix for values in GLSL

Was giving an issues in the past, will avoid it for now.

3 years agoSupport voronoi texture in GLSL shading
Sergey Sharybin [Fri, 20 May 2016 16:05:29 +0000 (18:05 +0200)]
Support voronoi texture in GLSL shading

It gives some slight differences on the plane corners, but can't
really figure out source of the issue here yet.

It's still better than fully white texture for the previews anyway.

At this point we should perhaps ifdef chunks of the code in order
to have faster GLSL compilation and probably even faster compiled
code. Will look into this shortly.

3 years agoSupport Cycles magic texture in GLSL viewport
Sergey Sharybin [Fri, 20 May 2016 14:58:40 +0000 (16:58 +0200)]
Support Cycles magic texture in GLSL viewport

3 years agoCycles: Fix long compile time with MSVC.
Thomas Dinges [Fri, 20 May 2016 14:46:49 +0000 (16:46 +0200)]
Cycles: Fix long compile time with MSVC.

Compile time per kernel increased alot after recent image commits, re-shuffle some code to fix this.

Patch by "LazyDodo".

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

3 years agoSupport gradient Cycles texture in GLSL viewport
Sergey Sharybin [Fri, 20 May 2016 14:39:45 +0000 (16:39 +0200)]
Support gradient Cycles texture in GLSL viewport

3 years agoSupport Cycles brick texture in GLSL viewport
Sergey Sharybin [Fri, 20 May 2016 14:13:44 +0000 (16:13 +0200)]
Support Cycles brick texture in GLSL viewport

3 years agoSupport Cycles's checker texture in GLSL shading
Sergey Sharybin [Fri, 20 May 2016 13:18:40 +0000 (15:18 +0200)]
Support Cycles's checker texture in GLSL shading

3 years agoFix T48472: issue in array refactor, causing performance regression in BVH build.
Brecht Van Lommel [Fri, 20 May 2016 08:56:10 +0000 (10:56 +0200)]
Fix T48472: issue in array refactor, causing performance regression in BVH build.

3 years agoFix T48470: Bendy Bones: Custom Handle References not being cleared when bone deleted
Joshua Leung [Fri, 20 May 2016 07:08:48 +0000 (19:08 +1200)]
Fix T48470: Bendy Bones: Custom Handle References not being cleared when bone deleted

In addition to the original bug report, I've gone through cleaning up a range of
related bugs which only became clear when hunting around the code...

* Custom Handle References weren't getting cleared when the bones they used got
  deleted.  But, neither was the custom bone shape location/transform reference.

* Various places where posebone settings are copied around were also missing code
  to handle the new Bendy Bone properties.

  (WHY DO WE HAVE SO MANY VARIATIONS OF COPYING POSE DATA!?!?)

* If duplicating a Bendy Bone with custom references, and the custom references
  are also selected/duplicated, the new Bendy Bones will use the corresponding
  duplicated bones

3 years agoAdd Peak Memory as render stamp option
Lukas Stockner [Thu, 19 May 2016 19:39:22 +0000 (21:39 +0200)]
Add Peak Memory as render stamp option

This commit adds Peak Memory to the stamp options, the value is the same one that is already shown in the image viewer.

Requested by @nutel.

Reviewers: campbellbarton

Subscribers: campbellbarton, nutel

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

3 years agoCycles: Add XML parsing of MappingNodes to Cycles Standalone
Lukas Stockner [Thu, 19 May 2016 09:35:50 +0000 (11:35 +0200)]
Cycles: Add XML parsing of MappingNodes to Cycles Standalone

Reviewers: dingto, sergey

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

3 years agoCleanup: warnings
Campbell Barton [Thu, 19 May 2016 19:01:51 +0000 (05:01 +1000)]
Cleanup: warnings

3 years agoFix T48204: Generic Tablet on Linux - Erratic strokes with pressure sensitivity enabled.
Bastien Montagne [Thu, 19 May 2016 18:30:48 +0000 (20:30 +0200)]
Fix T48204: Generic Tablet on Linux - Erratic strokes with pressure sensitivity enabled.

Once and for all - I hope!

So, for the records: Xinput1 events' valuators have a first_axis and axis_count defining the 'range'
of valid axes for that event - but valid data in the valuator's array **always** start at zero
(which means that, if event reports first axis as being axis 2, axis 2's value is in axis_data[0]).

3 years agoCycles / CUDA: Don't use bundled kernel if Adaptive is enforced by the user.
Thomas Dinges [Thu, 19 May 2016 14:32:57 +0000 (16:32 +0200)]
Cycles / CUDA: Don't use bundled kernel if Adaptive is enforced by the user.

3 years agoCleanup: misleading indentation
Campbell Barton [Thu, 19 May 2016 13:37:23 +0000 (23:37 +1000)]
Cleanup: misleading indentation

3 years agoDynapaint: parallelize drip effect.
Bastien Montagne [Wed, 18 May 2016 20:04:58 +0000 (22:04 +0200)]
Dynapaint: parallelize drip effect.

Was not so far, because this effect is not modifying its 'own' PaintPoint, which means
it's not threadsafe. Since a global lock (mutex or spinlock) would not be much efficient
(we need to lock a given point pretty much all the computaion cycle), and since locking
a same PaintPOint from different threads at the same time is *very* unlikely,
solution here is to use an 'array of locks', one for each PaintPoint (same thing as BLI_bitmap,
using atomic ops to set/clear bits).

Here in own test (complex dynapaint over a huge sphere combining all dynapaint types), it gives
20% speedup of the whole dynapaint simulation!

Note: maybe we'd want to move that kind of bitlock into BLI lib some day - not totally sure how,
so let's keep it local for now...

3 years agoDynapaint: fix use of normal normalization in dynamicPaint_generateBakeData().
Bastien Montagne [Thu, 19 May 2016 12:06:46 +0000 (14:06 +0200)]
Dynapaint: fix use of normal normalization in dynamicPaint_generateBakeData().

Vertex's normal is always normalized - and its conversion from short to float should not change that!
On the other hand, linear interpolation of three normals **does not give a normalized vector**
(unless all three inputs are exactly the same).

Also, minor optimization, avoid recomputing that interpolated normal twice for each PaintUVPoint.

3 years agoCycles: Add support for bindless textures.
Thomas Dinges [Thu, 19 May 2016 10:47:41 +0000 (12:47 +0200)]
Cycles: Add support for bindless textures.

This adds support for CUDA Texture objects (also known as Bindless textures) for Kepler GPUs (Geforce 6xx and above).
This is used for all 2D/3D textures, data still uses arrays as before.

User benefits:
* No more limits of image textures on Kepler.
 We had 5 float4 and 145 byte4 slots there before, now we have 1024 float4 and 1024 byte4.
 This can be extended further if we need to (just change the define).

* Single channel textures slots (byte and float) are now supported on Kepler as well (1024 slots for each type).

ToDo / Issues:
* 3D textures don't work yet, at least don't show up during render. I have no idea whats wrong yet.
* Dynamically allocate bindless_mapping array?

I hope Fermi still works fine, but that should be tested on a Fermi card before pushing to master.

Part of my GSoC 2016.

Reviewers: sergey, #cycles, brecht

Subscribers: swerner, jtheninja, brecht, sergey

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

3 years agoIgnore vertex color when doing texture paint
Sergey Sharybin [Thu, 19 May 2016 09:11:21 +0000 (11:11 +0200)]
Ignore vertex color when doing texture paint

It was totally useless to multiply diffuse color with the vertex color
when doing texture painting. It was masking actual texture and only was
forcing artists to create an empty vertex color layer to work this around.

3 years agoCMake: use signed char for recastnavigation
Campbell Barton [Wed, 18 May 2016 21:36:32 +0000 (07:36 +1000)]
CMake: use signed char for recastnavigation

External libraries may need char to be signed.

3 years agoCleanup: CMake indentation
Campbell Barton [Wed, 18 May 2016 16:04:58 +0000 (02:04 +1000)]
Cleanup: CMake indentation

Also remove outdated comment

3 years agoCuda wrangler: Fix very nasty bug with multiple scalar type qualifiers
Sergey Sharybin [Wed, 18 May 2016 16:01:37 +0000 (18:01 +0200)]
Cuda wrangler: Fix very nasty bug with multiple scalar type qualifiers

3 years agoFix missing modifiers for mesh objects
Sergey Sharybin [Wed, 18 May 2016 15:36:16 +0000 (17:36 +0200)]
Fix missing modifiers for mesh objects

All modifiers for all non-lattice objects were disabled after recent commit.

3 years agoTheme Color Sets - Dynamically generated icons
Joshua Leung [Wed, 18 May 2016 15:25:00 +0000 (03:25 +1200)]
Theme Color Sets - Dynamically generated icons

The theme color set selector (for Bone Groups) will now show previews of
what each color set looks like. It does so using a 3-color band icon.

3 years agoFix T47727: Weird bake results with non integer color values
Sergey Sharybin [Wed, 18 May 2016 13:08:48 +0000 (15:08 +0200)]
Fix T47727: Weird bake results with non integer color values

3 years agoFix T47737: Lattice crashes w/ smooth modifier
Philipp Oeser [Wed, 18 May 2016 12:21:46 +0000 (22:21 +1000)]
Fix T47737: Lattice crashes w/ smooth modifier

Add flag for modifiers that support lattice

3 years agoRevert string splitting
Campbell Barton [Wed, 18 May 2016 12:05:28 +0000 (22:05 +1000)]
Revert string splitting

Caused error on OSX

3 years agoRevert part of 4adffde02c98f3bb058ffba5ea010a6b1045a7b1 to get Windows (MSVC2013...
Joshua Leung [Wed, 18 May 2016 11:40:32 +0000 (23:40 +1200)]
Revert part of 4adffde02c98f3bb058ffba5ea010a6b1045a7b1 to get Windows (MSVC2013) compiling again

3 years agoDepsgraph: Fix rest pose still using bone constraints
Sergey Sharybin [Wed, 18 May 2016 09:38:52 +0000 (11:38 +0200)]
Depsgraph: Fix rest pose still using bone constraints

3 years agoCycles: Fix compilation error of CUDA kernels after recent volume commit
Sergey Sharybin [Wed, 18 May 2016 09:15:28 +0000 (11:15 +0200)]
Cycles: Fix compilation error of CUDA kernels after recent volume commit

Apparently the code path with malloc() was enabled for CUDA.

3 years agoCycles: Pole merging for spherical stereo
Sergey Sharybin [Tue, 17 May 2016 12:12:29 +0000 (14:12 +0200)]
Cycles: Pole merging for spherical stereo

The idea of pole merge is to fade interocular distance after a certain
altitude to zero when altitude goes closer to a pole. This should prevent
annoyances looking up in the sky or down to the bottom.

Works for both panorama and perspective cameras when Spherical Stereo
is enabled.

Reviewers: dfelinto, brecht

Reviewed By: brecht

Subscribers: sebastian_k

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

3 years agoCycles: Reduce amount of malloc() calls from the kernel
Sergey Sharybin [Tue, 17 May 2016 10:30:46 +0000 (12:30 +0200)]
Cycles: Reduce amount of malloc() calls from the kernel

This commit makes it so malloc() is only happening once per volume and
once per transparent shadow query (per thread), improving scalability of
the code to multiple CPU cores.

Hard to measure this with a low-bottom i7 here currently, but from quick
tests seems volume sampling gave about 3-5% speedup.

The idea is to store allocated memory in kernel globals, which are per
thread on CPU already.

Reviewers: dingto, juicyfruit, lukasstockner97, maiself, brecht

Reviewed By: brecht

Subscribers: Blendify, nutel

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

3 years agoCycles: Explicitly mark arguments as unused
Sergey Sharybin [Wed, 18 May 2016 07:12:47 +0000 (09:12 +0200)]
Cycles: Explicitly mark arguments as unused

3 years agoFix T48395: Grease Pencil, pressing Ekey to sculpt don't work for left click configur...
Joshua Leung [Wed, 18 May 2016 05:23:16 +0000 (17:23 +1200)]
Fix T48395: Grease Pencil, pressing Ekey to sculpt don't work for left click configurations

When using Left Click select, it wasn't possible to sculpt using E+LMB.

I've changed the order of things in the keymap so that the select operator won't
end up catching and blocking all these events.

3 years agoFix: "Whole Character" Keying Set should not include Location on bones with "connecte...
Joshua Leung [Tue, 17 May 2016 16:09:07 +0000 (04:09 +1200)]
Fix: "Whole Character" Keying Set should not include Location on bones with "connected" joint

3 years agoCleanup: cmake, indentation, line length
Campbell Barton [Wed, 18 May 2016 01:58:08 +0000 (11:58 +1000)]
Cleanup: cmake, indentation, line length

3 years agoFix issue in with multiple importance sampling in recent code refactor.
Brecht Van Lommel [Tue, 17 May 2016 23:50:35 +0000 (01:50 +0200)]
Fix issue in with multiple importance sampling in recent code refactor.

3 years agoCleanup code style inconsistency in last commits.
Brecht Van Lommel [Tue, 17 May 2016 20:08:34 +0000 (22:08 +0200)]
Cleanup code style inconsistency in last commits.

3 years agoFix GCC/Linux build error after finite/isfinite changes.
Brecht Van Lommel [Tue, 17 May 2016 21:16:54 +0000 (23:16 +0200)]
Fix GCC/Linux build error after finite/isfinite changes.

3 years agoC99/C++11: replace deprecated finite() by isfinite().
Brecht Van Lommel [Sun, 15 May 2016 22:48:02 +0000 (00:48 +0200)]
C99/C++11: replace deprecated finite() by isfinite().

3 years agoFix C++11 build issues on OS X, remove references to outdated libs.
Brecht Van Lommel [Mon, 16 May 2016 18:03:59 +0000 (20:03 +0200)]
Fix C++11 build issues on OS X, remove references to outdated libs.

3 years agoCode refactor: use shader pointers rather than shader indexes.
Brecht Van Lommel [Sat, 14 May 2016 12:50:03 +0000 (14:50 +0200)]
Code refactor: use shader pointers rather than shader indexes.

3 years agoCode refactor: use dynamic shader node array lengths now that OSL supports them.
Brecht Van Lommel [Sat, 7 May 2016 23:54:35 +0000 (01:54 +0200)]
Code refactor: use dynamic shader node array lengths now that OSL supports them.

3 years agoCode refactor: add some array utility methods, fix leak in assignment operator.
Brecht Van Lommel [Sat, 7 May 2016 17:47:08 +0000 (19:47 +0200)]
Code refactor: add some array utility methods, fix leak in assignment operator.

3 years agoBendy Bones: Small ui tweak
Thomas Beck [Tue, 17 May 2016 16:08:04 +0000 (18:08 +0200)]
Bendy Bones: Small ui tweak

Change the order of the bending controls ("Curve XY Offsets") so the user can activate both InX and OutX by holding down the left mouse button. This way, it's easy to bend symmetrically on X or Y.

3 years agoFix T48434: Missing meta support in new depsgraph
Sergey Sharybin [Tue, 17 May 2016 15:52:23 +0000 (17:52 +0200)]
Fix T48434: Missing meta support in new depsgraph

3 years agoBendy Bones: Advanced B-Bones for Easier + Simple Rigging
Joshua Leung [Tue, 17 May 2016 15:19:06 +0000 (03:19 +1200)]
Bendy Bones: Advanced B-Bones for Easier + Simple Rigging

This commit/patch/branch brings a bunch of powerful new options for B-Bones and
for working with B-Bones, making it easier for animators to create their own
rigs, using fewer bones (which also means hopefully lighter + faster rigs ;)
This functionality was first demoed by Daniel at BConf15

Some highlights from this patch include:
* You can now directly control the shape of B-Bones using a series of properties
  instead of being restricted to trying to indirectly control them through the
  neighbouring bones.  See the "Bendy Bones" panel...

* B-Bones can be shaped in EditMode to define a "curved rest pose" for the bone.
  This is useful for things like eyebrows and mouths/eyelids

* You can now make B-Bones use custom bones as their reference bone handles,
  instead of only using the parent/child bones. To do so, enable the
  "Use Custom Reference Handles" toggle. If none are specified, then the BBone will
  only use the Bendy Bone properties.

* Constraints Head/Tail option can now slide along the B-Bone shape, instead of
  just linearly interpolating between the endpoints of the bone.

For more details, see:
* http://aligorith.blogspot.co.nz/2016/05/bendy-bones-dev-update.html
* http://aligorith.blogspot.co.nz/2016/05/an-in-depth-look-at-how-b-bones-work.html

-- Credits --
Original Idea: Daniel M Lara (pepeland)
Original Patch/Research: Jose Molina
Additional Development + Polish: Joshua Leung (aligorith)
Testing/Feedback: Daniel M Lara (pepeland), Juan Pablo Bouza (jpbouza)

3 years agoFix CUDA MEMCPY condition, it should only copy 3D, 2D or 1D.
Thomas Dinges [Mon, 16 May 2016 22:37:34 +0000 (00:37 +0200)]
Fix CUDA MEMCPY condition, it should only copy 3D, 2D or 1D.

Found by Brecht, thanks!

3 years agoCycles / Requested Features: Volume was missing in logging print.
Thomas Dinges [Mon, 16 May 2016 22:36:22 +0000 (00:36 +0200)]
Cycles / Requested Features: Volume was missing in logging print.

3 years agoUsual i18n/UI messgaes fixes...
Bastien Montagne [Mon, 16 May 2016 19:46:55 +0000 (21:46 +0200)]
Usual i18n/UI messgaes fixes...

3 years agoRemove strict header, gives issues with gcc5x
Campbell Barton [Mon, 16 May 2016 19:26:09 +0000 (05:26 +1000)]
Remove strict header, gives issues with gcc5x

3 years agoCleanup: use const args
Campbell Barton [Mon, 16 May 2016 17:07:40 +0000 (03:07 +1000)]
Cleanup: use const args

3 years agoCustomData: Support for >2gig layers
Campbell Barton [Mon, 16 May 2016 17:01:32 +0000 (03:01 +1000)]
CustomData: Support for >2gig layers

3 years agoCleanup: simplify checks calculating tangents
Campbell Barton [Mon, 16 May 2016 15:58:07 +0000 (01:58 +1000)]
Cleanup: simplify checks calculating tangents

3 years agoBLI_task: Add new 'BLI_task_parallel_range_finalize()'.
Bastien Montagne [Mon, 16 May 2016 15:15:18 +0000 (17:15 +0200)]
BLI_task: Add new 'BLI_task_parallel_range_finalize()'.

Together with the extended loop callback and userdata_chunk, this allows to perform
cumulative tasks (like aggregation) in a lockfree way using local userdata_chunk to store temp data,
and once all workers have finished, to merge those userdata_chunks in the finalize callback
(from calling thread, so no need to lock here either).

Note that this changes how userdata_chunk is handled (now fully from 'main' thread,
which means a given worker thread will always get the same userdata_chunk, without
being re-initialized anymore to init value at start of each iter chunk).

3 years agoBLI_task: Add back lost 'push_from_thread' change to BLI_task_parallel_range() & co.
Bastien Montagne [Mon, 16 May 2016 14:46:54 +0000 (16:46 +0200)]
BLI_task: Add back lost 'push_from_thread' change to BLI_task_parallel_range() & co.

3 years agoFix T48447: Inactive menu items don't grey-out icons
Campbell Barton [Mon, 16 May 2016 14:15:21 +0000 (00:15 +1000)]
Fix T48447: Inactive menu items don't grey-out icons

3 years agoBLI_task: make foreach loop index hleper lockfree, take II.
Bastien Montagne [Mon, 16 May 2016 13:57:19 +0000 (15:57 +0200)]
BLI_task: make foreach loop index hleper lockfree, take II.

New code is actually much, much better than first version, using 'fetch_and_add' atomic op
here allows us to get rid of the loop etc.

The broken CAS issue remains on windows, to be investigated...

3 years agoAtomic ops: add 'fetch_and_add_uint32' op.
Bastien Montagne [Mon, 16 May 2016 13:56:39 +0000 (15:56 +0200)]
Atomic ops: add 'fetch_and_add_uint32' op.

Needed for next commit.

3 years agoCleanup rna_Brush_direction_itemf()
Bastien Montagne [Mon, 16 May 2016 13:54:18 +0000 (15:54 +0200)]
Cleanup rna_Brush_direction_itemf()

Some variants of gcc compilation were reporting 'control reaching end of non-void function' error
in this switch/case maze. Either use break everywhere or not at all (which is simpler, since we
only always return anyway...).

3 years agoCycles: Cleanup after recent refactor
Sergey Sharybin [Mon, 16 May 2016 08:55:50 +0000 (10:55 +0200)]
Cycles: Cleanup after recent refactor

Wrong indentation, wrong spacing.

3 years agoRevert "Docs: smoke typo corrections"
Campbell Barton [Sun, 15 May 2016 23:28:46 +0000 (09:28 +1000)]
Revert "Docs: smoke typo corrections"

This reverts commit b13bc48932761dd813597507b1a1dc86d951ebff.

Wasn't only typo fixes, broke compiling

3 years agoDocs: smoke typo corrections
Campbell Barton [Sun, 15 May 2016 21:52:56 +0000 (07:52 +1000)]
Docs: smoke typo corrections

patch by @Blendify

3 years agoCurve Fitting: correct circular tangent length calculation
Campbell Barton [Sun, 15 May 2016 21:35:44 +0000 (07:35 +1000)]
Curve Fitting: correct circular tangent length calculation

Method for scaling is still not perfect but quite close.

3 years agoFix T48422: Revert "BLI_task: nano-optimizations to BLI_task_parallel_range feature."
Bastien Montagne [Sun, 15 May 2016 19:11:36 +0000 (21:11 +0200)]
Fix T48422: Revert "BLI_task: nano-optimizations to BLI_task_parallel_range feature."

There are some serious issues under windows, causing deadlocks somehow (not reproducible under linux so far).

Until further investigation over why this happens, better to revert to previous
spin-locked behavior.

This reverts commits a83bc4f59707ab and 98123ae9168.

3 years agoBGE: Fix KX_LightObject python API documentation.
Porteries Tristan [Sun, 15 May 2016 14:56:40 +0000 (14:56 +0000)]
BGE: Fix KX_LightObject python API documentation.

Replace "..attribute::" by ".. attribute::".

3 years agoFix T48425: Armature Symmetrize is flipping Custom Shape parameter.
Bastien Montagne [Sun, 15 May 2016 10:35:01 +0000 (12:35 +0200)]
Fix T48425: Armature Symmetrize is flipping Custom Shape parameter.

In case not all bones are selected, not all possible mirrors are set in editbone->temp.ebone,
so we need to search them...

3 years agoFix an error in new lockfree parallel_range_next_iter_get() helper.
Bastien Montagne [Sat, 14 May 2016 16:02:34 +0000 (18:02 +0200)]
Fix an error in new lockfree parallel_range_next_iter_get() helper.

Reading the shared state->iter value after storing it in the 'reference' var could in theory
lead to a race condition setting state->iter value above state->stop, which would be 'deadly'.

This **may** be the cause of T48422, though I was not able to reproduce that issue so far.

3 years agoFix Cube generated UV's rotated incorrectly
Campbell Barton [Sat, 14 May 2016 12:55:55 +0000 (22:55 +1000)]
Fix Cube generated UV's rotated incorrectly

3 years agoFix T48426: Use same length for all header message strings.
Bastien Montagne [Sat, 14 May 2016 08:00:52 +0000 (10:00 +0200)]
Fix T48426: Use same length for all header message strings.

Some languages like Chinese or Japanese take three or four bytes per char...

Also fixed some missing translation markers for UI header messages.

3 years agoCorrect BM_iter_mesh_bitmap_from_filter return
Campbell Barton [Fri, 13 May 2016 18:49:42 +0000 (04:49 +1000)]
Correct BM_iter_mesh_bitmap_from_filter return

3 years agoCorrect asserts
Campbell Barton [Fri, 13 May 2016 18:05:18 +0000 (04:05 +1000)]
Correct asserts

3 years agoFix script_paths(check_all=True) missing script paths
Campbell Barton [Fri, 13 May 2016 17:25:06 +0000 (03:25 +1000)]
Fix script_paths(check_all=True) missing script paths

BLENDER_SYSTEM_SCRIPTS wasn't included in bpy.utils.script_paths()

3 years agoFix compilation with strict compiler flags
Sergey Sharybin [Fri, 13 May 2016 15:37:39 +0000 (17:37 +0200)]
Fix compilation with strict compiler flags

Some const qualifier was discarding.

3 years agoFix T48421: AO pass broken, only works when AO in cycles is enabled
Sergey Sharybin [Fri, 13 May 2016 15:33:26 +0000 (17:33 +0200)]
Fix T48421: AO pass broken, only works when AO in cycles is enabled

3 years agoCleanup: rna naming, indentation
Campbell Barton [Fri, 13 May 2016 15:28:21 +0000 (01:28 +1000)]
Cleanup: rna naming, indentation

3 years agoFix T48416: Impossible to copy a linked object from a file to another one mantaining...
Bastien Montagne [Fri, 13 May 2016 12:07:30 +0000 (14:07 +0200)]
Fix T48416: Impossible to copy a linked object from a file to another one mantaining the linked library.

When writing temp blenbuffer file, libraries of linked datablocks where not tagged correctly, which
means they were not put in the temp Main used to write the buffer, resulting in implicit localization
of linked data.

3 years agoFix T48416: Impossible to append from another file without localizing also all indire...
Bastien Montagne [Fri, 13 May 2016 10:54:09 +0000 (12:54 +0200)]
Fix T48416: Impossible to append from another file without localizing also all indirectly linked data.

Previous to 2.77, this used to be default behavior, was changed in rB591f4549c958b.

However, in most append cases, you do want a full localization of your data, so this new behavior
is kept by default, but there is now an option in append operator to only localize the 'first level'
of data (i.e. datablocks from linked library itself, and not those from other 'sub-libraries').

3 years agoFix T47652: Texture shading mode fails to update material colors
Campbell Barton [Fri, 13 May 2016 12:03:18 +0000 (22:03 +1000)]
Fix T47652: Texture shading mode fails to update material colors

3 years agoArmature meshdeform evaluation: parallelize computation of bbones deform matrices.
Bastien Montagne [Fri, 13 May 2016 09:05:12 +0000 (11:05 +0200)]
Armature meshdeform evaluation: parallelize computation of bbones deform matrices.

On big and complex rigs like blendrig or koro, it can give up to ~10% more FPS in best cases.
Hard to tackle all cases in tests though, so please report any unexpected slowdown
in armature animation playback!

3 years agoBLI_task: add support for listbase parallelized for loops.
Bastien Montagne [Fri, 13 May 2016 09:03:04 +0000 (11:03 +0200)]
BLI_task: add support for listbase parallelized for loops.

Code by @sergey, with small edits and doc by @mont29.

3 years agoCleanup: fix inconsitency in dynamicPaint_outputLayerExists()
Bastien Montagne [Thu, 12 May 2016 11:15:55 +0000 (13:15 +0200)]
Cleanup: fix inconsitency in dynamicPaint_outputLayerExists()

Dyna WPaint indeed only uses first output layer, but better be consistent in those cases...

3 years agoDynapaint: cleanup of BKE code.
Bastien Montagne [Thu, 12 May 2016 10:08:03 +0000 (12:08 +0200)]
Dynapaint: cleanup of BKE code.

Line lengths, monolined 'if' statements, int -> bool, etc.

Also, replaced some internal cooked stuff by BLI helpers (most notably, the
'is inside UV triangle' code in `dynamicPaint_createUVSurface()`), and some
other minor optimizations.

3 years agoBLI_math: add 'equals_m4m4' (and 'm3' variant) helpers.
Bastien Montagne [Thu, 12 May 2016 10:07:31 +0000 (12:07 +0200)]
BLI_math: add 'equals_m4m4' (and 'm3' variant) helpers.

3 years agoCycles: Scale debug pass with number of samples
Sergey Sharybin [Fri, 13 May 2016 09:21:00 +0000 (11:21 +0200)]
Cycles: Scale debug pass with number of samples

This way it's easier to compare different renders together without
worrying about scale too much.

3 years agoImage editor: Show actual value of single-channel buffer in sample info
Sergey Sharybin [Fri, 13 May 2016 09:19:32 +0000 (11:19 +0200)]
Image editor: Show actual value of single-channel buffer in sample info

Previously if image only had single channel only z buffer value was displaying.
This isn't handy for cases when you've got single channel buffer which is not
a z buffer.

Also fixed possible read past the array.

3 years agoinstall_deps: Avoid conflicts on Arch-based systems when gcc-multilib is installed
Mai Lavelle [Thu, 12 May 2016 22:17:14 +0000 (18:17 -0400)]
install_deps: Avoid conflicts on Arch-based systems when gcc-multilib is installed

install_deps can fail due to conflict between gcc (referenced by base-devel) and
gcc-multilib if the latter is installed. This avoids the conflict by filtering
the contents of base-devel when needed.

Reviewers: mont29

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

3 years agoCycles: Add support for single channel byte textures.
Thomas Dinges [Thu, 12 May 2016 12:51:42 +0000 (14:51 +0200)]
Cycles: Add support for single channel byte textures.

This way, we also save 3/4th of memory for single channel byte textures (e.g. Bump Maps).

Note: In order for this to work, the texture *must* have 1 channel only.
In Gimp you can e.g. do that via the menu: Image -> Mode -> Grayscale

3 years agoFix array bounds compile warning.
Thomas Dinges [Thu, 12 May 2016 12:20:12 +0000 (14:20 +0200)]
Fix array bounds compile warning.

3 years agoFix T48413: editmesh intersect tool crash
Campbell Barton [Thu, 12 May 2016 10:58:20 +0000 (20:58 +1000)]
Fix T48413: editmesh intersect tool crash

Its important to add tri-edge intersections from both sides.

3 years agoCorrect debug prints
Campbell Barton [Thu, 12 May 2016 10:01:49 +0000 (20:01 +1000)]
Correct debug prints

3 years agoFix depsgraph tagging during the relations build pass.
Lukas Tönne [Thu, 12 May 2016 07:54:08 +0000 (09:54 +0200)]
Fix depsgraph tagging during the relations build pass.

Followup commit to 18e5e2fa1ac26ccbbd0cc8b486a5d92be6888021. Needs the same
treatment in the second pass when ID tags are reset again.

3 years agoBMesh: avoid calling delete operator w/ face dissolve
Campbell Barton [Thu, 12 May 2016 06:45:47 +0000 (16:45 +1000)]
BMesh: avoid calling delete operator w/ face dissolve

In nearly all cases this isn't needed.

3 years agoFix missing piece in recent rBce65fae8f32c (support for '+' key).
Bastien Montagne [Thu, 12 May 2016 06:00:55 +0000 (08:00 +0200)]
Fix missing piece in recent rBce65fae8f32c (support for '+' key).

Thanks to Daniel Rivera (Dr2d4) for the headup!

3 years agoRecent bmesh face-join caused regression (T48407)
Campbell Barton [Thu, 12 May 2016 06:07:14 +0000 (16:07 +1000)]
Recent bmesh face-join caused regression (T48407)

3 years agoCleanup: Fix typo.
Thomas Dinges [Thu, 12 May 2016 00:11:19 +0000 (02:11 +0200)]
Cleanup: Fix typo.