blender.git
2 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

2 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

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

2 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.

2 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

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

2 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.

Thoughs:

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

  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: https://developer.blender.org/D3011

2 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

2 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.

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

2 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

2 years agoWM: add mouse-move after smooth-view
Campbell Barton [Mon, 22 Jan 2018 03:06:32 +0000 (14:06 +1100)]
WM: add mouse-move after smooth-view

When hot-spots moved under the pointer,
clicking wouldn't activate the correct item.

2 years agoFix manual lookups (data is now lowercase)
Campbell Barton [Sun, 21 Jan 2018 22:50:41 +0000 (09:50 +1100)]
Fix manual lookups (data is now lowercase)

2 years agoFix T53843: Error opening online manual
Campbell Barton [Sun, 21 Jan 2018 22:45:51 +0000 (09:45 +1100)]
Fix T53843: Error opening online manual

2 years agoCleanup: unused var
Campbell Barton [Sun, 21 Jan 2018 23:00:23 +0000 (10:00 +1100)]
Cleanup: unused var

2 years agoUpdate description of the screen_draw functions
Germano [Sun, 21 Jan 2018 20:22:39 +0000 (18:22 -0200)]
Update description of the screen_draw functions

2 years agoWM: Fix snapping on split area without preview
Germano [Sun, 21 Jan 2018 20:18:12 +0000 (18:18 -0200)]
WM: Fix snapping on split area without preview

In addition to removing unnecessary variables and `tag_redraw` whenever the factor changes;

2 years agoFix T49159: missing Cycles tangents for adaptive subdivision.
Brecht Van Lommel [Sun, 21 Jan 2018 14:19:34 +0000 (15:19 +0100)]
Fix T49159: missing Cycles tangents for adaptive subdivision.

2 years agoCleanup: BLI_kdopbvh avoid negative array access
Campbell Barton [Sun, 21 Jan 2018 08:28:54 +0000 (19:28 +1100)]
Cleanup: BLI_kdopbvh avoid negative array access

It's harder to reason about array access with negative indices.

2 years agoCleanup: style
Campbell Barton [Sun, 21 Jan 2018 00:41:28 +0000 (11:41 +1100)]
Cleanup: style

2 years agoFix old files with changed node socket type not loading correctly.
Brecht Van Lommel [Sat, 20 Jan 2018 00:04:07 +0000 (01:04 +0100)]
Fix old files with changed node socket type not loading correctly.

This would lead to sock.default_value pointing to the wrong data type,
possibly causing crashes. Unfortunately, this bug will still exist for
older Blender versions that try to load newer files, which makes
changing the type of a node socket problematic.

2 years agoCleanup: doxy groups for screen_ops.c
Campbell Barton [Sat, 20 Jan 2018 14:41:58 +0000 (01:41 +1100)]
Cleanup: doxy groups for screen_ops.c

2 years agoFix screen split preview refresh issues
Campbell Barton [Sat, 20 Jan 2018 13:39:06 +0000 (00:39 +1100)]
Fix screen split preview refresh issues

Switching direction didn't refresh, also cursors were flipped.

2 years agoFixup for integer digits commit
Dalai Felinto [Fri, 19 Jan 2018 19:04:19 +0000 (17:04 -0200)]
Fixup for integer digits commit

2 years agoUtil function to determine number of digits from an integer
Dalai Felinto [Fri, 19 Jan 2018 18:52:59 +0000 (16:52 -0200)]
Util function to determine number of digits from an integer

2 years agoCycles: Make it more proper check on vectorization flags from DebugFlags
Sergey Sharybin [Fri, 19 Jan 2018 14:47:53 +0000 (15:47 +0100)]
Cycles: Make it more proper check on vectorization flags from DebugFlags

Mimics to checks in system_cpu_support() checks.

2 years agoOutliner Python UI cleanup: remove KEYMAPS
Dalai Felinto [Fri, 19 Jan 2018 14:44:38 +0000 (12:44 -0200)]
Outliner Python UI cleanup: remove KEYMAPS

This was removed since 2013 (ef765b360675). It should have been removed back
then from the UI file too.

2 years agoCycles: Cleanup, stop using debug flags in system utilities
Sergey Sharybin [Fri, 19 Jan 2018 14:02:23 +0000 (15:02 +0100)]
Cycles: Cleanup, stop using debug flags in system utilities

Debug flags are to be controlling render behavior, nothing to do with low level
system utilities.

it was simple to hack, but logically is wrong. Lets do things where they are
supposed to be done!

2 years agoCycles: Remove util_debug include from kernel code
Sergey Sharybin [Fri, 19 Jan 2018 14:21:34 +0000 (15:21 +0100)]
Cycles: Remove util_debug include from kernel code

Not sure why it was in there, all the debug flags stuff is to be handled outside
of kernel.

2 years agoCycles: Remove unneeded include statements
Sergey Sharybin [Fri, 19 Jan 2018 13:55:53 +0000 (14:55 +0100)]
Cycles: Remove unneeded include statements

Also try to move them from headers to implementation files as much as possible.

2 years agoFix T53830: Cycles OpenCL debug assert on macOS,
Brecht Van Lommel [Thu, 18 Jan 2018 20:06:35 +0000 (21:06 +0100)]
Fix T53830: Cycles OpenCL debug assert on macOS,

This was probably harmless besides some unnecessary memory usage due to
aligning allocations too much.

2 years agoCleanup: reaname LINKLIST_FOREACH -> LISTBASE
Campbell Barton [Fri, 19 Jan 2018 10:39:18 +0000 (21:39 +1100)]
Cleanup: reaname LINKLIST_FOREACH -> LISTBASE

LinkList's are a different API, no need to confuse things.

2 years agoFix T53786: Proportional size from redo ignored
Campbell Barton [Fri, 19 Jan 2018 10:09:16 +0000 (21:09 +1100)]
Fix T53786: Proportional size from redo ignored

Changing PET size while transforming stores the size in the
tool settings, but changing in the redo panel didn't.

2 years agoWM: operator flag to check repeat/redo execution
Campbell Barton [Fri, 19 Jan 2018 10:07:43 +0000 (21:07 +1100)]
WM: operator flag to check repeat/redo execution

2 years agoCleanup: sync w/ blender2.8 branch
Campbell Barton [Fri, 19 Jan 2018 06:55:51 +0000 (17:55 +1100)]
Cleanup: sync w/ blender2.8 branch

Split screen_draw.c from screen_edit.c (avoid conflicts syncing).

2 years agoWM: window draw callbacks and split preview snap
mano-wii [Fri, 19 Jan 2018 06:14:27 +0000 (17:14 +1100)]
WM: window draw callbacks and split preview snap

This moves window overlay from hard coded flags into drawing callbacks.

It also supports snapping (holding Ctrl).

2 years agoCleanup: typos
Campbell Barton [Fri, 19 Jan 2018 04:34:54 +0000 (15:34 +1100)]
Cleanup: typos

2 years agoFix T53833: Particle Info node and Displacement Crash
Mai Lavelle [Fri, 19 Jan 2018 03:40:48 +0000 (22:40 -0500)]
Fix T53833: Particle Info node and Displacement Crash

The displacement shared was running before particle data was copied to the
device causing bad memory access when the particle info node was used. Fix
is simply to move particle update before mesh update so the data is
available to displacement shaders.

(Altho this fixes the crash the particle info node is still mostly useless
with displacement for now...)

2 years agoFix T53823: Particle weight brush crash
Campbell Barton [Fri, 19 Jan 2018 01:25:09 +0000 (12:25 +1100)]
Fix T53823: Particle weight brush crash

Entering particle edit mode w/ the weight brush enabled crashed
on non-hair particle systems.

2 years agoFix T53832: Particle weight paint crash
Campbell Barton [Fri, 19 Jan 2018 01:07:14 +0000 (12:07 +1100)]
Fix T53832: Particle weight paint crash

Drawing hair weights read before the hair array start.
This code could be improved since it currently copy-pastes,
from do_particle_interpolation, but this would need larger changes.

For now just correct existing logic.

2 years agoFix memory leak in recent curve refactor
Campbell Barton [Thu, 18 Jan 2018 09:54:49 +0000 (20:54 +1100)]
Fix memory leak in recent curve refactor

5b25605761fb7

2 years agoImproved docstring of mathutils.Matrix.lerp()
Sybren A. Stüvel [Thu, 18 Jan 2018 08:58:14 +0000 (09:58 +0100)]
Improved docstring of mathutils.Matrix.lerp()

2 years agoImprove docstring for mathutils.Matrix.decompose()
Sybren A. Stüvel [Thu, 18 Jan 2018 08:37:54 +0000 (09:37 +0100)]
Improve docstring for mathutils.Matrix.decompose()

2 years agoFix T53808: VSE doesn't show scene strip markers
Campbell Barton [Thu, 18 Jan 2018 03:49:09 +0000 (14:49 +1100)]
Fix T53808: VSE doesn't show scene strip markers

2 years agoFix weight particle brush versioning
Campbell Barton [Thu, 18 Jan 2018 03:02:26 +0000 (14:02 +1100)]
Fix weight particle brush versioning

2 years agoCleanup: label scene flags more clearly
Campbell Barton [Thu, 18 Jan 2018 02:50:52 +0000 (13:50 +1100)]
Cleanup: label scene flags more clearly

Also correct typo in enum name

2 years agoFix T53811: "bmesh.ops.split" crash
Campbell Barton [Thu, 18 Jan 2018 01:36:25 +0000 (12:36 +1100)]
Fix T53811: "bmesh.ops.split" crash

2 years agoWM: improved area resize snapping
mano-wii [Thu, 18 Jan 2018 00:22:58 +0000 (11:22 +1100)]
WM: improved area resize snapping

Instead of 10px steps, snap to mid-point & adjacent edges.

Not yet implemented for split preview.

2 years agoFix buffer overflow vulnerability in curve, font, particles code.
Brecht Van Lommel [Mon, 15 Jan 2018 05:57:26 +0000 (06:57 +0100)]
Fix buffer overflow vulnerability in curve, font, particles code.

Solves these security issues from T52924:
CVE-2017-12102
CVE-2017-12103
CVE-2017-12104

While the specific overflow issue may be fixed, loading the repro .blend
files may still crash because they are incomplete and corrupt. The way
they crash may be impossible to exploit, but this is difficult to prove.

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

2 years agoFix buffer overflow vulnerabilities in mesh code.
Brecht Van Lommel [Sun, 14 Jan 2018 21:14:20 +0000 (22:14 +0100)]
Fix buffer overflow vulnerabilities in mesh code.

Solves these security issues from T52924:
CVE-2017-12081
CVE-2017-12082
CVE-2017-12086
CVE-2017-12099
CVE-2017-12100
CVE-2017-12101
CVE-2017-12105

While the specific overflow issue may be fixed, loading the repro .blend
files may still crash because they are incomplete and corrupt. The way
they crash may be impossible to exploit, but this is difficult to prove.

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

2 years agoFix Linux/GCC compiler warning in recent fixes.
Brecht Van Lommel [Wed, 17 Jan 2018 20:11:59 +0000 (21:11 +0100)]
Fix Linux/GCC compiler warning in recent fixes.

2 years agoLoop Cut: Allow mouse placement w/ numeric input
Campbell Barton [Wed, 17 Jan 2018 23:52:51 +0000 (10:52 +1100)]
Loop Cut: Allow mouse placement w/ numeric input

D2973 by @cyaoeu

2 years agoFix buffer overflow vulernability in thumbnail file reading.
Brecht Van Lommel [Sun, 14 Jan 2018 22:26:31 +0000 (23:26 +0100)]
Fix buffer overflow vulernability in thumbnail file reading.

Fixes CVE-2017-2908 from T52924.

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

2 years agoFix buffer overflows in TIFF, PNG, IRIS, DPX, HDR and AVI loading.
Brecht Van Lommel [Sun, 14 Jan 2018 13:19:57 +0000 (14:19 +0100)]
Fix buffer overflows in TIFF, PNG, IRIS, DPX, HDR and AVI loading.

Solves these security issues from T52924:
CVE-2017-2899
CVE-2017-2900
CVE-2017-2901
CVE-2017-2902
CVE-2017-2903
CVE-2017-2904
CVE-2017-2905
CVE-2017-2906
CVE-2017-2907
CVE-2017-2918

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

2 years agoMemory: add MEM_malloc_arrayN() function to protect against overflow.
Brecht Van Lommel [Sun, 14 Jan 2018 20:53:32 +0000 (21:53 +0100)]
Memory: add MEM_malloc_arrayN() function to protect against overflow.

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

2 years agoDepsgraph: Fix for fake dependency cycle being created for shape key drivers
Sergey Sharybin [Wed, 17 Jan 2018 17:00:54 +0000 (18:00 +0100)]
Depsgraph: Fix for fake dependency cycle being created for shape key drivers

One thing i'm not fully happy with is all this is_same_* functions. Need to
get rid of this by probably adding explicit entry/init/whatever nodes and
maybe making node criteria aware of whether key will be used as "from" or
as "to" node.

2 years agoDelete Invalid Drivers: more lenient poll function
Sybren A. Stüvel [Wed, 17 Jan 2018 16:14:31 +0000 (17:14 +0100)]
Delete Invalid Drivers: more lenient poll function

This function is faster and also allows for deletion of invalid drivers in
nested data blocks (for example in shape keys). Thanks @sergey!

2 years agoexternal_libs: Add openjpeg to the mavc lib folders for cycles standalone.
Ray Molenkamp [Wed, 17 Jan 2018 14:45:05 +0000 (07:45 -0700)]
external_libs: Add openjpeg to the mavc lib folders for cycles standalone.

2 years agoSimplified GRAPH_OT_driver_delete_invalid after feedback @aligorith
Sybren A. Stüvel [Wed, 17 Jan 2018 11:38:14 +0000 (12:38 +0100)]
Simplified GRAPH_OT_driver_delete_invalid after feedback @aligorith

By adding the ANIMFILTER_NODUPLIS flag to the filter it'll only be
processing each F-Curve once, which means we can remove while iterating.

This also solves a potential issue when a datablock has a driver and is
shared among multiple objects.

2 years agoAdded "Delete Invalid Drivers" operator
Sybren A. Stüvel [Wed, 17 Jan 2018 11:12:37 +0000 (12:12 +0100)]
Added "Delete Invalid Drivers" operator

This operator is available in the graph editor in the Drivers mode, and
allows quick cleanup of drivers marked as 'invalid'.

2 years agoCorrect simple deform versioning from D2989
Campbell Barton [Wed, 17 Jan 2018 08:17:49 +0000 (19:17 +1100)]
Correct simple deform versioning from D2989

2 years agoFix T53810: Crash removing a scene used in render
Campbell Barton [Tue, 16 Jan 2018 23:00:14 +0000 (10:00 +1100)]
Fix T53810: Crash removing a scene used in render

Header drawing accesses the scene too.

2 years agoCleanup: Avoid ifdefs in multiple places
Sergey Sharybin [Tue, 16 Jan 2018 16:14:57 +0000 (17:14 +0100)]
Cleanup: Avoid ifdefs in multiple places

Define a helper macro. Makes code read easier.

2 years agoCleanup: Naming of depsgraph
Sergey Sharybin [Tue, 16 Jan 2018 15:38:39 +0000 (16:38 +0100)]
Cleanup: Naming of depsgraph

2 years agoAlembic: don't explicitly pass NULL
Sybren A. Stüvel [Tue, 16 Jan 2018 15:28:10 +0000 (16:28 +0100)]
Alembic: don't explicitly pass NULL

2 years agoT53711: Alembic don´t import vertex colors correctly
Sybren A. Stüvel [Tue, 16 Jan 2018 14:05:31 +0000 (15:05 +0100)]
T53711: Alembic don´t import vertex colors correctly

An index stored in Alembic wasn't used. Often this index is a no-op
(i.e. index[n] = n), in which case the result was fine. However, when it
isn't, it caused issues.

2 years agoSculpting: Fix uninitialized color being left for smooth meshes with hidden mask
Sergey Sharybin [Tue, 16 Jan 2018 13:46:48 +0000 (14:46 +0100)]
Sculpting: Fix uninitialized color being left for smooth meshes with hidden mask

2 years agoSculpting: Fix for "Hide Mask" does not work with multires
Sergey Sharybin [Tue, 16 Jan 2018 13:31:52 +0000 (14:31 +0100)]
Sculpting: Fix for "Hide Mask" does not work with multires

2 years agoFix missing node tree updates when unconnected node affects output via driver
Sergey Sharybin [Tue, 16 Jan 2018 11:06:22 +0000 (12:06 +0100)]
Fix missing node tree updates when unconnected node affects output via driver

Fixes T53794: Can't control color ramp node color values with drivers

2 years agoDepsgraph: Fix fake cyclic dependencies for node tree drivers
Sergey Sharybin [Tue, 16 Jan 2018 10:53:34 +0000 (11:53 +0100)]
Depsgraph: Fix fake cyclic dependencies for node tree drivers

There was a fake cyclic dependency happening when node of node tree is driving
another node of the same tree.

This is related to T53794, but more fixes is needed here.

2 years agoDepsgraph: Better relations name
Sergey Sharybin [Tue, 16 Jan 2018 10:43:05 +0000 (11:43 +0100)]
Depsgraph: Better relations name

2 years agoDepsgraph: Check for ID match when checking if operations corresponds to the same...
Sergey Sharybin [Tue, 16 Jan 2018 10:41:50 +0000 (11:41 +0100)]
Depsgraph: Check for ID match when checking if operations corresponds to the same bone

2 years agoDepsgraph: Cleanup, indentation
Sergey Sharybin [Tue, 16 Jan 2018 10:40:02 +0000 (11:40 +0100)]
Depsgraph: Cleanup, indentation

2 years agoDepsgraph: Cleanup, brace placement\
Sergey Sharybin [Tue, 16 Jan 2018 10:38:44 +0000 (11:38 +0100)]
Depsgraph: Cleanup, brace placement\

2 years agoreadfile: ensure blend header follows the spec
Campbell Barton [Tue, 16 Jan 2018 09:00:13 +0000 (20:00 +1100)]
readfile: ensure blend header follows the spec

2 years agoCleanup: indentation
Campbell Barton [Tue, 16 Jan 2018 00:40:43 +0000 (11:40 +1100)]
Cleanup: indentation

2 years agoUI: support canceling color ramp drag
Campbell Barton [Tue, 16 Jan 2018 00:14:54 +0000 (11:14 +1100)]
UI: support canceling color ramp drag

D2997 by @oktomus

2 years agoAllow for multi-gigapixel renders
Karl Semich [Mon, 15 Jan 2018 11:53:17 +0000 (12:53 +0100)]
Allow for multi-gigapixel renders

This patch fixes a 32-bit overflow that occurs on 64-bit systems due to a numeric literal being treated as 32-bit.

This patch allows for the generation of images that occupy more than 4GB of RAM, which previously caused a crash.

Reviewers: sergey

Reviewed By: sergey

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

2 years agoCycles: CLeanup, remove unused function argument
Sergey Sharybin [Mon, 15 Jan 2018 10:45:16 +0000 (11:45 +0100)]
Cycles: CLeanup, remove unused function argument

2 years agoSculpting: Sdd an option to hide mask in viewport
Sergey Sharybin [Mon, 15 Jan 2018 10:38:56 +0000 (11:38 +0100)]
Sculpting: Sdd an option to hide mask in viewport

Brushes themselves are still affected by the mask, but the viewport is not
showing the mask. This way it's easier to see details while sculpting.

Studio request by Julien Kaspar

2 years agoGPU buffers: Use bitflag to whether we want to show diffuse color
Sergey Sharybin [Fri, 12 Jan 2018 16:35:26 +0000 (17:35 +0100)]
GPU buffers: Use bitflag to whether we want to show diffuse color

Those fine-tuning bits will be extended soon, so makes sense to start using
some more verbose flag names when calling functions.

2 years agoRNA: Add RNA_property_string_set_bytes
Campbell Barton [Mon, 15 Jan 2018 04:49:16 +0000 (15:49 +1100)]
RNA: Add RNA_property_string_set_bytes

This is needed to set values that contain zero bytes
(where the length isn't fixed).

2 years agoCleanup: BLI_ghash
Campbell Barton [Sun, 14 Jan 2018 06:15:02 +0000 (17:15 +1100)]
Cleanup: BLI_ghash

Improve hashsizes comment too.

2 years agoFix T53772: Presets don't support colons
Campbell Barton [Sun, 14 Jan 2018 03:31:39 +0000 (14:31 +1100)]
Fix T53772: Presets don't support colons

2 years agoFix T53771: missing view pixels when rendering multiview + FSAA.
Brecht Van Lommel [Fri, 12 Jan 2018 22:47:24 +0000 (23:47 +0100)]
Fix T53771: missing view pixels when rendering multiview + FSAA.

This never worked, it's not due to recent refactoring.

2 years agoCycles: adaptive subdivision support for panoramic cameras.
Mai Lavelle [Fri, 12 Jan 2018 01:14:27 +0000 (02:14 +0100)]
Cycles: adaptive subdivision support for panoramic cameras.

Adds the code to get screen size of a point in world space, which is
used for subdividing geometry to the correct level. The approximate
method of treating the point as if it were directly in front of the
camera is used, as panoramic projections can become very distorted
near the edges of an image. This should be fine for most uses.

There is also no support yet for offscreen dicing scale, though
panorama cameras are often used for rendering 360° renders anyway.

Fixes T49254.

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

2 years agoCode refactor: adjust camera update for easier code sharing with kernel.
Brecht Van Lommel [Fri, 12 Jan 2018 19:22:55 +0000 (20:22 +0100)]
Code refactor: adjust camera update for easier code sharing with kernel.

2 years agoCode cleanup: remove test code to disable motion blur, no longer useful.
Brecht Van Lommel [Fri, 12 Jan 2018 18:56:52 +0000 (19:56 +0100)]
Code cleanup: remove test code to disable motion blur, no longer useful.

2 years agoFix bmesh.utils.face_join arg parsing
Campbell Barton [Fri, 12 Jan 2018 03:51:15 +0000 (14:51 +1100)]
Fix bmesh.utils.face_join arg parsing

2 years agoUser Prefs: app-template option to hide the cursor
Campbell Barton [Fri, 12 Jan 2018 01:41:03 +0000 (12:41 +1100)]
User Prefs: app-template option to hide the cursor

2 years agoUser Prefs: add new flag for app-template options
Campbell Barton [Fri, 12 Jan 2018 01:30:58 +0000 (12:30 +1100)]
User Prefs: add new flag for app-template options

For experimental options, outside the scope of typical preferences.

While templates are developed we might want to make changes
to behavior which aren't fully compatible with typical work-flows.

Instead of mixing these options in with current preferences
expose separately (we could even force disable them when templates
aren't int use)

2 years agoCycles: option to make background visible through glass transparent.
Lukas Stockner [Thu, 11 Jan 2018 19:03:31 +0000 (20:03 +0100)]
Cycles: option to make background visible through glass transparent.

This can be enabled in the Film panel, with an option to control the
transmisison roughness below which glass becomes transparent.

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

2 years agoCycles: add offscreen dicing scale and dicing camera.
Mai Lavelle [Thu, 11 Jan 2018 23:50:34 +0000 (00:50 +0100)]
Cycles: add offscreen dicing scale and dicing camera.

The offscreen dicing scale helps to significantly reduce memory usage,
by reducing the dicing rate for objects the further they are outside of
the camera view.

The dicing camera can be specified now, to keep the geometry fixed and
avoid crawling artifacts in animation. It is also useful for debugging,
to see the tesselation from a different camera location.

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

2 years agoFix Cycles bevel normal baking having some random incorrect pixels.
Brecht Van Lommel [Thu, 11 Jan 2018 21:25:40 +0000 (22:25 +0100)]
Fix Cycles bevel normal baking having some random incorrect pixels.

The bevel and SSS code could result in NaNs in some cases, tweak the
formulas so this can't happen.

2 years agoBuild: auto detection of libraries built by "make deps" on Linux.
Brecht Van Lommel [Mon, 31 Jul 2017 17:04:18 +0000 (19:04 +0200)]
Build: auto detection of libraries built by "make deps" on Linux.

Use the libraries if they exist in ../lib/linux_x86_64 or similar, so
that you can run "make deps && make full" to get a full static build.
Note that install_deps.sh is still the only officially supported way to
build Blender dependencies on Linux, but this may be useful to some.

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

2 years agoCleanup commented out OMP command.
Bastien Montagne [Thu, 11 Jan 2018 19:17:29 +0000 (20:17 +0100)]
Cleanup commented out OMP command.

2 years agoNuke OMP from multires.c: forgot that one in previous commit.
Bastien Montagne [Thu, 11 Jan 2018 19:14:16 +0000 (20:14 +0100)]
Nuke OMP from multires.c: forgot that one in previous commit.

Gives same kind of speedup too, 8.7ms with old OMP code, 2.7ms with new
one, with same level-4 multires monkey head.

2 years agoNuke OMP usage in multires.c.
Bastien Montagne [Thu, 11 Jan 2018 18:39:24 +0000 (19:39 +0100)]
Nuke OMP usage in multires.c.

New code is over three times quicker than old one here (e.g. Suzanne
subdiv level 4, 250k tris, threaded part is now 1.4ms instead of 4.5ms
with OMP).

2 years agoPreparation step for nuking OMP from multires code.
Bastien Montagne [Thu, 11 Jan 2018 16:56:18 +0000 (17:56 +0100)]
Preparation step for nuking OMP from multires code.

Remove the critical OMP sections used to protect mem allocation.

First one can be done in a separate loop before main, parallelized one.

Second one only affect 'private' data, so we only need to ensure
guardedalloc thread safety is enabled.

This is committed as separated step to ease troubleshooting in case
bisecting becomes necesary.

2 years agoCleanup typo in comment.
Bastien Montagne [Thu, 11 Jan 2018 16:55:58 +0000 (17:55 +0100)]
Cleanup typo in comment.