3 years agoFix T53951: Copy ms runtime dlls using InstallRequiredSystemLibraries.cmake
Ray Molenkamp [Thu, 1 Feb 2018 15:26:14 +0000 (08:26 -0700)]
Fix T53951: Copy ms runtime dlls using InstallRequiredSystemLibraries.cmake

Differential Revision:

3 years agoFix: msvc build error with bli_fileops.h
Ray Molenkamp [Thu, 1 Feb 2018 14:58:06 +0000 (07:58 -0700)]
Fix: msvc build error with bli_fileops.h

bli_fileops.h was using uint64_t without including the proper header.

issue triggered by rBb0af44fa4d7a2e134b315c49a4fbdf573f781004

3 years agoFix T53686: VSE Render crash when zooming timeline.
Bastien Montagne [Thu, 1 Feb 2018 14:53:49 +0000 (15:53 +0100)]
Fix T53686: VSE Render crash when zooming timeline.

Epic fail from recent 'security' fixes (rBe04d7c49dca9). ;)

To be backported to 2.79a!

3 years agoCycles: Attempt to fix 32 bit linux compilation
Sergey Sharybin [Thu, 1 Feb 2018 14:13:54 +0000 (15:13 +0100)]
Cycles: Attempt to fix 32 bit linux compilation

3 years agoCycles: Fix for non-vectorized version of bitscan()
Sergey Sharybin [Thu, 1 Feb 2018 14:11:17 +0000 (15:11 +0100)]
Cycles: Fix for non-vectorized version of bitscan()

It was doing bit search in an opposite direction comparing to a
vectorized version.

3 years agoCleanup: pass userdef to write_userdef, const args
Campbell Barton [Thu, 1 Feb 2018 04:16:36 +0000 (15:16 +1100)]
Cleanup: pass userdef to write_userdef, const args

3 years agoError in last commit
Campbell Barton [Thu, 1 Feb 2018 04:15:57 +0000 (15:15 +1100)]
Error in last commit

3 years agoCleanup: Python code-style
Campbell Barton [Thu, 1 Feb 2018 03:58:05 +0000 (14:58 +1100)]
Cleanup: Python code-style

3 years agoCleanup: Python code-style (addons, wm)
Campbell Barton [Thu, 1 Feb 2018 02:58:44 +0000 (13:58 +1100)]
Cleanup: Python code-style (addons, wm)

3 years agoCleanup: rename BLI_*_empty() -> clear()
Campbell Barton [Thu, 1 Feb 2018 01:06:57 +0000 (12:06 +1100)]
Cleanup: rename BLI_*_empty() -> clear()

Consistent with other BLI API's

3 years agoRevert "tmp"
Germano [Thu, 1 Feb 2018 00:35:46 +0000 (22:35 -0200)]
Revert "tmp"

This reverts commit ea31f0ac3b877eb0df4c47d0c908d11d1bff33e4.

3 years agogpu_shader_material: Correct incorrect glsl texture of Voronoi, Noise, and Musgrave...
Germano [Thu, 1 Feb 2018 00:31:08 +0000 (22:31 -0200)]
gpu_shader_material: Correct incorrect glsl texture of Voronoi, Noise, and Musgrave on some Intel GPUs

3 years agotmp
Germano [Thu, 1 Feb 2018 00:11:01 +0000 (22:11 -0200)]

3 years agofix T50198: The OpenCollada error handler must return true after detecting uncritical...
Gaia Clary [Wed, 31 Jan 2018 23:41:04 +0000 (00:41 +0100)]
fix T50198: The OpenCollada error handler must return true after detecting uncritical errors.

3 years agoI18n disambiguation: IRIS is both a file format and a VSE wipe effect...
Bastien Montagne [Wed, 31 Jan 2018 15:43:04 +0000 (16:43 +0100)]
I18n disambiguation: IRIS is both a file format and a VSE wipe effect...

At some point, we could probably think about removing IRIS file format
support, don't think there are much of those around anymore. But for
now, let's add a translation context to wipe effect. :)

Reported in T43295 by @blend-it, thanks.

3 years agoFix possible concurency issue in mesh normals computation.
Bastien Montagne [Wed, 31 Jan 2018 11:30:39 +0000 (12:30 +0100)]
Fix possible concurency issue in mesh normals computation.

Failure in own code from last December, thanks @sergey for finding it.

To be backported to 2.79a.

3 years agoWM: correct comment, variable name for addons
Campbell Barton [Wed, 31 Jan 2018 08:02:43 +0000 (19:02 +1100)]
WM: correct comment, variable name for addons

3 years agoFix blender player (tm)
Sergey Sharybin [Tue, 30 Jan 2018 15:11:58 +0000 (16:11 +0100)]
Fix blender player (tm)

3 years agoFix Cycles incorrect principled BSDF mixing with some parameter variatons.
Brecht Van Lommel [Tue, 30 Jan 2018 11:40:05 +0000 (12:40 +0100)]
Fix Cycles incorrect principled BSDF mixing with some parameter variatons.

Spotted by Ha Hyung-jin, thanks!

3 years agoFix T52520: Metaballs in edit mode causes infinite Cycles viewport reset
Sergey Sharybin [Tue, 30 Jan 2018 13:14:26 +0000 (14:14 +0100)]
Fix T52520: Metaballs in edit mode causes infinite Cycles viewport reset

The issue was introduced by eb016eb as a fix for T41258, which added depsgraph
tagging with zero flag. The comment was saying that it's to make derived caches
to be updated, however bot sure how that could possibly work: tagging ID for
update with 0 flag only sets updated tags in bmain in old dependency graph.

In the new depsgraph, where object data is a part of depsgraph, doing such a
tag forces object to be updated, which re-triggers viewport rendering, which
is causing such an infinite viewport render rest.

Can not reproduce any crashes here, so maybe it's fine to move on with this

3 years agoCleanup: warning, spelling
Campbell Barton [Tue, 30 Jan 2018 10:02:27 +0000 (21:02 +1100)]
Cleanup: warning, spelling

3 years agoFix T53943: Weight paint crash in new scene
Campbell Barton [Tue, 30 Jan 2018 09:33:20 +0000 (20:33 +1100)]
Fix T53943: Weight paint crash in new scene

3 years agoFix T50630: Fluid fails on win32 w/ unicode paths
Campbell Barton [Tue, 30 Jan 2018 03:30:28 +0000 (14:30 +1100)]
Fix T50630: Fluid fails on win32 w/ unicode paths

Allow overriding gzip open w/ elbeem.

3 years agoFix Cycles viewport render not updating when tweaking displacement shader.
Brecht Van Lommel [Wed, 24 Jan 2018 19:19:48 +0000 (20:19 +0100)]
Fix Cycles viewport render not updating when tweaking displacement shader.

This was disabled to avoid updating the geometry every time when the
material includes displacement, because there was no way to distinguish
between surface shader and displacement updates.

As a solution, we now compute an MD5 hash of the nodes linked to the
displacement socket, and only update the mesh if that changes.

Differential Revision:

3 years agoFix Cycles allocating too much device memory, after recent memory refactoring.
Brecht Van Lommel [Mon, 29 Jan 2018 13:51:22 +0000 (14:51 +0100)]
Fix Cycles allocating too much device memory, after recent memory refactoring.

Spotted by Ha Hyung-jin, thanks!

3 years agoRevert "Fix T53914: Volumetric scattering now goes correctly through transparent...
Brecht Van Lommel [Mon, 29 Jan 2018 14:59:46 +0000 (15:59 +0100)]
Revert "Fix T53914: Volumetric scattering now goes correctly through transparent surfaces."

This reverts commit 3c852ba0741f794a697f95073b04921e9ff94039. This is breaking
the regression tests, and maybe requires some deeper changes to really fix.

3 years agoFix nan problem in previous bevel commit.
Howard Trickey [Mon, 29 Jan 2018 15:01:19 +0000 (10:01 -0500)]
Fix nan problem in previous bevel commit.

For chains, access to g_prod[0] was undefined.
And two minor style (whitespace) changes.

3 years agoDepsgraph: Correction for previous fix
Sergey Sharybin [Mon, 29 Jan 2018 14:06:44 +0000 (15:06 +0100)]
Depsgraph: Correction for previous fix

Original fix only worked when there is one custom property.

3 years agoDepsgraph: Fix missing update when property from proxy rig drives something
Sergey Sharybin [Mon, 29 Jan 2018 13:53:27 +0000 (14:53 +0100)]
Depsgraph: Fix missing update when property from proxy rig drives something

3 years agoDepsgraph: Disable labels on relations
Sergey Sharybin [Mon, 29 Jan 2018 13:45:45 +0000 (14:45 +0100)]
Depsgraph: Disable labels on relations

This code was disable a while back and got re-enabled by some previous debug
process. Having relation names in dot file helps understanding what's going
on in one cases, but makes things spread too far away in others.

3 years agoDepsgraph: Cleanup, line wraps
Sergey Sharybin [Mon, 29 Jan 2018 13:43:12 +0000 (14:43 +0100)]
Depsgraph: Cleanup, line wraps

3 years agoFix T53614: New Depsgraph ignores NLA strips
Joshua Leung [Mon, 29 Jan 2018 06:01:44 +0000 (19:01 +1300)]
Fix T53614: New Depsgraph ignores NLA strips

The new depsgraph was only considering the active action
when attaching relations from the AnimData component/operation
to the properties that are affected by the animation data.
As a result, only properties animated by the active action
were working, while those animated by NLA strips did not change
when playing back/scrubbing the timeline.

This commit fixes this introducing a recursive method to properly
visit all NLA strips, and calling DepsRelBuilder::build_animdata_curves_targets()
on each of those strips.

3 years ago3D View: use_mouse_init for zoom & trackball orbit
Campbell Barton [Mon, 29 Jan 2018 05:17:47 +0000 (16:17 +1100)]
3D View: use_mouse_init for zoom & trackball orbit

3 years agoCleanup: move boolean options into flag
Campbell Barton [Mon, 29 Jan 2018 04:34:39 +0000 (15:34 +1100)]
Cleanup: move boolean options into flag

- Rename eViewOpsOrbit to eViewOpsFlag
  since VIEWOPS_ORBIT_DEPTH isn't just used for orbiting.
- Move use_ensure_persp & use_mouse_init into the flag.
- Remove viewops_data_create_ex.

3 years agoFix: Disable leftover debug prints from earlier work on the rna path renaming/fixing...
Joshua Leung [Mon, 29 Jan 2018 04:16:31 +0000 (17:16 +1300)]
Fix: Disable leftover debug prints from earlier work on the rna path renaming/fixing code

3 years agoFix T53909: Joining armatures did not remap names on merged action data
Joshua Leung [Mon, 29 Jan 2018 04:13:23 +0000 (17:13 +1300)]
Fix T53909: Joining armatures did not remap names on merged action data

Technically this was not a bug, as this functionality was not meant to
work. (Drivers were already handled though, as they are part of the rig)
It was assumed that there was little value in having this functionality
available, as in most pipelines, animation production only begins after
the rig has been locked down (see bug report comments for more details).

On reflection, in most common situations, there's probably no harm in
doing these rna path fixups. This commit takes advantage of some similar
code I recently put in place in the Grease Pencil branch (for joining GP
objects and their layers).

Important Note for Animators/Riggers/TD's:
Please be aware that after joining armatures, some of the animation may
still need to be redone (due to changes in the transform hierarchies/
transform spaces that the animation is applied in). We do not attempt
to correct for these problems, and it is unlikely that we will in future.

3 years agoApply Pose as Rest Pose: Bendy Bone support
Joshua Leung [Mon, 29 Jan 2018 01:46:03 +0000 (14:46 +1300)]
Apply Pose as Rest Pose: Bendy Bone support

The "Apply Pose as Rest Pose" operator now affects Bendy Bone settings
too, making it possible to use interactive posing tools (e.g. Pose Sculpting
brushes) to get the desired shape for the rest-pose shape of Bendy Bones.
When such posing tools are available, this change makes it easier to get
the desired Bendy Bone shapes, as you are no longer restricted to using
buttons to get the desired effects.

3 years agoCleanup: rename user preference flags
Campbell Barton [Mon, 29 Jan 2018 04:06:23 +0000 (15:06 +1100)]
Cleanup: rename user preference flags

The name didn't make sense since it's used for all view navigation.

Also rename USER_ZBUF_CURSOR -> USER_DEPTH_CURSOR since zbuf
is an internal detail.

3 years agoCleanup: comments & whitespace
Campbell Barton [Mon, 29 Jan 2018 03:59:56 +0000 (14:59 +1100)]
Cleanup: comments & whitespace

3 years agoCleanup: ViewOpsData struct members
Campbell Barton [Mon, 29 Jan 2018 03:36:40 +0000 (14:36 +1100)]
Cleanup: ViewOpsData struct members

- Group initial/previous/current members
  Was using terms old/prev/last/orig in confusing way.
- Replace x,y variables with vectors.
- Remove unused members.

3 years ago3D View: internal option not to use mouse location
Campbell Barton [Mon, 29 Jan 2018 02:46:18 +0000 (13:46 +1100)]
3D View: internal option not to use mouse location

When accessing view-port operators from widgets
we need the ability not to use auto-depth or zoom-to-mouse.

Trackball rotation still needs to be supported.

3 years agoCleanup: minor simplification for zoom/dolly
Campbell Barton [Mon, 29 Jan 2018 02:42:28 +0000 (13:42 +1100)]
Cleanup: minor simplification for zoom/dolly

Make args more consistent.

3 years agoCleanup: de-duplicate common 3D view properties
Campbell Barton [Sun, 28 Jan 2018 07:22:54 +0000 (18:22 +1100)]
Cleanup: de-duplicate common 3D view properties

3 years agoFix T53459, inconsistent bevel on identical edges.
Howard Trickey [Mon, 29 Jan 2018 00:19:02 +0000 (19:19 -0500)]
Fix T53459, inconsistent bevel on identical edges.

The old algorithm depended on vertex order.
The new one uses a global least squares solution on chains
and cycles of edges where loop slide induces a dependency.

in the "Consistent Widths for Even Bevels" for derivation of
the new algorithm.

3 years agoUsual i18n/UI messages fixes.
Bastien Montagne [Sun, 28 Jan 2018 16:27:53 +0000 (17:27 +0100)]
Usual i18n/UI messages fixes.

3 years agoCleanup: style, spelling
Campbell Barton [Sun, 28 Jan 2018 06:00:39 +0000 (17:00 +1100)]
Cleanup: style, spelling

3 years agoCleanup: use doxy sections for view3d_view.c
Campbell Barton [Sun, 28 Jan 2018 05:22:34 +0000 (16:22 +1100)]
Cleanup: use doxy sections for view3d_view.c

Also move ..._needs_opengl functions into view3d_utils.c

3 years agoUse factory startup for icon generation
Campbell Barton [Sun, 28 Jan 2018 05:03:32 +0000 (16:03 +1100)]
Use factory startup for icon generation

Avoids using local preferences.

3 years agoCleanup: move 3D view utilities into own file
Campbell Barton [Sun, 28 Jan 2018 03:44:42 +0000 (14:44 +1100)]
Cleanup: move 3D view utilities into own file

Operators and utility functions were getting too mixed up,
the files were also quite large.

3 years agoFix T53914: Volumetric scattering now goes correctly through transparent surfaces.
Stefan Werner [Sat, 27 Jan 2018 09:36:22 +0000 (10:36 +0100)]
Fix T53914: Volumetric scattering now goes correctly through transparent surfaces.

There was a check for volume bounces at every surface intersection. That could lead to a volume scattered path being terminated
when passing through a transparent surface. This check was superfluous, as the volume shader evaluation already checks the
number of volume bounces and once it passes the max, volume shaders will not return scatter events any more.

Reviewers: #cycles, brecht

Reviewed By: #cycles, brecht

Subscribers: brecht, #cycles

Tags: #cycles

Maniphest Tasks: T53914

Differential Revision:

3 years agoCode refactor: make mixed small/large BSSRDF radii more robust.
Brecht Van Lommel [Fri, 26 Jan 2018 21:11:28 +0000 (22:11 +0100)]
Code refactor: make mixed small/large BSSRDF radii more robust.

3 years agoFix mixed BSDF + BSSRDF sampling bug in path tracing, after 095a01a73a35.
Brecht Van Lommel [Fri, 26 Jan 2018 17:31:36 +0000 (18:31 +0100)]
Fix mixed BSDF + BSSRDF sampling bug in path tracing, after 095a01a73a35.

Spotted by Ha Hyung-jin, thanks!

3 years agoCode refactor: store RGB BSSRDF in a single closure.
Brecht Van Lommel [Fri, 26 Jan 2018 13:09:55 +0000 (14:09 +0100)]
Code refactor: store RGB BSSRDF in a single closure.

Previously we stored each color channel in a single closure, which was
convenient for sampling a closure and channel together. But this doesn't
work so well for algorithms where we want to render multiple color
channels together.

3 years agoIMB: Add asserts that returned fps and fps base are strictly positives.
Bastien Montagne [Fri, 26 Jan 2018 14:13:35 +0000 (15:13 +0100)]
IMB: Add asserts that returned fps and fps base are strictly positives.

Forgot to add that in previous commit, also related to T53003.

3 years agoRelated to T53003: tweak scene fps range.
Bastien Montagne [Fri, 26 Jan 2018 14:08:58 +0000 (15:08 +0100)]
Related to T53003: tweak scene fps range.

Move restricted 'reasonable' range to ui_range, and allow wider values
for manual settings.

3 years agoFix T53003: IMB: Invalid framerate handling due to short integer overflow.
Bastien Montagne [Fri, 26 Jan 2018 13:59:16 +0000 (14:59 +0100)]
Fix T53003: IMB: Invalid framerate handling due to short integer overflow.

FFMPEG uses int for the numerator, while Blender uses a short. So in
cases people gave weird exotic framerate values and we cannot reduce
enough the numerator, we'd get totally weird values (even negative frame
rates sometimes!)

Now we add checks for short overflow and approximate as best as possible
in that case (error should not matter unless you have shots of at least
several hundreds of hours ;) ).

3 years agoFix harmlness RNA warning in image texture node drawing.
Brecht Van Lommel [Fri, 26 Jan 2018 07:39:38 +0000 (08:39 +0100)]
Fix harmlness RNA warning in image texture node drawing.

3 years agoFix part of T53080: all material previews re-rendering after undo.
Brecht Van Lommel [Fri, 26 Jan 2018 06:54:09 +0000 (07:54 +0100)]
Fix part of T53080: all material previews re-rendering after undo.

This reverts commit dc2617130b2e1d7d2b9892fbd7c6e7b60caafb66, which disabled
writing of previews for undo. While this uses some memory, re-rendering all
previews is very expensive, especially if for example you have lots of materials
using high-res image textures.

3 years agoCode cleanup: simpler and faster detection of BVH refit.
Brecht Van Lommel [Thu, 25 Jan 2018 15:11:06 +0000 (16:11 +0100)]
Code cleanup: simpler and faster detection of BVH refit.

3 years agoFix navmesh creation w/ multiple objects
Campbell Barton [Fri, 26 Jan 2018 02:10:02 +0000 (13:10 +1100)]
Fix navmesh creation w/ multiple objects

D2976 by @dertom

3 years agomake_quickie: replace os.system w/
Campbell Barton [Fri, 26 Jan 2018 01:53:42 +0000 (12:53 +1100)]
make_quickie: replace os.system w/

3 years agoicon update: replace os.system w/ subprocess.check_call
Campbell Barton [Fri, 26 Jan 2018 01:46:10 +0000 (12:46 +1100)]
icon update: replace os.system w/ subprocess.check_call

3 years agoproject_info: replace os.system w/ subprocess.check_call
Campbell Barton [Fri, 26 Jan 2018 01:29:55 +0000 (12:29 +1100)]
project_info: replace os.system w/ subprocess.check_call

3 years agoTests: replace os.system w/
Campbell Barton [Fri, 26 Jan 2018 01:23:15 +0000 (12:23 +1100)]
Tests: replace os.system w/

Saves on process creation and avoids
being tripped up by command line parsing.

Based on D2967 by @ldo with edits.

3 years agoDocs: invoke_search_popup uses bl_property
Campbell Barton [Fri, 26 Jan 2018 00:52:01 +0000 (11:52 +1100)]
Docs: invoke_search_popup uses bl_property

Also add code example in docs.

3 years agoCycles: rename displacement methods, default to displace, tweak panel layout.
Brecht Van Lommel [Thu, 25 Jan 2018 13:08:56 +0000 (14:08 +0100)]
Cycles: rename displacement methods, default to displace, tweak panel layout.

Differential Revision:

3 years agoFix T53874: OpenGL render problem with OpenEXR in 2.8 with float buffers.
Brecht Van Lommel [Thu, 25 Jan 2018 13:07:51 +0000 (14:07 +0100)]
Fix T53874: OpenGL render problem with OpenEXR in 2.8 with float buffers.

3 years agoFix missing broken notifiers
Dalai Felinto [Thu, 25 Jan 2018 12:10:21 +0000 (10:10 -0200)]
Fix missing broken notifiers

We can't have more than one NOTE_SUBTYPE in the same notifier.
Instead of calling both subtypes the code end up not calling either.

3 years agoFix T50967: When you move an icon from the outliner area object doesn't show up
Dalai Felinto [Thu, 25 Jan 2018 11:45:13 +0000 (09:45 -0200)]
Fix T50967: When you move an icon from the outliner area object doesn't show up

We can't have more than one NOTE_SUBTYPE in the same notifier.

This is a partial revert of: cd4d5dcb468a. In particular to the part concerning
"Also fixed a missing notifier of the object instancing operator".

Not only this was mixed with the original reason for the commit for no reason,
but it actually introduced a bug. Bad, bad developers ;)

Note: Although this commit is not needed for master, blender2.8 requires it for
the forementioned bug report.

3 years agoWM: comments on wmTooltipState struct
Campbell Barton [Thu, 25 Jan 2018 10:49:31 +0000 (21:49 +1100)]
WM: comments on wmTooltipState struct

3 years agoWM: NULL check for recent tooltip change
Campbell Barton [Thu, 25 Jan 2018 10:39:04 +0000 (21:39 +1100)]
WM: NULL check for recent tooltip change

Caused crash dragging boolean buttons.

3 years agoFix T53363: Blender won't update mesh's usercount when deleting object datablocks...
Bastien Montagne [Thu, 25 Jan 2018 09:11:12 +0000 (10:11 +0100)]
Fix T53363: Blender won't update mesh's usercount when deleting object datablocks in Editmode.

Only do special handling of ob->data pointer in case we are remapping to
a valid (non-NULL) other obdata. Otherwise, handle it as any other
'remapping to NULL' case.

Hopefully not breaking anything else...

3 years agoUI: change tool-tips to be stored in the screen
Campbell Barton [Thu, 25 Jan 2018 05:17:25 +0000 (16:17 +1100)]
UI: change tool-tips to be stored in the screen

Move timer and tip out of button code,
now the only requests a tooltip,
passing a creation callback to run.

Needed for manipulators in 2.8,
also helps de-duplicate logic - since we never want
multiple tool-tips showing at once.

3 years agoCleanup: correct ATTR_NONNULL use
Campbell Barton [Wed, 24 Jan 2018 23:21:31 +0000 (10:21 +1100)]
Cleanup: correct ATTR_NONNULL use

3 years agoFix T53874: more cases of OpenGL render to OpenEXR not working after recent changes.
Brecht Van Lommel [Wed, 24 Jan 2018 14:55:54 +0000 (15:55 +0100)]
Fix T53874: more cases of OpenGL render to OpenEXR not working after recent changes.

3 years agoFix T53593: sculpt brush rake spacing bug after recent bugfix.
Brecht Van Lommel [Wed, 24 Jan 2018 13:25:59 +0000 (14:25 +0100)]
Fix T53593: sculpt brush rake spacing bug after recent bugfix.

3 years agoCleanup: MOD_wireframe: remove useless isDisabled callback.
Bastien Montagne [Wed, 24 Jan 2018 10:20:46 +0000 (11:20 +0100)]
Cleanup: MOD_wireframe: remove useless isDisabled callback.

3 years agoFix (unreported) missing feature in ccgdm pbvh generator.
Bastien Montagne [Wed, 24 Jan 2018 10:17:53 +0000 (11:17 +0100)]
Fix (unreported) missing feature in ccgdm pbvh generator.

Compared to usual cddm one, ccgdm one was not applying the
ob->derivedDeform deformation to the pbvh generated from the
original mesh geometry, when possible.

3 years agoFix T53551: Weight paint crash when subsurf modifier is not first (master not 2.79).
Bastien Montagne [Wed, 24 Jan 2018 10:13:49 +0000 (11:13 +0100)]
Fix T53551: Weight paint crash when subsurf modifier is not first (master not 2.79).

We can only support painting from subsurf DM in a limited subset of
cases, others (like multiple subsurf, or topology-modyfying ones,
break mapping to original geometry).

This is not the most ideal fix (ideally, we should always be able to get
a mapping to original geometry from any point in modifiers stack...).

3 years agoBKE's modifier_isEnabled: add check on NULL Scene pointer.
Bastien Montagne [Wed, 24 Jan 2018 10:12:01 +0000 (11:12 +0100)]
BKE's modifier_isEnabled: add check on NULL Scene pointer.

We do not always have that one available, and even without the
isDisabled callback this func is helpful.

Note that this is a bot stupid, only modifier actually needing a valid
Scene pointer here is subsurf... :|

3 years agoFix T53874: OpenGL render to OpenEXR not working after recent changes.
Brecht Van Lommel [Wed, 24 Jan 2018 10:03:03 +0000 (11:03 +0100)]
Fix T53874: OpenGL render to OpenEXR not working after recent changes.

Multilayer EXR also failed already in 2.79 for Sequencer and OpenGL rendering.
Now we revert to single layer OpenEXR in that case.

3 years agoFix T53878: Cycles bug rendering multiple render layers with different passes.
Brecht Van Lommel [Wed, 24 Jan 2018 09:56:13 +0000 (10:56 +0100)]
Fix T53878: Cycles bug rendering multiple render layers with different passes.

This was caused by recent pass refactoring from f78e963.

3 years agoFix Cycles GLSL bump not matching final render after recent changes.
Brecht Van Lommel [Wed, 24 Jan 2018 07:24:21 +0000 (08:24 +0100)]
Fix Cycles GLSL bump not matching final render after recent changes.

3 years agoCMake: store icon names
Campbell Barton [Wed, 24 Jan 2018 00:29:29 +0000 (11:29 +1100)]
CMake: store icon names

Without this, adding/removing icons wouldn't force cmake to re-run
making builds fail.

This is the same issue with globbing source code.

3 years agoCleanup: some ED_view3d functions used uppercase D
Campbell Barton [Tue, 23 Jan 2018 09:22:26 +0000 (20:22 +1100)]
Cleanup: some ED_view3d functions used uppercase D

3 years agoFix Cycles assert when resizing rendererd viewport.
Brecht Van Lommel [Tue, 23 Jan 2018 12:01:02 +0000 (13:01 +0100)]
Fix Cycles assert when resizing rendererd viewport.

3 years agoCycles: change material output displacement to vector.
Brecht Van Lommel [Sat, 20 Jan 2018 01:01:07 +0000 (02:01 +0100)]
Cycles: change material output displacement to vector.

Previously only scalar displacement along the normal was supported,
now displacement can go in any direction. For backwards compatibility,
a Displacement node will be automatically inserted in existing files.

This will make it possible to support vector displacement maps in the
future. It's already possible to use them to some extent, but requires
a manual shader node setup. For tangent space maps the right tangent
may also not be available yet, depends on the map.

Differential Revision:

3 years agoCycles: add Displacement node.
Brecht Van Lommel [Sat, 13 Jan 2018 12:11:03 +0000 (13:11 +0100)]
Cycles: add Displacement node.

This converts object space height to world space displacement, to be
linked to the new vector displacement material output.

Differential Revision:

3 years agoFix T53854: branched path tracing correlation bug with transparency in split kernel.
Brecht Van Lommel [Tue, 23 Jan 2018 09:44:20 +0000 (10:44 +0100)]
Fix T53854: branched path tracing correlation bug with transparency in split kernel.

3 years agoCleanup: use doxygen groups for view3d_edit.c
Campbell Barton [Tue, 23 Jan 2018 08:48:49 +0000 (19:48 +1100)]
Cleanup: use doxygen groups for view3d_edit.c

3 years agoCleanup: code comment for view3d_viewmatrix_set
Campbell Barton [Tue, 23 Jan 2018 06:36:51 +0000 (17:36 +1100)]
Cleanup: code comment for view3d_viewmatrix_set

3 years agoCleanup: CMake whitespace
Campbell Barton [Tue, 23 Jan 2018 06:25:09 +0000 (17:25 +1100)]
Cleanup: CMake whitespace

3 years agoFix screen split refresh issues
Germano [Tue, 23 Jan 2018 01:06:38 +0000 (23:06 -0200)]
Fix screen split refresh issues

`Ctrl` (enable snapping) ans `TAB` (Switching direction) didn't refresh.

3 years agoCleanup: sync w/ blender2.8 branch
Campbell Barton [Tue, 23 Jan 2018 01:13:48 +0000 (12:13 +1100)]
Cleanup: sync w/ blender2.8 branch

Also make some args const

3 years agoCycles: Fix optimal BVH selection.
Ray Molenkamp [Mon, 22 Jan 2018 21:52:09 +0000 (14:52 -0700)]
Cycles: Fix optimal BVH selection.

3 years agoCycles: Replace use_qbvh boolean flag with an enum-based property
Sergey Sharybin [Fri, 19 Jan 2018 09:59:58 +0000 (10:59 +0100)]
Cycles: Replace use_qbvh boolean flag with an enum-based property

This was we can introduce other types of BVH, for example, wider ones, without
causing too much mess around boolean flags.


- Ideally device info should probably return bitflag of what BVH types it

  It is possible to implement based on simple logic in device/ and mesh.cpp,
  rest of the changes will stay the same.

- Not happy with workarounds in util_debug and duplicated enum in kernel.
  Maybe enbum should be stores in kernel, but then it's kind of weird to include
  kernel types from utils. Soudns some cyclkic dependency.

Reviewers: brecht, maxim_d33

Reviewed By: brecht

Differential Revision:

3 years agoFix windows building (log10)
Dalai Felinto [Mon, 22 Jan 2018 13:27:58 +0000 (11:27 -0200)]
Fix windows building (log10)

Error: math_base_inline.c(402): error C2668: 'log10' : ambiguous call to
overloaded function

3 years agoFix T53854: branched path tracing correlation bug with transparency.
Brecht Van Lommel [Mon, 22 Jan 2018 12:47:53 +0000 (13:47 +0100)]
Fix T53854: branched path tracing correlation bug with transparency.

This was broken in d750d18.

3 years agoCycles: Cleanup, remove unused argument
Sergey Sharybin [Mon, 22 Jan 2018 09:59:14 +0000 (10:59 +0100)]
Cycles: Cleanup, remove unused argument

3 years agoFix T53850: Lock to Cursor breaks 3D manipulators
Campbell Barton [Mon, 22 Jan 2018 09:11:34 +0000 (20:11 +1100)]
Fix T53850: Lock to Cursor breaks 3D manipulators