5 years agoCorrect error checking for wrong frame range
Campbell Barton [Tue, 5 Apr 2016 23:41:30 +0000 (09:41 +1000)]
Correct error checking for wrong frame range

5 years agoCleanup: indentation
Campbell Barton [Tue, 5 Apr 2016 23:30:20 +0000 (09:30 +1000)]
Cleanup: indentation

5 years agoCleanup: arg docstrings
Campbell Barton [Tue, 5 Apr 2016 23:28:22 +0000 (09:28 +1000)]
Cleanup: arg docstrings

5 years agoRender frame arg parsing, list and range support
Campbell Barton [Tue, 5 Apr 2016 21:34:20 +0000 (07:34 +1000)]
Render frame arg parsing, list and range support

Support a comma separated list of frames, as well as frame ranges using the '..' separator.

eg: `blender my.blend --render-frame 1,2,10..40,100..200`

5 years agoExpose new Recast partitioning methods for navmesh generation
Reinier de Blois [Tue, 5 Apr 2016 18:38:42 +0000 (20:38 +0200)]
Expose new Recast partitioning methods for navmesh generation

This patch depends on D1747, which upgrades the Recast version.  It exposes the new Recast partitioning methods in the navmesh generation.

Reviewers: campbellbarton, moguri

Reviewed By: moguri

Projects: #bf_blender

Differential Revision:

5 years agoUpdate Recast version to 1.5.0
Reinier de Blois [Tue, 5 Apr 2016 18:34:00 +0000 (20:34 +0200)]
Update Recast version to 1.5.0

The version of Recast that Blender ships with is from 2009.  This patch updates the Recast version to the latest version, 1.5.0.  The Detour version remains untouched.

Reviewers: campbellbarton, moguri

Reviewed By: moguri

Projects: #bf_blender

Differential Revision:

5 years agoFix UV-Editor crashes w/ over SHRT_MAX UV's
Campbell Barton [Tue, 5 Apr 2016 10:42:21 +0000 (20:42 +1000)]
Fix UV-Editor crashes w/ over SHRT_MAX UV's

5 years agoRevert "Cycles: Remove the Preetham Sky model."
Thomas Dinges [Tue, 5 Apr 2016 10:25:54 +0000 (12:25 +0200)]
Revert "Cycles: Remove the Preetham Sky model."

This reverts commit d91316dc672dc1ee69fbd24d2f00124a24b75c6b.

5 years agoFix T48054: Blender 2.77 doesn't import blenders fbx, due to recent changes in anim...
Bastien Montagne [Tue, 5 Apr 2016 09:51:54 +0000 (11:51 +0200)]
Fix T48054: Blender 2.77 doesn't import blenders fbx, due to recent changes in anim RNA API.

Please do not break API when not absolutely needed, here it was a mere parameter order issue...

5 years agoFix T47705: Freestyle line glitch.
Tamito Kajiyama [Tue, 5 Apr 2016 07:08:45 +0000 (16:08 +0900)]
Fix T47705: Freestyle line glitch.

The addressed issue is a regression from Blender 2.75, after the internal
switch from double to single precision floating-point numbers in the
Freestyle code base.  Face normal calculations require the higher
precision during the computations, even though the results can be stored
as single precision numbers.

5 years agoCleanup: Typo fixes after BVH commits.
Thomas Dinges [Mon, 4 Apr 2016 23:20:18 +0000 (01:20 +0200)]
Cleanup: Typo fixes after BVH commits.

5 years agoPyDriver support for all RNA property types
Campbell Barton [Mon, 4 Apr 2016 21:02:43 +0000 (07:02 +1000)]
PyDriver support for all RNA property types

Support for driver variables that don't resolve to numbers, eg:
objects, bones, curves... etc.

Without this, Python expressions to access this data needed to use an absolute path from ``,
however this is inconvenient, breaks easily (based on naming) and wouldn't set the dependencies correctly.

5 years agoCycles: Fix wrong camera in volume check when domain is only visible to camera rays
Sergey Sharybin [Mon, 4 Apr 2016 17:30:38 +0000 (19:30 +0200)]
Cycles: Fix wrong camera in volume check when domain is only visible to camera rays

5 years agoCycles: Fix regression caused by recent camera-in-volume commit
Sergey Sharybin [Mon, 4 Apr 2016 16:24:40 +0000 (18:24 +0200)]
Cycles: Fix regression caused by recent camera-in-volume commit

Stupid me forgot that we don't have stop-element in the stack yet.

5 years agoCycles: Fix regular BVH not having proper visibility flags
Sergey Sharybin [Mon, 4 Apr 2016 16:10:24 +0000 (18:10 +0200)]
Cycles: Fix regular BVH not having proper visibility flags

This was caused by recent threading commit. Now because of all children
are set when they're ready need to explicitly update all parent's visibility.

5 years agoFix T48045: Freestyle ID user decrement error.
Bastien Montagne [Mon, 4 Apr 2016 13:43:45 +0000 (15:43 +0200)]
Fix T48045: Freestyle ID user decrement error.

This fixes reported issue, but there could be more of those hidden in Freestyle code,
it did not handle user refcount at all (and the fact it by-passes BKE in some places
for efficiency does not help here).

Note that this should be relatively harmless, since freestyle uses own Main during
render, so everything is cleaned up in the end in any case... But better try to
handle IDs correctly here too. :)

5 years agoUpdate hash for an OBJ unit test
Sergey Sharybin [Mon, 4 Apr 2016 13:22:31 +0000 (15:22 +0200)]
Update hash for an OBJ unit test

5 years agoCycles: Make spatial split BVH multi-threaded
Sergey Sharybin [Mon, 4 Apr 2016 12:43:21 +0000 (14:43 +0200)]
Cycles: Make spatial split BVH multi-threaded

The title actually covers it all, This commit exploits all the work
being done in previous changes to make it possible to build spatial
splits in threads.

Works quite nicely, but has a downside of some extra memory usage.
In practice it doesn't seem to be a huge problem and that we can
always look into later if it becomes a real showstopper.

In practice it shows some nice speedup:

- BMW27 scene takes 3 now (used to be 4)
- Agent shot takes 5 sec (used to be 80)

Such non-linear speedup is most likely coming from much less amount
of heap re-allocations. A a downside, there's a bit of extra memory
used by BVH arrays. From the tests amount of extra memory is below
0.001% so far, so it's not that bad at all.

Reviewers: brecht, juicyfruit, dingto, lukasstockner97

Differential Revision:

5 years agoCycles: Solve possible issues with running out of stack memory allocator
Sergey Sharybin [Mon, 4 Apr 2016 12:10:09 +0000 (14:10 +0200)]
Cycles: Solve possible issues with running out of stack memory allocator

Policy here is a bit more complicated, if tree becomes too deep we're
forced to create a leaf node and size of that leaf wouldn't be so well
predicted, which means it's quite tricky to use single stack array for

Made it more official feature that StackAllocator will fall-back to
heap when running out of stack memory.

It's still much better than always using heap allocator.

5 years agoCycles: Log overall time spent on building object's BVH
Sergey Sharybin [Mon, 4 Apr 2016 11:43:19 +0000 (13:43 +0200)]
Cycles: Log overall time spent on building object's BVH

We had per-tree statistics already, but it's a bit tricky to see overall
time because trees could be building in parallel.

In fact, we can now print statistics for any TaskPool.

5 years agoCycles: Log allocation slop factor for BVH arrays
Sergey Sharybin [Mon, 4 Apr 2016 10:55:24 +0000 (12:55 +0200)]
Cycles: Log allocation slop factor for BVH arrays

Currently they're staying at 1 (actual size over capacity), but we
will be changing it quite soon in order to avoid having too much
memory re-allocation happening at a BVH build time and will be
playing with different policies for that.

5 years agoFix missing ID_SO sound type in outliner's ID types.
Bastien Montagne [Mon, 4 Apr 2016 10:35:59 +0000 (12:35 +0200)]
Fix missing ID_SO sound type in outliner's ID types.

Note that we may want to review that some day, we have quite a bit of ID types here that are
'blend file' view only, might be worth splitting the check based on this.

5 years agoCycles: Tweak to stack allocator used by BVH builder
Sergey Sharybin [Mon, 4 Apr 2016 10:23:23 +0000 (12:23 +0200)]
Cycles: Tweak to stack allocator used by BVH builder

In some files stack memory was overruning the pre-allocated stack.

Perhaps we should fall-back to a hep-allocated stack so release builds
don't crash in works case but just becoming slower.

5 years agoSmoke: Don't use `min` as an uniform name
Sergey Sharybin [Mon, 4 Apr 2016 09:58:27 +0000 (11:58 +0200)]
Smoke: Don't use `min` as an uniform name

This is an attempt to fix report T47991.

5 years agoCycles: Make curves modified by a taper object with modifier considered a deform...
Sergey Sharybin [Mon, 4 Apr 2016 09:39:04 +0000 (11:39 +0200)]
Cycles: Make curves modified by a taper object with modifier considered a deform modified

That might consider a bit more objects to be considered deform modified,
but it covers common case of using taper object without require of doing
recursive checks.

In worst case it'll be just some extra synchronization time, no render
time difference will happen for false-positive because of extra checks
happening in Cycles.

5 years agoFix T48002: Wrong behavior with "RGB to Intensity" in Image textures
Sergey Sharybin [Mon, 4 Apr 2016 09:28:14 +0000 (11:28 +0200)]
Fix T48002: Wrong behavior with "RGB to Intensity" in Image textures

There was some extra linearization happening in such cases.

5 years agoFix curve editmode adding 3D primitives w/ 2D curves
Campbell Barton [Mon, 4 Apr 2016 08:34:04 +0000 (18:34 +1000)]
Fix curve editmode adding 3D primitives w/ 2D curves

5 years agoFix curve adding 3D nurbs when 2D is set
Campbell Barton [Mon, 4 Apr 2016 07:47:55 +0000 (17:47 +1000)]
Fix curve adding 3D nurbs when 2D is set

Ctrl-LMB ignored 2D constraint

5 years agoFix curve hide keeping spline active
Campbell Barton [Mon, 4 Apr 2016 07:55:28 +0000 (17:55 +1000)]
Fix curve hide keeping spline active

5 years agoFix curve, missing update on Ctrl-LMB
Campbell Barton [Mon, 4 Apr 2016 08:18:21 +0000 (18:18 +1000)]
Fix curve, missing update on Ctrl-LMB

5 years agoFix curve add-vertex w/ 2D curves
Campbell Barton [Mon, 4 Apr 2016 08:01:01 +0000 (18:01 +1000)]
Fix curve add-vertex w/ 2D curves

Project the point onto the 2d place where possible.

5 years agoMove some debug print under G.debug
Sergey Sharybin [Mon, 4 Apr 2016 07:57:40 +0000 (09:57 +0200)]
Move some debug print under G.debug

It's not like every debug build is benefiting from this print..

5 years agoFix uninitialized variable use w/ VSE transform
Campbell Barton [Mon, 4 Apr 2016 02:41:31 +0000 (12:41 +1000)]
Fix uninitialized variable use w/ VSE transform

5 years agoCycles: Remove the Preetham Sky model.
Thomas Dinges [Sat, 2 Apr 2016 21:36:14 +0000 (23:36 +0200)]
Cycles: Remove the Preetham Sky model.

The improved Hosek / Wilkie model was added during my GSoC 2013 and the default since then.

The older model was kinda kept for compatibility, but after more than 2 years it's time to remove it.
The Hosek / Wilkie model is more realistic anyway, and people who really want a day / night transition can mix the Sky Shader with another one (e.g. color) and fade between the two.

5 years agoFix T47971: rigid body baking crash due to thread race condition.
Brecht Van Lommel [Sat, 2 Apr 2016 02:24:24 +0000 (04:24 +0200)]
Fix T47971: rigid body baking crash due to thread race condition.

5 years agoFix T48030: Can't zoom VSE properties panel
Campbell Barton [Sat, 2 Apr 2016 07:52:52 +0000 (18:52 +1100)]
Fix T48030: Can't zoom VSE properties panel

5 years agoFix T47505: Cycles OpenCL rendering crash on Windows.
Brecht Van Lommel [Fri, 1 Apr 2016 18:37:24 +0000 (20:37 +0200)]
Fix T47505: Cycles OpenCL rendering crash on Windows.

Restore the boost bug workaround, but without changing the locale.

5 years agoCycles: Fix wrong camera-in-volume stack when camera ray hits volume domain twice
Sergey Sharybin [Fri, 1 Apr 2016 16:03:58 +0000 (18:03 +0200)]
Cycles: Fix wrong camera-in-volume stack when camera ray hits volume domain twice

5 years agoCycles: Temporarily revert index sort commit for spatial split
Sergey Sharybin [Fri, 1 Apr 2016 15:44:08 +0000 (17:44 +0200)]
Cycles: Temporarily revert index sort commit for spatial split

There are in fact some missing parts to it (Split BVH builder should
be creating bins from result of Object Split constructor).

Doable, but need to quickly fix issue for the studio here, easier to
revert for now.

5 years agoFix T48001: Highlighting selected item in filtered lists.
Bastien Montagne [Fri, 1 Apr 2016 14:54:01 +0000 (16:54 +0200)]
Fix T48001: Highlighting selected item in filtered lists.

active index was not reset to 'nothing' in case actual active item was filtered out.

5 years agoKnife Project: revert fix for T43896
Campbell Barton [Fri, 1 Apr 2016 14:30:57 +0000 (01:30 +1100)]
Knife Project: revert fix for T43896

For now leave precision at half a pixel until we have real fix.
Resolves T48023.

5 years agoCycles: Support deformation motion blur for curves deformed by taper
Sergey Sharybin [Fri, 1 Apr 2016 13:53:40 +0000 (15:53 +0200)]
Cycles: Support deformation motion blur for curves deformed by taper

5 years agoCycles: Report thread ID from worker thread to callbacks
Sergey Sharybin [Fri, 1 Apr 2016 13:23:08 +0000 (15:23 +0200)]
Cycles: Report thread ID from worker thread to callbacks

Main use case of this ID will be to emulate TLS which otherwise
would require having some platform-specific implementations which
is not always really optimal.

See notes about the argument in util_task.h.

5 years agoBMesh: improve path-select fill region w/ ngons
Campbell Barton [Fri, 1 Apr 2016 12:27:31 +0000 (23:27 +1100)]
BMesh: improve path-select fill region w/ ngons

Rewrote to work with ngons and and more complex topology, now uses separate function.
Fixes T48009.

5 years agoFix T48013: UV Sculpt Brush Does not appear in UV window - but does show up in uv...
Philipp Oeser [Fri, 1 Apr 2016 12:20:22 +0000 (14:20 +0200)]
Fix T48013: UV Sculpt Brush Does not appear in UV window - but does show up in uv panels (t, n)

Epic fail in recent rB2c3985 :/

To be backported to 2.77a!

5 years agoBuildbot: Explicitly disable tests on all platforms
Sergey Sharybin [Fri, 1 Apr 2016 08:33:44 +0000 (10:33 +0200)]
Buildbot: Explicitly disable tests on all platforms

They were never running anyway since there's no checkout of
tests folder. We should either make tweaks to buildbot master
to make it to send cloning commands for tests folder and keep
tests working (currently some of them are broken).

5 years agoUpdate stub for recent BPY API
Campbell Barton [Fri, 1 Apr 2016 07:56:48 +0000 (18:56 +1100)]
Update stub for recent BPY API

5 years agoCycles: Fix for missing pthread's spin on OSX
Sergey Sharybin [Fri, 1 Apr 2016 07:16:46 +0000 (09:16 +0200)]
Cycles: Fix for missing pthread's spin on OSX

5 years agoFix When using keying sets, the toggling "all items" in the array target only goes...
Joshua Leung [Thu, 31 Mar 2016 23:44:53 +0000 (12:44 +1300)]
Fix When using keying sets, the toggling "all items" in the array target only goes from the index value down, instead of keying all

5 years agoHide layers from UI in template
Campbell Barton [Thu, 31 Mar 2016 23:23:39 +0000 (10:23 +1100)]
Hide layers from UI in template

5 years agoCleanup: style/spelling
Campbell Barton [Thu, 31 Mar 2016 23:02:59 +0000 (10:02 +1100)]
Cleanup: style/spelling

5 years agoGeneric check for string being a Py keyword
Campbell Barton [Thu, 31 Mar 2016 22:43:11 +0000 (09:43 +1100)]
Generic check for string being a Py keyword

Driver code used incomplete list of Py keywords

5 years agoUse STRPREFIX macro for testing property name
Campbell Barton [Thu, 31 Mar 2016 22:24:50 +0000 (09:24 +1100)]
Use STRPREFIX macro for testing property name

5 years agoFix T48012: Knife Project crash
Campbell Barton [Thu, 31 Mar 2016 19:22:30 +0000 (06:22 +1100)]
Fix T48012: Knife Project crash

5 years agoFix NULL check before free
Campbell Barton [Thu, 31 Mar 2016 18:42:15 +0000 (05:42 +1100)]
Fix NULL check before free

5 years agoCycles: Fix wrong initialization order of mesh flags and object transform
Sergey Sharybin [Thu, 31 Mar 2016 15:54:03 +0000 (17:54 +0200)]
Cycles: Fix wrong initialization order of mesh flags and object transform

5 years agoCycles: Fix too many objects being considered an instance
Sergey Sharybin [Thu, 31 Mar 2016 15:46:22 +0000 (17:46 +0200)]
Cycles: Fix too many objects being considered an instance

5 years agoCycles: Fix compilation on Win32 after bitscan commit
Sergey Sharybin [Thu, 31 Mar 2016 14:46:59 +0000 (16:46 +0200)]
Cycles: Fix compilation on Win32 after bitscan commit

Need to revisit utility headers a bit more carefully and perhaps
move such utilities outside of simd-related headers.

5 years agoFix memory leak when assigning driver
Julian Eisel [Thu, 31 Mar 2016 14:41:50 +0000 (16:41 +0200)]
Fix memory leak when assigning driver

Also added NULL-checks for RNA paths, though they might be a bit paranoid.

5 years agoFix memory leak when calling new driver eyedropper
Julian Eisel [Thu, 31 Mar 2016 14:18:04 +0000 (16:18 +0200)]
Fix memory leak when calling new driver eyedropper

Would return OPERATOR_RUNNING_MODAL for non-modal operator.

5 years agoRemove the obsolete windows launcher
Martijn Berger [Thu, 31 Mar 2016 12:07:57 +0000 (14:07 +0200)]
Remove the obsolete windows launcher

5 years agoCMAKE disable building the windows launcher, fix type in delayloading of debug dll
Martijn Berger [Thu, 31 Mar 2016 12:05:38 +0000 (14:05 +0200)]
CMAKE disable building the windows launcher, fix type in delayloading of debug dll

5 years agoCycles: Name cleanup and some comments in BVH code
Sergey Sharybin [Mon, 22 Feb 2016 15:33:42 +0000 (16:33 +0100)]
Cycles: Name cleanup and some comments in BVH code

5 years agoCMAKE / msvc openmp, delay loading of openmp dll so we can set environment
Martijn Berger [Thu, 31 Mar 2016 11:45:33 +0000 (13:45 +0200)]
CMAKE / msvc openmp, delay loading of openmp dll so we can set environment
variable before it is loaded

5 years agoCycles: Add easy to use spin lock primitive
Sergey Sharybin [Mon, 22 Feb 2016 15:43:48 +0000 (16:43 +0100)]
Cycles: Add easy to use spin lock primitive

Currently unused, but will be handy for an upcoming changes.

It'll also be nice to be able to do scoped_lock() for both
Mutex and Spin, but currently it's not really easy to do,
need some changes in typedefs and such, will happen as a
separate commit.

5 years agoCycles: Expose array's capacity via getter function
Sergey Sharybin [Mon, 22 Feb 2016 15:40:32 +0000 (16:40 +0100)]
Cycles: Expose array's capacity via getter function

This way it's possible to query capacity of an array, which then
could be used for some smart re-allocation and reserve policies.

5 years agoCycles: Avoid per-split memory allocation for the new references list
Sergey Sharybin [Sun, 21 Feb 2016 15:46:16 +0000 (16:46 +0100)]
Cycles: Avoid per-split memory allocation for the new references list

5 years agoCycles: Pass BVH builder by const reference to spatial splitters
Sergey Sharybin [Sun, 21 Feb 2016 15:36:57 +0000 (16:36 +0100)]
Cycles: Pass BVH builder by const reference to spatial splitters

5 years agoCycles: Only sort indices when finding a best dimension to split
Sergey Sharybin [Mon, 22 Feb 2016 15:25:33 +0000 (16:25 +0100)]
Cycles: Only sort indices when finding a best dimension to split

This reduces amount of data being moved back and forth, which should
have positive effect on the performance.

5 years agoCycles: Wrap spatial split storage into own structure
Sergey Sharybin [Sun, 21 Feb 2016 14:39:02 +0000 (15:39 +0100)]
Cycles: Wrap spatial split storage into own structure

This has following advantages:

- Localizes all the run-time storage into a single structure,
  which could easily be extended further.

- Storage could be created per-thread, so once builder is
  threaded we wouldn't have any conflicts between threads.

- Global nature of the storage avoids memory re-allocation
  on the runtime, keeping builder as fast as possible.

Currently it's just API changes, which don't affect user at all.

5 years agoCycles: Use stack storage for temporary data on leaf creation
Sergey Sharybin [Sun, 21 Feb 2016 14:22:48 +0000 (15:22 +0100)]
Cycles: Use stack storage for temporary data on leaf creation

Uses new StackAllocator from util_stack_allocator. Some tweaks to the stack
storage size are possible, read notes in the code about this.

At this point we might want to rename allocator files to util_allocator_foo.c,
so the stay nicely grouped in the folder.

5 years agoCycles: Add STL allocator which uses stack memory
Sergey Sharybin [Wed, 30 Mar 2016 08:54:35 +0000 (10:54 +0200)]
Cycles: Add STL allocator which uses stack memory

At this point we might want to rename allocator files to
util_allocator_foo.c so the stay nicely grouped in the folder.

5 years agoCycles: Move non-vectorized bitscan() to util
Sergey Sharybin [Sun, 21 Feb 2016 14:13:09 +0000 (15:13 +0100)]
Cycles: Move non-vectorized bitscan() to util

This way we can use bitscan() from both vectorized and non-vectorized
code, which applies to both kernel and host code.

5 years agoCycles: Aligned vector was not covered by guarded stat
Sergey Sharybin [Wed, 30 Mar 2016 08:46:56 +0000 (10:46 +0200)]
Cycles: Aligned vector was not covered by guarded stat

This was making stats printed by the logging being wrong: they did not
include such memory as BVH storage.

5 years agocmake fix full debug builds on msvc
Martijn Berger [Thu, 31 Mar 2016 06:12:41 +0000 (08:12 +0200)]
cmake fix full debug builds on msvc

5 years agoFix T47985: VSE GL-render scene strip hangs
Campbell Barton [Thu, 31 Mar 2016 04:35:47 +0000 (15:35 +1100)]
Fix T47985: VSE GL-render scene strip hangs

Regression in d5f1b9c22,
threading deadlock rendering a scene from the OpenGL preview.

5 years agoUsual ui messages fixes/tweaks.
Bastien Montagne [Wed, 30 Mar 2016 21:39:54 +0000 (23:39 +0200)]
Usual ui messages fixes/tweaks.

5 years agolibquery foreach looper: in recursive case, do not bother with NULL id pointers!
Bastien Montagne [Wed, 30 Mar 2016 19:36:09 +0000 (21:36 +0200)]
libquery foreach looper: in recursive case, do not bother with NULL id pointers!

5 years agoFix T47983: Particles - Emit from Verts emits double on one vert.
Bastien Montagne [Wed, 30 Mar 2016 18:59:07 +0000 (20:59 +0200)]
Fix T47983: Particles - Emit from Verts emits double on one vert.

When non-random, particle distribution used a small start offset (to avoid
zero-weight faces), which is fine with "continuous" entities like faces, but not
for discrete ones like vertices - in that case it was generating some undesired
"jump" over a few verts in case step was small enough
(i.e. total number of verts/particles was big enough).

5 years agoUse Ctrl-Shift-RMB for to enable 'Fill Region'
Campbell Barton [Wed, 30 Mar 2016 17:30:33 +0000 (04:30 +1100)]
Use Ctrl-Shift-RMB for to enable 'Fill Region'

5 years agoShortest Path Select: option to select all paths between 2 elements
Campbell Barton [Wed, 30 Mar 2016 17:21:02 +0000 (04:21 +1100)]
Shortest Path Select: option to select all paths between 2 elements

This option selects all paths between source/destination which are no longer than the path found.

Handy for selecting meshes with a grid-topology.

5 years agoPartly fix (unreported) particles not updating correctly when changing settings.
Bastien Montagne [Wed, 30 Mar 2016 15:10:54 +0000 (17:10 +0200)]
Partly fix (unreported) particles not updating correctly when changing settings.

Point-cached particles (those using simulations) would not update at all outside of
first frame, due to PSYS_RECALC_RESET flag being ingnored in `system_step()`...

For some mysterious reasons, udate is still non-fully functional outside of startframe
(e.g. changing face distribution between random and jittered), but at least when choosing
'Vertices' you get particles from verts and not faces!

5 years agoParticles: Fix broken grid distribution in some case from own recent rB201d3938622.
Bastien Montagne [Wed, 30 Mar 2016 14:54:13 +0000 (16:54 +0200)]
Particles: Fix broken grid distribution in some case from own recent rB201d3938622.

5 years agoCycles: Resumable render implementation for Cycles
Sergey Sharybin [Wed, 30 Mar 2016 13:55:12 +0000 (15:55 +0200)]
Cycles: Resumable render implementation for Cycles

This feature is also known by the name Samples Offset, which allows
artists to render animation with given amount of samples N, but then
render more samples, starting from N and ending with M (where M > N)
and merge renders together as if they rendered exactly M samples.

Surely such effect could be achieved by changing Seed variable, but
that has possible issues with correlation artifacts and requiring to
manually deal with per render layer samples and such.

While we can't support all possible renderfarm-related features in
Cycles it's nice to support really commonly used stuff.

Here's a command how to run Blender with the new feature enabled:

  blender -- --cycles-resumable-num-chunks 24 --cycles-resumable-current-chunk 2

This command will divide samples range in 24 parts and render
range #2 (chunk number is 1-based).

This feature might be changed a bit after we'll do some tests here
in the studio with it.

5 years agoFix T47940: Custom bone shapes, select error w/ Open NVidia drivers
Campbell Barton [Wed, 30 Mar 2016 13:55:48 +0000 (00:55 +1100)]
Fix T47940: Custom bone shapes, select error w/ Open NVidia drivers

Latest nouveau drivers have a bug here, use occlusion queries.

5 years agoCMake cleanup target_link_libraries_decoupled
Martijn Berger [Wed, 30 Mar 2016 13:15:07 +0000 (15:15 +0200)]
CMake cleanup target_link_libraries_decoupled

5 years agoFix T46623: OSX incorrect
Campbell Barton [Wed, 30 Mar 2016 11:44:44 +0000 (22:44 +1100)]
Fix T46623: OSX incorrect

CMake's PYTHON_EXECUTABLE wasn't set.

5 years agoFix T47993: noise_vector ignores random seed
Campbell Barton [Wed, 30 Mar 2016 09:37:54 +0000 (20:37 +1100)]
Fix T47993: noise_vector ignores random seed

Replace hard coded values with offsets derived from the random seed.

5 years agoFix T48000: Eyedropper sample-merged ignored at first
Campbell Barton [Wed, 30 Mar 2016 06:28:01 +0000 (17:28 +1100)]
Fix T48000: Eyedropper sample-merged ignored at first

5 years agoFix transform center2d for 2d views
Campbell Barton [Tue, 29 Mar 2016 20:15:33 +0000 (07:15 +1100)]
Fix transform center2d for 2d views

While this didn't show up as a bug, the center2d was being calculated with a zero aspect,
causing TransInfo.center2d to be NAN.

5 years agoFix T47814: VSE Scene 'Use Sequence' fails
Campbell Barton [Tue, 29 Mar 2016 19:59:36 +0000 (06:59 +1100)]
Fix T47814: VSE Scene 'Use Sequence' fails

Conflict with flags between depsgraph and sequencer caused error.
Now pass state of sequencer parents to avoid recursion.

5 years agoFix T47961: Wipe effects should have 2 inputs
Campbell Barton [Tue, 29 Mar 2016 19:33:35 +0000 (06:33 +1100)]
Fix T47961: Wipe effects should have 2 inputs

5 years agoFix T47967: Select next active fails in some cases
Campbell Barton [Tue, 29 Mar 2016 17:56:18 +0000 (04:56 +1100)]
Fix T47967: Select next active fails in some cases

For cases when there are multiple matches,
find the closest match (with increasingly fuzzy tests) instead of failing.

5 years agoBuildbot: Attempt to work-around unsupported clang on OSX machine
Sergey Sharybin [Tue, 29 Mar 2016 17:46:10 +0000 (19:46 +0200)]
Buildbot: Attempt to work-around unsupported clang on OSX machine

Ideally this would need to be fixed by nvcc itself. but they didn't
do that for a long time.

5 years agoFix error in ghash/gset_ensure_p_ex
Campbell Barton [Tue, 29 Mar 2016 16:00:26 +0000 (03:00 +1100)]
Fix error in ghash/gset_ensure_p_ex

The key is needed in the case the ghash resizes.
Caused regression T47984.

5 years agoFix T47902: Particle grid not using modifier stack, Take II.
Bastien Montagne [Tue, 29 Mar 2016 15:45:56 +0000 (17:45 +0200)]
Fix T47902: Particle grid not using modifier stack, Take II.

Now only fix correct handling of use_modifier_stack for grid distribution,
fixing it globally breaks all existing edited hair systems. :/

5 years agoRevert "Fix T47902: Particle grid not using modifier stack."
Bastien Montagne [Tue, 29 Mar 2016 15:33:08 +0000 (17:33 +0200)]
Revert "Fix T47902: Particle grid not using modifier stack."

This reverts commit 2bd3acf7cd27c0c3ee77b10d56b91c3b03226d39.

Commit is valid in theory - but in practice, it means nearly all edited hair systems
would need to be re-created from scratch... Not nice, so better revert and note in code
that particle distribution is ugly and does not respect 'use modifier stack' option in most cases.

5 years agoGPencil New Stroke Smoothing: Don't perform smoothing on pressure values
Joshua Leung [Tue, 29 Mar 2016 14:21:33 +0000 (03:21 +1300)]
GPencil New Stroke Smoothing: Don't perform smoothing on pressure values

As noted by Antonio and Daniel, performing smoothing on the pressure values
for new strokes doesn't work that great. From an artist POV, it is apparently
"very strange that line thickness shrink suddenly after drawing it".

5 years agoDriver Mapping Types: Added temporary icons to break up the two types of mapping...
Joshua Leung [Tue, 29 Mar 2016 14:18:01 +0000 (03:18 +1300)]
Driver Mapping Types: Added temporary icons to break up the two types of mapping behaviours (modal vs manual)

5 years agoRMB Menu: Add icons for delineating each cluster of options in this menu
Joshua Leung [Tue, 29 Mar 2016 14:14:52 +0000 (03:14 +1300)]
RMB Menu: Add icons for delineating each cluster of options in this menu

From T33052 by Harley Acheson (harley)