2 years agoCycles: Don't use guarded vector for statically initialized data v2.78a
Sergey Sharybin [Mon, 24 Oct 2016 12:18:22 +0000 (14:18 +0200)]
Cycles: Don't use guarded vector for statically initialized data

This will confuse hell of a guarded allocators because it is possible
to have allocation happened prior to Blender's guarded allocator is
fully initialized.

This was causing crashes and assert failures when running blender
with fully guarded memory allocator.

2 years agoCycles: Fix shadowing variable which also causes use of uninitialized variable
Sergey Sharybin [Mon, 24 Oct 2016 12:04:31 +0000 (14:04 +0200)]
Cycles: Fix shadowing variable which also causes use of uninitialized variable

Was causing wrong aperture for panorama cameras.

Seems to be a regression in 371d357.

2 years agoFix: Grease Pencil palettes were missing a RNA path callback
Joshua Leung [Thu, 13 Oct 2016 12:18:53 +0000 (01:18 +1300)]
Fix: Grease Pencil palettes were missing a RNA path callback

2 years agoFix Cycles address space OpenCL error after recent fix.
Brecht Van Lommel [Mon, 24 Oct 2016 11:46:45 +0000 (13:46 +0200)]
Fix Cycles address space OpenCL error after recent fix.

2 years agoCycles: Fix static initialization order fiasco
Sergey Sharybin [Mon, 24 Oct 2016 11:43:55 +0000 (13:43 +0200)]
Cycles: Fix static initialization order fiasco

Initialization order of global stats and node types was not strictly
defined and it was possible to have node types initialized first and
stats after that. This will zero out memory which was allocated from
the statistics causing assert failure when de-initializing node types.

2 years agoCycles: Fix uninitialized variable from the previous commit
Sergey Sharybin [Mon, 24 Oct 2016 10:54:24 +0000 (12:54 +0200)]
Cycles: Fix uninitialized variable from the previous commit

2 years agoBlender 2.78: Point submodules to a new hash
Sergey Sharybin [Mon, 24 Oct 2016 10:40:14 +0000 (12:40 +0200)]
Blender 2.78: Point submodules to a new hash

2 years agoCycles: Remove explicit std:: from types where possible
Sergey Sharybin [Mon, 24 Oct 2016 10:31:11 +0000 (12:31 +0200)]
Cycles: Remove explicit std:: from types where possible

We have our own abstraction level on top of the STL's implementation.
This commit will guarantee our tweaks are used for all cases.

2 years agoBlender 2.78: Port style cleanup from Cycles
Sergey Sharybin [Mon, 24 Oct 2016 10:38:33 +0000 (12:38 +0200)]
Blender 2.78: Port style cleanup from Cycles

Kinda nice to have official release code to be really clean.

2 years agoFix T49818: Crash when rendering with motion blur
Sergey Sharybin [Mon, 24 Oct 2016 09:46:26 +0000 (11:46 +0200)]
Fix T49818: Crash when rendering with motion blur

It was possible to have non-initialized unaligned BVH split
to be used when regular BVH split SAH was inf. Now we ensure
that unaligned splitter is only used when it's really initialized.

It's a regression and should be in 2.78a.

2 years agoCycles: Cleanup, spaces
Sergey Sharybin [Mon, 24 Oct 2016 09:10:35 +0000 (11:10 +0200)]
Cycles: Cleanup, spaces

2 years agoFix T49827L Crash linking material while in Material viewport shading mode
Sergey Sharybin [Mon, 24 Oct 2016 08:09:13 +0000 (10:09 +0200)]
Fix T49827L Crash linking material while in Material viewport shading mode

Material linking might and does change the way how drawObject is calculated
but does not tag drawObject for recalculation in any way.

Now use dependency graph to tag draw object for reclaculation. Currently do
this using OB_RECALC_DATA taq since tagging is not very granular yet. In the
future we can introduce ore granular tagging in the new dependency graph

Simple and safe for 2.78a.

2 years agoFix mistake in BKE_mesh_new_from_object handling of materials in MetaBall case.
Bastien Montagne [Mon, 24 Oct 2016 08:06:00 +0000 (10:06 +0200)]
Fix mistake in BKE_mesh_new_from_object handling of materials in MetaBall case.

Typo, spoted by Coverity scan.

To be backported to 2.78a.

2 years agoFix T49750: Cycles wrong ray differentials for perspective and stereo cameras.
Brecht Van Lommel [Sat, 22 Oct 2016 13:59:23 +0000 (15:59 +0200)]
Fix T49750: Cycles wrong ray differentials for perspective and stereo cameras.

2 years agoFix T49656: Crash when starting playback while using JACK audio with A/V sync
Jörg Müller [Sat, 22 Oct 2016 13:00:32 +0000 (15:00 +0200)]
Fix T49656: Crash when starting playback while using JACK audio with A/V sync

When ED_screen_animation_play is called from wm_event_do_handlers,ScrArea *sa = CTX_wm_area(C); is NULL in ED_screen_animation_timer.
Informing the audio system in CTX_data_main_set, that a new Main has been set.

2 years agoFix T49764: Audio strips crackle when animating the volume
Jörg Müller [Sat, 22 Oct 2016 11:38:41 +0000 (13:38 +0200)]
Fix T49764: Audio strips crackle when animating the volume

- Implemented linear interpolation for volume changes in the software
- Using this in the software device.

2 years agoFix T49789: Compositor mix node interpolation bug
Sergey Sharybin [Fri, 21 Oct 2016 15:56:09 +0000 (17:56 +0200)]
Fix T49789: Compositor mix node interpolation bug

2 years agoFix T49797: Exception from scene update handler might leak external engine descriptors
Sergey Sharybin [Thu, 20 Oct 2016 11:32:52 +0000 (13:32 +0200)]
Fix T49797: Exception from scene update handler might leak external engine descriptors

This was causing memory leaks in Cycles.

Some more detailed information in the comment in the code.

Seems to be safe and nice enough for 2.78a.

2 years agoFix T49793 : Fix enabling SSE2 globally for msvc.
lazydodo [Wed, 19 Oct 2016 16:06:45 +0000 (10:06 -0600)]
Fix T49793 : Fix enabling SSE2 globally for msvc.

When feeding msvc both /arch:sse2 and /arch:sse it's not smart enough to pick the best option, just goes with the last option

2 years agoCycles: use near clipping distance in panorama camera.
Scott Wu [Fri, 14 Oct 2016 22:11:42 +0000 (00:11 +0200)]
Cycles: use near clipping distance in panorama camera.

Reviewed By: sergey, brecht, dfelinto

Differential Revision:

2 years ago Blender 2.78a release: Use proper "a' on the splash
Sergey Sharybin [Wed, 19 Oct 2016 14:56:44 +0000 (16:56 +0200)]
 Blender 2.78a release: Use proper "a' on the splash

2 years agoBlender 2.78a release: Update addons submodule hash
Sergey Sharybin [Wed, 19 Oct 2016 13:16:04 +0000 (15:16 +0200)]
Blender 2.78a release: Update addons submodule hash

2 years agoFix T49775: Appending data with internal dependency cycles prevents correct clearing...
Bastien Montagne [Wed, 19 Oct 2016 12:29:43 +0000 (14:29 +0200)]
Fix T49775: Appending data with internal dependency cycles prevents correct clearing of linked data-blocks.

This is not a simple fix, but imho still needs to be backported to 2.78a...

2 years ago[windows] Create A Blender Desktop Shortcut in the msi installer , fixes T49522
lazydodo [Tue, 18 Oct 2016 15:21:58 +0000 (09:21 -0600)]
[windows] Create A Blender Desktop Shortcut in the msi installer , fixes T49522

2 years agoFix T49722: Appending Bug (Groups).
Bastien Montagne [Mon, 17 Oct 2016 12:49:35 +0000 (14:49 +0200)]
Fix T49722: Appending Bug (Groups).

One day we'll have to reconsider why some many 'real' ID usages are not
refcounting... :(

To be backported to 2.78a.

2 years agoFix T49738: Hair Add Brush doesn't work
Sergey Sharybin [Mon, 17 Oct 2016 10:37:50 +0000 (12:37 +0200)]
Fix T49738: Hair Add Brush doesn't work

the issue was caused by wrong default value for brush particle count
which was clamped on display from 0 to 1. This is technically a regression
but how to port this to 2.78a?

2 years agoFix T49746: crash loading user preferences with missing operators.
Brecht Van Lommel [Sun, 16 Oct 2016 19:19:52 +0000 (21:19 +0200)]
Fix T49746: crash loading user preferences with missing operators.

2 years agoFix assert in the wrong place, should be moved earlier to do anything.
Chase Willden [Sun, 16 Oct 2016 13:50:53 +0000 (15:50 +0200)]
Fix assert in the wrong place, should be moved earlier to do anything.

Reviewed By: brecht

Differential Revision:

2 years agoFix missing outliner redraw when adding VSE strip
Julian Eisel [Sun, 16 Oct 2016 12:39:06 +0000 (14:39 +0200)]
Fix missing outliner redraw when adding VSE strip

Needed for outliner "Sequence" display mode.

2 years agoFix T49571: 2d stabilize keys not visible in the Graph Editor and Dope Sheet
Sergey Sharybin [Fri, 14 Oct 2016 15:22:57 +0000 (17:22 +0200)]
Fix T49571: 2d stabilize keys not visible in the Graph Editor and Dope Sheet

2 years agoFix T49601: Material menu length problem.
Bastien Montagne [Fri, 14 Oct 2016 08:29:51 +0000 (10:29 +0200)]
Fix T49601: Material menu length problem.

Regression from rB69b66d549bcc8, was supposed to be non-functionnal
change, so not sure why search menu was reduced here? For now, restore
to 2.77 width.

2 years agoFix T49646: Switching from large to small image can get stuck zoom at max zoom distance.
Anthony Edlin [Thu, 13 Oct 2016 22:54:05 +0000 (00:54 +0200)]
Fix T49646: Switching from large to small image can get stuck zoom at max zoom distance.

Allow for zooming in at max zoom distance.

Reviewed By: Severin

Differential Revision:

2 years agoFix T49534: 2.78 Wrong texture scaling in material viewport
Sergey Sharybin [Thu, 13 Oct 2016 16:31:53 +0000 (18:31 +0200)]
Fix T49534: 2.78 Wrong texture scaling in material viewport

Seems to be a bug in original implementation of a830280: code was always
using tangent space instead of UV map because it had the same name. Now
prefer UVMap over tangent because this is how Cycles works. At least it's
closer to.

Not sure it the save+reload issue is still relevant after this fix, that
needs to be double-checked.

Thanks @dfelinto for looking into the report and simplifying the case.

Should be included into 2.78a.

2 years agoFix OLD pre-git links in the API, add missing factory-startup option to blender execu...
Aaron Carlisle [Thu, 13 Oct 2016 15:53:30 +0000 (17:53 +0200)]
Fix OLD pre-git links in the API, add missing factory-startup option to blender executions.

Reviewers: mont29

Reviewed By: mont29

Tags: #bf_blender, #python, #infrastructure:_websites

Differential Revision:

2 years agoFix T49635: column_flow Layout - last column is too small.
Bastien Montagne [Thu, 13 Oct 2016 08:21:38 +0000 (10:21 +0200)]
Fix T49635: column_flow Layout - last column is too small.

Column flow layout was abuse ui_item_fit in a weird way, which was
broken for last column items.

Now rather use own code, which basically spread available width as
equally as possible between all columns.

2 years agoCleanup: UI layout: remove unsed and confusing parameter.
Bastien Montagne [Wed, 12 Oct 2016 19:28:11 +0000 (21:28 +0200)]
Cleanup: UI layout: remove unsed and confusing parameter.

Things are complicated enough like that, no need to add useless noise on
top of it!

2 years agoNormal edit modifier: Fix relation builder for the new dependency graph
Sergey Sharybin [Fri, 30 Sep 2016 09:13:28 +0000 (11:13 +0200)]
Normal edit modifier: Fix relation builder for the new dependency graph

2 years agoAmmend to rB00dc0666b3fe: forgot to fix boid->ground of first particle.
Bastien Montagne [Sat, 8 Oct 2016 17:13:50 +0000 (19:13 +0200)]
Ammend to rB00dc0666b3fe: forgot to fix boid->ground of first particle.

This code is confusing, such dirty details should not sneak out of
particles' own private code. :(

2 years agoFix T49631: radial control operators not using DPI properly.
Brecht Van Lommel [Wed, 12 Oct 2016 18:15:38 +0000 (20:15 +0200)]
Fix T49631: radial control operators not using DPI properly.

2 years agoFix T49640: Cycles constant folding incorrect for texture coordinates.
Brecht Van Lommel [Wed, 12 Oct 2016 16:36:41 +0000 (18:36 +0200)]
Fix T49640: Cycles constant folding incorrect for texture coordinates.

2 years agoFix T49636: material draw mode crash with displacement and missing group input node.
Brecht Van Lommel [Wed, 12 Oct 2016 11:10:09 +0000 (13:10 +0200)]
Fix T49636: material draw mode crash with displacement and missing group input node.

2 years agoCycles: Get rid of ifdef-ed noinline policy
Sergey Sharybin [Wed, 12 Oct 2016 10:15:24 +0000 (12:15 +0200)]
Cycles: Get rid of ifdef-ed noinline policy

2 years agoCycles: Fix use of uninitialized variable in SSS
Sergey Sharybin [Wed, 12 Oct 2016 10:12:28 +0000 (12:12 +0200)]
Cycles: Fix use of uninitialized variable in SSS

When ray hits curve segment with SSS shader it was possible to have
uninitialized hit_P variable used for sampling.

Seems that was a reason of our headache of difference between AVX2
and SSE4 render results here, so now we can revert all the nasty
ifdef-ed inline policies.

2 years agoFix T49622: Grease pencil not rendering out of VSE
Sergey Sharybin [Wed, 12 Oct 2016 08:01:30 +0000 (10:01 +0200)]
Fix T49622: Grease pencil not rendering out of VSE

2 years agoFix T49502: file browser on OS X not highlighting external drives.
Brecht Van Lommel [Tue, 11 Oct 2016 22:07:11 +0000 (00:07 +0200)]
Fix T49502: file browser on OS X not highlighting external drives.

2 years agoFix T49629: Graph editor normalize function doesn't work on f-curves with a constant...
Sergey Sharybin [Tue, 11 Oct 2016 15:08:00 +0000 (17:08 +0200)]
Fix T49629: Graph editor normalize function doesn't work on f-curves with a constant key value

Technically it is a regression in behavior and should be 2.78a.

2 years agoMake console message more clear for --scene argument
Sergey Sharybin [Tue, 11 Oct 2016 12:48:15 +0000 (14:48 +0200)]
Make console message more clear for --scene argument

2 years agoFix T49623: Immediately crash trying to render attached file in Cycles
Sergey Sharybin [Tue, 11 Oct 2016 09:54:04 +0000 (11:54 +0200)]
Fix T49623: Immediately crash trying to render attached file in Cycles

Original fix in this area was not really complete (but was the safest at
the release time). Now all the crazy configurations of slots going out
of sync should be handled here.

2 years agoFix viewport camera gets out of sync in certain cases
Sergey Sharybin [Mon, 10 Oct 2016 12:47:03 +0000 (14:47 +0200)]
Fix viewport camera gets out of sync in certain cases

It was possible to have two viewports opened and start using Ctrl-0
to make different objects an active camera for the viewport. This
worked fine for viewports which had decoupled camera from the scene,
but if viewport was locked to scene camera it was possible to run into
situation when two different viewports are locked to scene camera but
had different v3d->camera pointers.

2 years agoFix T49609: Point density textures: vertex colors are not properly averaged in BI
Daisuke Takahashi [Sun, 9 Oct 2016 11:16:19 +0000 (13:16 +0200)]
Fix T49609: Point density textures: vertex colors are not properly averaged in BI

Nice to have in 2.78a, though not a regression.

2 years agoFix T49608: runtime-only particle's boid->ground Object pointer was left dangling...
Bastien Montagne [Sat, 8 Oct 2016 13:18:35 +0000 (15:18 +0200)]
Fix T49608: runtime-only particle's boid->ground Object pointer was left dangling to invalid value in read code...

2 years agoFix a few compile errors with C++11 on macOS.
Brecht Van Lommel [Wed, 14 Sep 2016 09:41:20 +0000 (11:41 +0200)]
Fix a few compile errors with C++11 on macOS.

2 years agoBLI_task: fix case were some pool could work in more threads than allowed.
Bastien Montagne [Sat, 8 Oct 2016 12:46:01 +0000 (14:46 +0200)]
BLI_task: fix case were some pool could work in more threads than allowed.

We were checking for number of tasks from given pool already active, and
then atomically increasing it if allowed - this is not correct, number
could be increased by another thread between check and atomic op!

Atomic primitives are nice, but you must be very careful with *how* you
use them... Now we atomically increase counter, check result, and if we
end up over max value, abort and decrease counter again.

Spotted by Sergey, thanks!

2 years agoCycles: Fix OpenCL split kernel compilation after recent CUDA 8 performance fix
Lukas Stockner [Fri, 7 Oct 2016 16:50:43 +0000 (18:50 +0200)]
Cycles: Fix OpenCL split kernel compilation after recent CUDA 8 performance fix

2 years agoDatablock management: remove 'proxy_from' pointer from 'is ID used' checks.
Bastien Montagne [Fri, 7 Oct 2016 08:20:40 +0000 (10:20 +0200)]
Datablock management: remove 'proxy_from' pointer from 'is ID used' checks.

Pretty much same reason as for the 'from' pointer of shapekeys - runtime
data creating loops and 'ghost' dependencies between datablocks.

We need to handle them in cases like remapping, but whall not take them
into account to check dependencies between datablocks... :/

2 years agoFix T49595: bpy - negative skin_vertices radius crashes Blender
Bastien Montagne [Fri, 7 Oct 2016 08:19:22 +0000 (10:19 +0200)]
Fix T49595: bpy - negative skin_vertices radius crashes Blender

This is unsigned value (negative radius does not have much sense anyway!).

2 years agoFix wrong separator line width after drawing vec icon
Julian Eisel [Thu, 6 Oct 2016 20:44:15 +0000 (22:44 +0200)]
Fix wrong separator line width after drawing vec icon

Was visible in Dynamic Context Menu add-on.

2 years agoFix T49523: very slow normal map tangent computation for rendering in 2.78.
Brecht Van Lommel [Thu, 6 Oct 2016 01:09:46 +0000 (03:09 +0200)]
Fix T49523: very slow normal map tangent computation for rendering in 2.78.

2 years agoFix T49501: Animations imported via alembic render with wrong or no motion blur
Sergey Sharybin [Wed, 5 Oct 2016 10:37:09 +0000 (12:37 +0200)]
Fix T49501: Animations imported via alembic render with wrong or no motion blur

2 years ago[msvc] make.bat, no need to set the cuda path at all, cmake will figure it out on...
lazydodo [Tue, 4 Oct 2016 19:30:38 +0000 (13:30 -0600)]
[msvc] make.bat, no need to set the cuda path at all, cmake will figure it out on it's own.

2 years ago[msvc] make.bat remove mixed cuda 7.5/8.0 build for release since all kernels can...
lazydodo [Tue, 4 Oct 2016 17:51:04 +0000 (11:51 -0600)]
[msvc] make.bat remove mixed cuda 7.5/8.0 build for release since all kernels can now be properly build with 8.0

2 years agoCleanup: Update links to online py API doc, and remove old commented stuff.
Bastien Montagne [Tue, 4 Oct 2016 14:44:24 +0000 (16:44 +0200)]
Cleanup: Update links to online py API doc, and remove old commented stuff.

2 years agoFix T49553: Blender 2.78 crashes when File->Data Previews ->Refresh Datablock Previews
Bastien Montagne [Tue, 4 Oct 2016 13:03:34 +0000 (15:03 +0200)]
Fix T49553: Blender 2.78 crashes when File->Data Previews ->Refresh Datablock Previews

New recursive iteration over IDs in BKE_library_foreach_ID_link() was
broken by the infamous nodetree case. We cannot really recusively call
this function in that case, so better to deffer handling of
non-datablock NodeTrees as if real IDs here.

Also fixed initial ID not being stored as handled, in rare cases this
could also lead to infinite looping.

To be backported to 2.78a.

2 years agoCycles CUDA: make CUDA 8.0 the officially supported version for all platforms.
Brecht Van Lommel [Mon, 3 Oct 2016 20:14:43 +0000 (22:14 +0200)]
Cycles CUDA: make CUDA 8.0 the officially supported version for all platforms.

2 years agoFix Cycles CUDA performance on CUDA 8.0.
Brecht Van Lommel [Sun, 2 Oct 2016 12:48:39 +0000 (14:48 +0200)]
Fix Cycles CUDA performance on CUDA 8.0.

Mostly this is making inlining match CUDA 7.5 in a few performance critical
places. The end result is that performance is now better than before, possibly
due to less register spilling or other CUDA 8.0 compiler improvements.

On benchmarks scenes, there are 3% to 35% render time reductions. Stack memory
usage is reduced a little too.

Reviewed By: sergey

Differential Revision:

2 years agoFix memory leak caused by unknown opeartor of keymap item
Julian Eisel [Mon, 3 Oct 2016 15:52:46 +0000 (17:52 +0200)]
Fix memory leak caused by unknown opeartor of keymap item

2 years agoFix T49548: Entering Cycles Rendered Viewport Unlinks Material from Objects.
Bastien Montagne [Mon, 3 Oct 2016 15:38:14 +0000 (17:38 +0200)]
Fix T49548: Entering Cycles Rendered Viewport Unlinks Material from Objects.

We *always* want to increase mat user count when from Object (and not
Data), because in that case we are moving mat from object to temp
generated mesh, material can never be 'borrowed' in that case.

To be backported to 2.78a

2 years agoFix missing operator-type registration
Julian Eisel [Mon, 3 Oct 2016 14:34:51 +0000 (16:34 +0200)]
Fix missing operator-type registration

Removed in a7dbc0704f217a, but only should've removed default keymap entry.

2 years agoFix T49506: Remove unused File Browser theme settings
Julian Eisel [Mon, 3 Oct 2016 11:26:52 +0000 (13:26 +0200)]
Fix T49506: Remove unused File Browser theme settings

If I didn't miss anything these are indeed not used. Old themes should still work (will only print info on redundant theme defines into console), but updated non-contrib themes already.

2 years agoFix missing new eyedropper keymap entry in
Bastien Montagne [Mon, 3 Oct 2016 10:29:18 +0000 (12:29 +0200)]
Fix missing new eyedropper keymap entry in

Missing from rBe9bcdcdbbd91d9.

2 years agoFix T49520: broken vertex colors in the game engine.
Brecht Van Lommel [Sat, 1 Oct 2016 20:40:35 +0000 (22:40 +0200)]
Fix T49520: broken vertex colors in the game engine.

2 years ago[Fix unreported bug] Snap align with normal was not working in derivade mesh
Germano Cavalcante [Sat, 1 Oct 2016 19:50:34 +0000 (16:50 -0300)]
[Fix unreported bug] Snap align with normal was not working in derivade mesh

The `use_snapp_align_rotation` option was using only the first vertex

2 years ago[msvc] make.bat - Fix:msbuild platform wasn't set when the architecture was auto...
lazydodo [Sat, 1 Oct 2016 17:21:42 +0000 (11:21 -0600)]
[msvc] make.bat - Fix:msbuild platform wasn't set when the architecture was auto detected.

2 years agoFix T49502: file browser on OS X not highlighting system folders and bookmarks.
Brecht Van Lommel [Sat, 1 Oct 2016 17:14:38 +0000 (19:14 +0200)]
Fix T49502: file browser on OS X not highlighting system folders and bookmarks.

2 years ago[MSVC] Make.bat updates.
lazydodo [Sat, 1 Oct 2016 16:22:28 +0000 (10:22 -0600)]
[MSVC] Make.bat updates.
- Explicitly specify the platform for msbuild, to facilitate builds with just the Visual C++ Build Tools installed.
- When vs2013 is not found, try looking for 2015 as a fallback
- Clear up any batch variables that might have been set from previous runs

2 years agoFix wrong Cycles GLSL pointiness, still not supported but should be neutral 0.5.
Brecht Van Lommel [Sat, 1 Oct 2016 12:44:11 +0000 (14:44 +0200)]
Fix wrong Cycles GLSL pointiness, still not supported but should be neutral 0.5.

2 years agoFix MSVC compiler warning due to using */* to start comment.
Brecht Van Lommel [Mon, 26 Sep 2016 01:42:09 +0000 (03:42 +0200)]
Fix MSVC compiler warning due to using */* to start comment.

2 years agoCUEW: Use latest upstream version
Sergey Sharybin [Fri, 30 Sep 2016 08:36:11 +0000 (10:36 +0200)]
CUEW: Use latest upstream version

Fixes typo in README :)

Thanks to @jesterKing!

2 years agoFix T49489: Pose marker in camera action + marker bound to camera -> crash.
Bastien Montagne [Fri, 30 Sep 2016 08:11:29 +0000 (10:11 +0200)]
Fix T49489: Pose marker in camera action + marker bound to camera -> crash.

'camera' Object pointer of TimeMarkers is a 'temp' hack since Durian project...
Would need to be either made definitive now, or removed/reworked/whatever.

But since we intend to use that object pointer for other needs, and current code
could lead to crashing .blend files, for now let's fix that mess (was missing
some bits in read code, and also totally ignored in libquery code).

Should be safe for 2.78a.

2 years agoUPBGE: Fix crash when calling shade_light texture when mtex has no tex.
Ulysse Martin [Fri, 30 Sep 2016 05:40:17 +0000 (07:40 +0200)]
UPBGE: Fix crash when calling shade_light texture when mtex has no tex.

2 years agoCycles: Support earlier tile rendering termination on cancel
Sergey Sharybin [Thu, 29 Sep 2016 14:00:25 +0000 (16:00 +0200)]
Cycles: Support earlier tile rendering termination on cancel

It will discard the whole tile, but it's still kind of more friendly than
fully locked interface (sort of) for until tile is fully sampled.

Sorry if it causes PITA to merge for the opencl split work, but this issue
bothering a lot when collecting benchmarks.

2 years agoCycles: Fix typo in shader cancel routines
Sergey Sharybin [Thu, 29 Sep 2016 13:48:10 +0000 (15:48 +0200)]
Cycles: Fix typo in shader cancel routines

2 years agoAdopt referenced scene in the context when evaluating sequences within a Scene Strip
Sergey Sharybin [Thu, 29 Sep 2016 13:00:03 +0000 (15:00 +0200)]
Adopt referenced scene in the context when evaluating sequences within a Scene Strip

This change makes it so that when the sequences within a Scene strip are
evaluated, they use the Scene that they come from as the context as opposed
the Scene that the Scene strip is in. This is necessary, for example, in the
case of the MulticamSelector where it needs to reference strips in the original
Scene as opposed to the Scene where the Scene strip is located.

Patch by @Matt (HyperSphere), thanks!

2 years agoCycles: Improve OpenCL line information handling
Sergey Sharybin [Thu, 29 Sep 2016 08:20:24 +0000 (10:20 +0200)]
Cycles: Improve OpenCL line information handling

Previously it was falling back to just a path after #include
statement was finished. Now we fall back to a proper current
file name after dealing with the preprocessor statement.

2 years agoUpdate source tgz builder script
Sergey Sharybin [Thu, 29 Sep 2016 08:05:42 +0000 (10:05 +0200)]
Update source tgz builder script

Was broken since splitting BKE_blender_version from BKE_blender.

2 years ago[MSVC] make.bat updates.
lazydodo [Thu, 29 Sep 2016 01:57:25 +0000 (19:57 -0600)]
[MSVC] make.bat updates.

- The build folder name used to be depended on the order of the parameters, this is now normalized to
"build_windows_[Release/Full/Lite/Headless/Cycles/Bpy]_[x86/x64]_vc[12/14]_[Release/Debug]" regardless of the order of the parameters.

-Use CUDA8 for all kernels when building the release convenience target with visual studio 2015

2 years agoFix T49478: triangulate of face hangs Blender.
Bastien Montagne [Wed, 28 Sep 2016 18:03:59 +0000 (20:03 +0200)]
Fix T49478: triangulate of face hangs Blender.

Another case of float imprecision leading to endless loop. INcreasing a bit 'noise threashold' seems to work OK.

Not a regression, but might be nice to have in 2.78a.

2 years agoCycles: Fix compilation error with minimal feature set
Sergey Sharybin [Wed, 28 Sep 2016 15:03:42 +0000 (17:03 +0200)]
Cycles: Fix compilation error with minimal feature set

2 years agoFix T49471: Vertex Connect randomly broken.
Bastien Montagne [Wed, 28 Sep 2016 14:56:19 +0000 (16:56 +0200)]
Fix T49471: Vertex Connect randomly broken.

Not sure where this comes from, but code was converting BMEdge* to BMVert* to check oflags,
i.e. not accessing correct memory.

Regression, to be backported to 2.78a.

2 years agoFix T49460: Particle group instance 'Use Count' value gets reset on file-load.
Bastien Montagne [Wed, 28 Sep 2016 13:06:50 +0000 (15:06 +0200)]
Fix T49460: Particle group instance 'Use Count' value gets reset on file-load.

Regression caused rBbcc863993ad, write code was assuming dw->ob was always valid,
wich is no more the case right after reading file e.g.

Another good example of how bad it is to use 'hidden' dependencies between datablocks. :(
And another fix to be backported to 2.78a. :(((

2 years agoFix T49466: Stupid typo in logicbricks new copy code from rB776a8548f03a
Bastien Montagne [Tue, 27 Sep 2016 15:55:12 +0000 (17:55 +0200)]
Fix T49466: Stupid typo in logicbricks new copy code from rB776a8548f03a

Moved that code forth and back a few times while creating rB776a8548f03a fix,
ended up forgetting to update it correctly for function where it layed down in the end.

Last-minute fixes are never a good thing... Now we already have real reason for 2.78 'a' release :(

2 years agoFix T49423: Data Preview of group containing only group instances is empty.
Bastien Montagne [Tue, 27 Sep 2016 15:03:03 +0000 (17:03 +0200)]
Fix T49423: Data Preview of group containing only group instances is empty.

Code was not getting correct boundbox in some cases (group only instancing other groups e.g.), now
compute our own bbox in those cases.

Based on patch by @lichtwerk, but extended the fix to include linked datablocks in some cases
(linked objects in local groups, linked objects in local scene, etc.), this was also broken in existing code.

Reviewers: mont29

Subscribers: duarteframos

Differential Revision:

2 years agoFix T49461: Dynamic paint wetmap flickers.
Bastien Montagne [Tue, 27 Sep 2016 11:54:26 +0000 (13:54 +0200)]
Fix T49461: Dynamic paint wetmap flickers.

Regression from rBa4a968f, we would adjust current point's wetness without actually protecting it
in new multi-threaded context, leading to concurrent access mess.

Now delay applying wetness reduction to current point to end of function, allows us to avoid having
to lock current point twice together with neighbor one (and reducing spinlock awainting too).

To be backported to 2.78a.

2 years agoFix T49464: Data Transfer modifier slows down redraw of window.
Bastien Montagne [Tue, 27 Sep 2016 10:03:18 +0000 (12:03 +0200)]
Fix T49464: Data Transfer modifier slows down redraw of window.

Never call function that might recompute a DM in an RNA itemf callback (or any UI-related func in general)!
There was an XXX comment asking if this was OK - well, no, it was not. :P

Could be ported back to some 2.78 flavour should we need it.

2 years agoFix export image generated by export UV layout
Sergey Sharybin [Mon, 26 Sep 2016 14:43:06 +0000 (16:43 +0200)]
Fix export image generated by export UV layout

Was only happening with new dependency graph.

The issue here is that scene's depsgraph layers will be 0 unless
it was ever visible. Worked around by checking for 0 layer in the
update_tagged of new depsgraph. This currently kind of following
logic of visible_layers, but is weak.

Committing so studio is unlocked here, will re-evaluate this layer.

2 years agoFix Scene datablocks being created with a real user while never having any real datab...
Bastien Montagne [Mon, 26 Sep 2016 14:35:52 +0000 (16:35 +0200)]
Fix Scene datablocks being created with a real user while never having any real datablock user.

Now using new system dedicated to that kind of cases, id_ensure_real_user(), instead.
That way, usercount of Scenes is handled correctly at deletion time.

Reported by @sergey over IRC, thanks.

2 years ago[Windows/make.bat] Clean only after all parameters have been processed so the full...
lazydodo [Sat, 17 Sep 2016 15:19:54 +0000 (09:19 -0600)]
[Windows/make.bat] Clean only after all parameters have been processed so the full path is known, and require a convenience target to be set. Also added a helpful error message if any of the required data is not available.

2 years agoCycles: Cleanup file headers
Sergey Sharybin [Thu, 29 Sep 2016 08:11:40 +0000 (10:11 +0200)]
Cycles: Cleanup file headers

Some of the files were wrongly attributing code to some other
organizations and in few places proper attribution was missing.

This is mainly either a copy-paste error (when new file was
created from an existing one and header wasn't updated) or due
to some refactor which split non-original-BF code with purely
BF code.

Should solve some confusion around.

2 years agoCycles: Move BVH constants to an own files, so they are easily re-usable
Sergey Sharybin [Mon, 19 Sep 2016 11:00:41 +0000 (13:00 +0200)]
Cycles: Move BVH constants to an own files, so they are easily re-usable

2 years agoBuildbot: Another attempt to have OSX builder fixed
Sergey Sharybin [Mon, 19 Sep 2016 14:45:08 +0000 (16:45 +0200)]
Buildbot: Another attempt to have OSX builder fixed