Campbell Barton [Wed, 7 Nov 2018 01:17:58 +0000 (12:17 +1100)]
Cleanup: use BLI_compiler_compat.h for BLI_INLINE
Campbell Barton [Wed, 7 Nov 2018 00:44:51 +0000 (11:44 +1100)]
Cleanup: renmae ePaintTexture(Projective) -> 3D
Matches ePaintTexture2D, less verbose.
Troy Sobotka [Tue, 6 Nov 2018 18:35:50 +0000 (19:35 +0100)]
Fix T56055: color discrepancy between viewport and render for Filmic transforms.
Irie Shinsuke [Sun, 4 Nov 2018 19:34:02 +0000 (20:34 +0100)]
Fix T57388: Blender Internal + Freestyle viewport render wrongly using FSAA.
Brecht Van Lommel [Sun, 4 Nov 2018 19:25:57 +0000 (20:25 +0100)]
Fix assert rendering hair tests on some systems.
Brecht Van Lommel [Sun, 4 Nov 2018 19:13:55 +0000 (20:13 +0100)]
Fix assert rendering with denoising, after recent changes.
Campbell Barton [Sun, 4 Nov 2018 05:44:28 +0000 (16:44 +1100)]
Fix ghash masking out upper bits on 64bit systems
The code this was taken from assumes a 'size_t' result,
which isn't the case here.
In practice the bucket distribution wasn't bad,
even so this was a nop so best fix.
Brecht Van Lommel [Thu, 1 Nov 2018 11:06:04 +0000 (12:06 +0100)]
Fix T57529: 2D image paint fill tool not taking into account alpha.
Campbell Barton [Thu, 1 Nov 2018 05:17:40 +0000 (16:17 +1100)]
Cleanup: move progress utility module into bpy_extras
Try avoid having too many toplevel modules with generic names.
Sergey Sharybin [Wed, 31 Oct 2018 10:46:52 +0000 (11:46 +0100)]
Cycles: Fix wrong BVH used when disabling AVX2 in debug settings
Mainly useful for debugging. Previously, when AVX2 was disabled
in the debug panel but BVH layout was kept on BVH8 nothing was
rendered.
Needed to make it so supported BVH layout mask for devices is
queried in "dynamic", so it is possible to use DebugFlags there.
Ray Molenkamp [Tue, 30 Oct 2018 23:36:36 +0000 (17:36 -0600)]
make.bat: fix unquoted variables.
causing build issues for some users.
Brecht Van Lommel [Tue, 30 Oct 2018 10:39:44 +0000 (11:39 +0100)]
Fix build error on Windows 32bit, alignment was wrong.
Campbell Barton [Mon, 29 Oct 2018 23:46:29 +0000 (10:46 +1100)]
UI: add uiItemMenuFN which frees it's argument
Lukas Stockner [Mon, 29 Oct 2018 14:45:58 +0000 (15:45 +0100)]
Cycles: Support generating Denoising passes without actually denoising
Needed for the animation denoiser since the denoising filter is done separately there.
Reviewers: brecht, sergey
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D3833
Brecht Van Lommel [Mon, 29 Oct 2018 12:05:29 +0000 (13:05 +0100)]
Cycles: more detailed tooltips for cryptomatte options.
Campbell Barton [Mon, 29 Oct 2018 04:21:25 +0000 (15:21 +1100)]
Fix assert weight painting after undo
Campbell Barton [Mon, 29 Oct 2018 02:01:48 +0000 (13:01 +1100)]
Modifier: mask threshold option
D3834 by @Allosteric
Roel Koster [Sun, 28 Oct 2018 12:03:50 +0000 (13:03 +0100)]
Fix snaps appearing in system bookmarks on Linux.
Differential Revision: https://developer.blender.org/D3838
Brecht Van Lommel [Sun, 28 Oct 2018 13:53:08 +0000 (14:53 +0100)]
Fix Linux build after Cryptomatte commit.
Stefan Werner [Sun, 28 Oct 2018 09:37:41 +0000 (05:37 -0400)]
Cycles: Added Cryptomatte output.
This allows for extra output passes that encode automatic object and material masks
for the entire scene. It is an implementation of the Cryptomatte standard as
introduced by Psyop. A good future extension would be to add a manifest to the
export and to do plenty of testing to ensure that it is fully compatible with other
renderers and compositing programs that use Cryptomatte.
Internally, it adds the ability for Cycles to have several passes of the same type
that are distinguished by their name.
Differential Revision: https://developer.blender.org/D3538
Brecht Van Lommel [Fri, 26 Oct 2018 17:26:06 +0000 (19:26 +0200)]
Fix T57393: Cycles OSL bevel and AO not working after OSL upgrade.
Lukas Stockner [Thu, 30 Aug 2018 21:28:10 +0000 (23:28 +0200)]
Cycles: Expose noisy image pass by default when rendering with denoiser
Apparently quite a few users would like to have the noisy pass available when using the denoiser, and since it's being generated anyways we might as well expose it by default.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D3608
Lukas Stockner [Sun, 21 Oct 2018 01:41:31 +0000 (03:41 +0200)]
Cycles: Overhaul ensure_valid_reflection to fix issues with normal- and bumpmapping
This function is supposed to prevent the black artifacts caused by strong normal- or bumpmapping, but failed in some cases.
Now the code correctly handles all test files and previous issues I am aware of and also has extensive comments describing
the algorithm and the math behind it.
Basically, the main problem was that there can be multiple valid solutions that fulfil the reflection angle criterium,
but I had assumed that only one would exist and therefore simply picked the first solution with a positive term in srqt().
Now, the code uses additional validity checks and a simple heuristic to pick the best valid solution.
Additionally, the code messed up very shallow reflections even if the normal map strength was zero due to the constant
limit for the outgoing ray angle, which caused shallow incoming rays to fail the initial test even when reflected directly
on Ng. Now, the code accounts for this by reducing the threshold in the case of a shallow incoming ray, ensuring that at
least N=Ng is always a valid solution.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D3816
Campbell Barton [Thu, 25 Oct 2018 04:18:24 +0000 (15:18 +1100)]
WM: minor changes to cursor API
Campbell Barton [Thu, 25 Oct 2018 01:24:38 +0000 (12:24 +1100)]
Cleanup: unused vars, correct bad (unused) logic
Bastien Montagne [Wed, 24 Oct 2018 06:43:20 +0000 (08:43 +0200)]
Fix (unreported) bad halding of ID usercounts when fully copying a scene.
Bastien Montagne [Wed, 24 Oct 2018 06:23:14 +0000 (08:23 +0200)]
I18n: tweak/fix exception catching code of pgettex() wrapper.
Related to T57066, rather unlikely to fix core of the issue, but may
solve crash itself.
Same as rBf22385f28ec8 (did it by mistake in 2.8 first :/ ).
Campbell Barton [Wed, 24 Oct 2018 01:54:12 +0000 (12:54 +1100)]
BMesh: inline index lookups
For release builds this is now the same as indexing the array directly.
Ray Molenkamp [Mon, 22 Oct 2018 16:17:08 +0000 (10:17 -0600)]
Windows: Enable python debugging in Visual Studio.
see D3817 for technical details, and https://wiki.blender.org/wiki/Tools/Debugging/Python_Visual_Studio for a end user quick-start guide.
Differential Revision: https://developer.blender.org/D3817
Bastien Montagne [Mon, 22 Oct 2018 08:39:57 +0000 (10:39 +0200)]
Tentative fix for T57066: Daily build of Blend 2.79 crashes on OSX Mojave.
Looks like we need to explicitly set i18n language to default value on
some OSs... Unless that 'need to create new translated-name IDs in
versionning code for startup file' situation is really seldom.
Anyway, hopefully that will fix the crash.
Campbell Barton [Mon, 22 Oct 2018 04:08:26 +0000 (15:08 +1100)]
Prevent G.fileflags changes when WM_OT_save_mainfile() is called from script
This is to solve an issue where a blend file could be compressed
unbeknownst to the artist. This happened in the following situtation:
- Artist edits an uncompressed blend file.
- Some script saves a compressed blendfile to a separate location.
- When the artist saves the file (s)he is editing (File>Save, or Ctrl+S),
it was silently compressed.
Cherry pick from:
cd3b313d5f44a10a1150bf1ddb560775d1bcd827
Campbell Barton [Mon, 22 Oct 2018 03:51:06 +0000 (14:51 +1100)]
Fix T57328: 'Save As Copy' prints warning
Lukas Stockner [Sun, 21 Oct 2018 22:14:22 +0000 (00:14 +0200)]
Cycles: Enable shadow information in requested features when denoising is used
The shadow information isn't only used for shadowcatchers, but also to generate the shadowing feature pass of the denoiser.
Ray Molenkamp [Fri, 19 Oct 2018 15:09:06 +0000 (09:09 -0600)]
build_depenencies: Fix url for openal.
Brecht Van Lommel [Fri, 19 Oct 2018 12:42:27 +0000 (14:42 +0200)]
Fix T57284: poor result UV unwrapping concave n-gon.
Campbell Barton [Fri, 19 Oct 2018 06:49:16 +0000 (17:49 +1100)]
Fix error disabling all addons
Brecht Van Lommel [Thu, 18 Oct 2018 17:51:34 +0000 (19:51 +0200)]
Fix Copy Selection to Buffer breaking library paths.
This is a bug experienced by animators in the Blender Studio that developers
have been trying to fix for a /long/ time.
What happens is that partial file writing extracts the needed datablocks from
the main list of datablocks into a smaller one. Afterwards they are added back
to the main list, but in some cases not exactly in the same order.
There is file path remapping code that depends on the datablocks being in
exactly the same order as before, and when this was not the case filepaths
would get swapped between datablocks
The reason datablocks are not restored in the same order is because the sorting
of datablocks by name is a) case insensitive and b) undefined if there are
multiple datablocks with the same name from different libraries. This should
be made well defined, but the fix in this commit is simpler.
The way animators ran into this bug is that they use the Copy Attributes addon
a lot, which has as the first item in the menu Copy Selection to Buffer. In
some cases this would be clicked accidentally when menu is near the edge of the
window, breaking the library paths which would only be noticed a much later on
file save and reload.
The way this bug was finally tracked down is that it was suspected that the
undo system was the cause, and so Bastien added library validation for undo.
When Hjalti then did undo and noticed the error, he remembered accidentally
clicking Copy Selection to Buffer just before, and we could finally reproduce
the bug.
Bastien Montagne [Wed, 17 Oct 2018 14:43:02 +0000 (16:43 +0200)]
DEBUG_IO: add sanity check on libdata in undo step as well.
There are serious suspicions that weird corruptions faced by studio
artists may happen in undo/redo code, so let's see whether that's the
case.
With this, and when --debug-io arg is passed on startup, the whole lib
data are checked at every undo. This makes undo slower (from two to
three times slower), but it could help us spot better what happens...
Bastien Montagne [Wed, 17 Oct 2018 14:42:36 +0000 (16:42 +0200)]
Expose 'debug_io' flag in bpy.app
Bastien Montagne [Wed, 17 Oct 2018 14:42:18 +0000 (16:42 +0200)]
Minor style cleanup.
Dalai Felinto [Tue, 16 Oct 2018 19:54:59 +0000 (16:54 -0300)]
Fix cmake not triggering rebuild on .glsl changes
At least on windows we do not re-run datatoc when the .glsl files change.
To test is simple, just change edit_mesh_overlay_common_lib.glsl
remove lines, write plain text, ..., now rebuild and go in edit mode
with the default cube.
I also had to remove the entry in gpu/CMakeLists.txt for
gpu_shader_material.glsl since this was being tracked directly, as well
as running data_to_c_simple (otherwise CMake raises an error for
duplicated entries).
We probably want to do the same for the other datatoc functions.
Reviewers: LazyDodo, brecht
Differential Revision: https://developer.blender.org/D3803
Campbell Barton [Wed, 10 Oct 2018 22:36:43 +0000 (09:36 +1100)]
Fix incorrect strncpy use
Didn't ensure null terminated.
Campbell Barton [Wed, 10 Oct 2018 21:49:28 +0000 (08:49 +1100)]
Cleanup: style (pointers)
Campbell Barton [Mon, 8 Oct 2018 22:28:36 +0000 (09:28 +1100)]
Cleanup: spelling
Lukas Stockner [Mon, 8 Oct 2018 22:03:47 +0000 (00:03 +0200)]
Cycles: Fix NLM denoising kernels zeroing the wrong buffer on OpenCL
Since my temporary buffer commit (about a month ago), the OpenCL device was zeroing the wrong buffer, leading to
completely wrong filtered feature passes and therefore significantly lower-quality results than CPU and CUDA.
Campbell Barton [Mon, 8 Oct 2018 20:58:06 +0000 (07:58 +1100)]
Cleanup: style
Campbell Barton [Mon, 8 Oct 2018 20:47:35 +0000 (07:47 +1100)]
Fix T57103: Subdivide smooth results in NAN verts
Lukas Stockner [Mon, 8 Oct 2018 20:22:05 +0000 (22:22 +0200)]
Cycles: Clean up extra minus in previous commit
Forgot to add that change, sorry for the noise.
Lukas Stockner [Mon, 8 Oct 2018 20:17:06 +0000 (22:17 +0200)]
Cycles: Reuse existing buffer in the NLM denoising kernels on CPU
Lukas Stockner [Mon, 8 Oct 2018 20:13:40 +0000 (22:13 +0200)]
Cycles: Use existing shared temporary memory in reconstruction step of the denoiser
Previously the code allocated its own temporary memory, but it's possible to just use the existing shared one instead.
Lukas Stockner [Sat, 6 Oct 2018 20:12:28 +0000 (22:12 +0200)]
Tests: Support parallel execution of render tests
Previously, parallel tests would overwrite each others temporary outputs.
Lukas Stockner [Sat, 6 Oct 2018 18:39:01 +0000 (20:39 +0200)]
Cycles: Implement vectorized NLM kernels for faster CPU denoising
Jorge Bernal [Thu, 4 Oct 2018 11:31:38 +0000 (13:31 +0200)]
Fix T57059: "make deps" build error when sndio library is present.
Ray Molenkamp [Wed, 3 Oct 2018 16:18:22 +0000 (10:18 -0600)]
cycles: Support building with cuda 10 on windows.
Brecht Van Lommel [Wed, 3 Oct 2018 10:54:21 +0000 (12:54 +0200)]
Fix build with older CMake versions that we still need to support.
Brecht Van Lommel [Wed, 3 Oct 2018 09:10:08 +0000 (11:10 +0200)]
Fix T54287: memory not freed after rendering on Linux.
With new jemalloc versions memory allocated by threads that then become
inactive is not longer automatically freed. Instead we have to enable a
background thread to do it.
Some testing is needed to find out of this is sufficient, because the
background thread only runs periodically.
Campbell Barton [Tue, 2 Oct 2018 01:17:31 +0000 (11:17 +1000)]
Correct tooltip
Brecht Van Lommel [Sun, 30 Sep 2018 17:28:15 +0000 (19:28 +0200)]
Fix T56909: wrong interface scale on macOS 10.14, when using 10.14 SDK.
This does not affect existing releases as far as I can tell, only new builds
using the new SDK have the problem.
mano-wii [Mon, 1 Oct 2018 03:16:44 +0000 (00:16 -0300)]
BLI_math: add `isect_seg_seg_v3`
Brecht Van Lommel [Fri, 28 Sep 2018 16:22:35 +0000 (18:22 +0200)]
Fix T56396: Cycles wrong object motion blur with deformation blur disabled.
Sergey Sharybin [Fri, 28 Sep 2018 13:02:20 +0000 (15:02 +0200)]
Cycles: Fix compilation error of CUDA kernel
Was caused by previous commit.
Brecht Van Lommel [Fri, 28 Sep 2018 12:09:42 +0000 (14:09 +0200)]
Tests: recurse into directories for finding OpenGL draw test .blends.
Sergey Sharybin [Fri, 28 Sep 2018 10:39:49 +0000 (12:39 +0200)]
Cycles: Fix crash with BVH8 on certain scenes
The crash was caused by BVH traversal stack being overflowed.
That overflow was caused by lots of false-positive intersections
for rays originating on a non-finite location.
Not sure why those rays will be existing in the first place,
this is to be investigated separately.
This commit moves pre-SSE4.1 check to a higher level function
and enables it for all miroarchitectures.
Brecht Van Lommel [Fri, 28 Sep 2018 10:03:15 +0000 (12:03 +0200)]
Fix T56905: unsupported channel layout error writing AAC audio.
This uses same mapping as Audaspace to specify channel layout, which was
missing before.
Sergey Sharybin [Fri, 28 Sep 2018 07:46:12 +0000 (09:46 +0200)]
Fix compilation errors and warnings with Clang-6
Brecht Van Lommel [Thu, 27 Sep 2018 13:59:14 +0000 (15:59 +0200)]
Fix cycles_cubin_cc build error on macOS.
Brecht Van Lommel [Thu, 27 Sep 2018 13:35:22 +0000 (15:35 +0200)]
Spelling fixes in comments and descriptions, patch by luzpaz.
Differential Revision: https://developer.blender.org/D3732
Brecht Van Lommel [Thu, 27 Sep 2018 13:17:49 +0000 (15:17 +0200)]
Fix CUDA build with Xcode 10.0, use nvrtc due to incompatible compilers.
Sergey Sharybin [Thu, 27 Sep 2018 12:47:52 +0000 (14:47 +0200)]
Cycles: Cleanup
Sergey Sharybin [Thu, 27 Sep 2018 11:42:16 +0000 (13:42 +0200)]
Cycles: Sync BVH8 unaligned node packing code with BVH4
Similar to
dfae3de6bdf.
Brecht Van Lommel [Tue, 10 Apr 2018 08:32:56 +0000 (10:32 +0200)]
Tests: add --no-window-focus to open window without focus.
This is useful to run OpenGL tests while continuing to do other tasks
without windows constantly popping up in the foreground.
Campbell Barton [Thu, 27 Sep 2018 01:52:21 +0000 (11:52 +1000)]
Spin Tool: hide options unrelated to duplication
Campbell Barton [Wed, 26 Sep 2018 00:55:22 +0000 (10:55 +1000)]
Cleanup: redundant include
Campbell Barton [Tue, 25 Sep 2018 23:45:14 +0000 (09:45 +1000)]
BMesh: spin option to merge first/last
For 360d revolutions this is almost always whats intended,
enable by default.
Ray Molenkamp [Tue, 25 Sep 2018 17:05:01 +0000 (11:05 -0600)]
CMake: Repress deprecation warnings with MSVC.
Alan Troth [Tue, 25 Sep 2018 16:29:56 +0000 (18:29 +0200)]
Fix UV edit smart stitch not redoing correctly.
Differential Revision: https://developer.blender.org/D3687
Michel Anders [Tue, 25 Sep 2018 13:04:10 +0000 (15:04 +0200)]
Fix missing metaball capsule properties in properties editor.
Differential Revision: https://developer.blender.org/D3726
Jacques Lucke [Tue, 25 Sep 2018 10:01:43 +0000 (12:01 +0200)]
Fix T56912: bpy.data.masks.new() crashed
I think there are two possible ways to fix that.
1. Make the name a required parameter.
2. Provide a default value.
I choosed option 1 in this fix to be consistent with other .new functions.
Also I think `RNA_def_string` instead of `RNA_def_string_file_path` should be used here. Looks like a copy-paste error.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D3728
Campbell Barton [Tue, 25 Sep 2018 03:44:25 +0000 (13:44 +1000)]
Missing from last commit
Campbell Barton [Tue, 25 Sep 2018 03:31:29 +0000 (13:31 +1000)]
BMesh: option to flip normals for extrude/spin
Campbell Barton [Tue, 25 Sep 2018 01:41:29 +0000 (11:41 +1000)]
Cleanup: style
IRIE Shinsuke [Mon, 24 Sep 2018 16:08:24 +0000 (18:08 +0200)]
Fix T56861: freestyle + BI + full sample AA not working correct.
Brecht Van Lommel [Mon, 24 Sep 2018 15:27:41 +0000 (17:27 +0200)]
Spelling fixes in comments and descriptions, patch by luzpaz.
Differential Revision: https://developer.blender.org/D3719
Sergey Sharybin [Mon, 24 Sep 2018 14:23:45 +0000 (16:23 +0200)]
Tracking: Use pixel aspect from clip
Don't force square pixel, since on a more real pipeline
expected delivery is same anamorphic as an input footage.
Lukas Stockner [Mon, 24 Sep 2018 09:40:00 +0000 (11:40 +0200)]
Fix T56875: Auto Render not working after render pass name refactor
The default compositor node update function sets the need_exec flag on the node
which the Auto Render feature checks, but the custom update function that was
added as part of rB4cf7fc3b3a4d didn't do so.
Therefore, the two custom update functions that were added now also call the
default update function.
Campbell Barton [Thu, 20 Sep 2018 22:15:46 +0000 (08:15 +1000)]
Cleanup: style, use raw strings
Sergey Sharybin [Thu, 20 Sep 2018 13:38:15 +0000 (15:38 +0200)]
Sculpt: Fix memory leak in undo system
Was not freeing undo nodes themselves.
Campbell Barton [Thu, 20 Sep 2018 02:45:07 +0000 (12:45 +1000)]
Cleanup: use win_to_3d_on_plane for curve drawing
Campbell Barton [Thu, 20 Sep 2018 02:42:00 +0000 (12:42 +1000)]
3D View: add clip argument to win_to_3d_on_plane
Campbell Barton [Thu, 20 Sep 2018 02:00:02 +0000 (12:00 +1000)]
3D View: add a simple un-clipped win_to_ray
Campbell Barton [Thu, 20 Sep 2018 01:47:17 +0000 (11:47 +1000)]
Cleanup: rename 3D view ray calculation functions
Using near far and optionally clipping planes is
involved and not needed in many cases.
Rename so a simpler version of this function can be added.
Campbell Barton [Thu, 20 Sep 2018 01:21:34 +0000 (11:21 +1000)]
3D View: point-on-plane from screen location utility
Campbell Barton [Thu, 20 Sep 2018 00:06:59 +0000 (10:06 +1000)]
Cleanup: style
Wybren van Keulen [Wed, 19 Sep 2018 08:55:49 +0000 (10:55 +0200)]
Fix T53745: Alembic exported with vertex colors not readable by other software.
Most other software expects to read indexed vertex colors, so write indices
along with the colors as we already do for UVs.
Differential Revision: https://developer.blender.org/D3704
Sergey Sharybin [Wed, 19 Sep 2018 16:41:43 +0000 (18:41 +0200)]
Cycles: Cleanup, double semicolon
Brecht Van Lommel [Wed, 19 Sep 2018 15:48:11 +0000 (17:48 +0200)]
Spelling fixes in comments and descriptions, patch by luzpaz.
Differential Revision: https://developer.blender.org/D3700
Ray Molenkamp [Wed, 19 Sep 2018 16:16:46 +0000 (10:16 -0600)]
make.bat: fix build error when there are spaces in the path to svn/git/cmake
Brecht Van Lommel [Wed, 19 Sep 2018 14:04:11 +0000 (16:04 +0200)]
Fix wrong CUDA version warning in cmake.
Fix suggested by Dalai.
mano-wii [Wed, 19 Sep 2018 12:04:55 +0000 (09:04 -0300)]
Fix possible misuse of `BLI_strncpy`.
Same issue as rB39f7c8256d58.
Bastien Montagne [Wed, 19 Sep 2018 09:11:39 +0000 (11:11 +0200)]
Fix unused var in case Alembic is not enabled, in own previous commit.
Sorry for the noise...