blender.git
2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Mon, 14 Aug 2017 15:07:30 +0000 (17:07 +0200)]
Merge branch 'master' into blender2.8

2 years agoFix T52391: Crash on duplicating material.
Bastien Montagne [Mon, 14 Aug 2017 13:40:54 +0000 (15:40 +0200)]
Fix T52391: Crash on duplicating material.

Bug in new ID copying code, thanks once again to stupid nodetrees, we
ended up wrongly remapping MA node->id pointers to NodeTree when copying
materials using node trees...

2 years agoCleanup: confusing naming in BKE_node_tree_copy_data().
Bastien Montagne [Mon, 14 Aug 2017 13:40:11 +0000 (15:40 +0200)]
Cleanup: confusing naming in BKE_node_tree_copy_data().

2 years agoNew ID Copying code: fix node_tree_copy_data still potentially increasing usercount...
Bastien Montagne [Mon, 14 Aug 2017 13:15:57 +0000 (15:15 +0200)]
New ID Copying code: fix node_tree_copy_data still potentially increasing usercount of its gpencil pointer.

_copy_data() functions of datablocks shall never handle that, it's done
by generic calling code in library.c.

2 years agoCycles: Guard memcpy to potentially re-allocating memory with lock
Sergey Sharybin [Mon, 14 Aug 2017 12:55:47 +0000 (14:55 +0200)]
Cycles: Guard memcpy to potentially re-allocating memory with lock

Basically, make re-alloc and memcpy from the same lock, otherwise one
thread might be re-allocating thread while another one is trying to
copy data there.

Reported by Mohamed Sakr in IRC, thanks!

2 years agoTracking: Fix missing checks in operator poll functions
Sergey Sharybin [Mon, 14 Aug 2017 09:46:00 +0000 (11:46 +0200)]
Tracking: Fix missing checks in operator poll functions

Reported by Vuk Gardašević (lijenstina) in IRC, thanks!

2 years agoFix T51850: Motion tracking - poor performance with keyframe matching on large video
Sergey Sharybin [Mon, 14 Aug 2017 09:41:12 +0000 (11:41 +0200)]
Fix T51850: Motion tracking - poor performance with keyframe matching on large video

Enabled cache for frame accessor and tweaked policy so we guarantee keyframed
images to be always in the cache. The logic might fail in some real corner case
(for example, when doing multiple tracks at once on a system where we can not
fit 2 clip frames in cache) but things are much better now for regular use.

2 years agoTracking: Make frame accessor cache safe for threading
Sergey Sharybin [Mon, 14 Aug 2017 09:28:58 +0000 (11:28 +0200)]
Tracking: Make frame accessor cache safe for threading

2 years agoTracking: Cleanup, newlines and comments
Sergey Sharybin [Mon, 14 Aug 2017 09:19:06 +0000 (11:19 +0200)]
Tracking: Cleanup, newlines and comments

2 years agoTracking: Cleanup, de-duplicate code
Sergey Sharybin [Mon, 14 Aug 2017 09:16:08 +0000 (11:16 +0200)]
Tracking: Cleanup, de-duplicate code

2 years agoTrackign: Add some basic logging about caching in frame accessor
Sergey Sharybin [Mon, 14 Aug 2017 09:10:45 +0000 (11:10 +0200)]
Trackign: Add some basic logging about caching in frame accessor

2 years agoTracking: Make frame access cache aware of region
Sergey Sharybin [Mon, 14 Aug 2017 09:06:22 +0000 (11:06 +0200)]
Tracking: Make frame access cache aware of region

Cache is still kept disabled, need to think of a policy for cache cleanup.

2 years agoTracking: Correct comparison in cache keys
Sergey Sharybin [Mon, 14 Aug 2017 08:37:36 +0000 (10:37 +0200)]
Tracking: Correct comparison in cache keys

This code wasn't uses, but the key comparison was totally wrong.

2 years agoTracking: Cleanup and some comments
Sergey Sharybin [Mon, 14 Aug 2017 08:23:29 +0000 (10:23 +0200)]
Tracking: Cleanup and some comments

2 years agoMove back master to BCon1 (aka alpha) status.
Bastien Montagne [Mon, 14 Aug 2017 08:44:19 +0000 (10:44 +0200)]
Move back master to BCon1 (aka alpha) status.

Forgot to do that the other week, master is no more 2.79 RC!

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Mon, 14 Aug 2017 02:13:55 +0000 (12:13 +1000)]
Merge branch 'master' into blender2.8

2 years ago[build_deps/Windows] Prevent writing of any files into the source tree.
Ray Molenkamp [Sun, 13 Aug 2017 19:02:15 +0000 (13:02 -0600)]
[build_deps/Windows] Prevent writing of any files into the source tree.

2 years agoGPU_framebuffer: Fix incorrect last level.
Clément Foucault [Sun, 13 Aug 2017 13:21:47 +0000 (15:21 +0200)]
GPU_framebuffer: Fix incorrect last level.

2 years agoEevee: Optimize and improve GTAO Horizon search
Clément Foucault [Sun, 13 Aug 2017 12:30:24 +0000 (14:30 +0200)]
Eevee: Optimize and improve GTAO Horizon search

This fix a bug when occluder are on the edge of the screen and occludes more than they should.

Grouped the texture fetches together and clamp the ray at the border of the screen.

Also add a few util functions.

2 years agoEevee: Fix the AO problem around object edges.
Clément Foucault [Sat, 12 Aug 2017 15:21:35 +0000 (17:21 +0200)]
Eevee: Fix the AO problem around object edges.

This was due to missing GL_TEXTURE_MAG_FILTER.

2 years agoDRW: Make Cache timing global and not per object.
Clément Foucault [Fri, 11 Aug 2017 13:39:09 +0000 (15:39 +0200)]
DRW: Make Cache timing global and not per object.

This is to fix some performance bottleneck.

2 years agoCode cleanup: make L_transparent part of PathRadiance.
Brecht Van Lommel [Sat, 12 Aug 2017 21:15:58 +0000 (23:15 +0200)]
Code cleanup: make L_transparent part of PathRadiance.

2 years agoCode cleanup: make DebugData part of PathRadiance.
Brecht Van Lommel [Sat, 12 Aug 2017 19:07:55 +0000 (21:07 +0200)]
Code cleanup: make DebugData part of PathRadiance.

2 years agoCode cleanup: make it easier to test only Sobol, CMJ or Pseudorandom.
Brecht Van Lommel [Sat, 12 Aug 2017 21:04:58 +0000 (23:04 +0200)]
Code cleanup: make it easier to test only Sobol, CMJ or Pseudorandom.

2 years agoCycles: optimize CPU split kernel data init.
Brecht Van Lommel [Sun, 6 Aug 2017 15:17:40 +0000 (17:17 +0200)]
Cycles: optimize CPU split kernel data init.

2 years agoCode cleanup: remove unused Cycles random number code.
Brecht Van Lommel [Sun, 6 Aug 2017 19:14:58 +0000 (21:14 +0200)]
Code cleanup: remove unused Cycles random number code.

2 years agoFix T52372: CUDA build error after recent changes.
Brecht Van Lommel [Sat, 12 Aug 2017 18:36:48 +0000 (20:36 +0200)]
Fix T52372: CUDA build error after recent changes.

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sat, 12 Aug 2017 15:14:55 +0000 (01:14 +1000)]
Merge branch 'master' into blender2.8

2 years agoWM: load UI for new file, even when pref disabled
Campbell Barton [Sat, 12 Aug 2017 15:05:10 +0000 (01:05 +1000)]
WM: load UI for new file, even when pref disabled

Loading startup file always loads the UI now.

2 years agoGPU_framebuffer: Fix performance issue on intel.
Clément Foucault [Sat, 12 Aug 2017 14:16:28 +0000 (16:16 +0200)]
GPU_framebuffer: Fix performance issue on intel.

This should fixes the error message that a stall occured because of busy mipmap.

This happened on the minmax buffer generation and introduced a random 0.2ms latency.
I'm not sure of what was happening though.

2 years agoEevee: Fix and opimize MinMaxZ generation.
Clément Foucault [Sat, 12 Aug 2017 14:13:08 +0000 (16:13 +0200)]
Eevee: Fix and opimize MinMaxZ generation.

2 years agoFix T52368: OSL trace() crash after recent changes.
Brecht Van Lommel [Sat, 12 Aug 2017 12:32:52 +0000 (14:32 +0200)]
Fix T52368: OSL trace() crash after recent changes.

2 years agoCode cleanup: fix various compiler warnings.
Brecht Van Lommel [Sat, 12 Aug 2017 12:07:37 +0000 (14:07 +0200)]
Code cleanup: fix various compiler warnings.

2 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Sat, 12 Aug 2017 12:01:17 +0000 (14:01 +0200)]
Merge branch 'master' into blender2.8

2 years agoFix T52298: hidden lamps still compute shadow buffers in viewport.
Brecht Van Lommel [Sat, 12 Aug 2017 11:22:26 +0000 (13:22 +0200)]
Fix T52298: hidden lamps still compute shadow buffers in viewport.

2 years agoCode cleanup: fix warning and improve terminology.
Brecht Van Lommel [Fri, 11 Aug 2017 12:21:34 +0000 (14:21 +0200)]
Code cleanup: fix warning and improve terminology.

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sat, 12 Aug 2017 09:08:49 +0000 (19:08 +1000)]
Merge branch 'master' into blender2.8

2 years agoFix T52329: Boolean with aligned shapes failed
Campbell Barton [Sat, 12 Aug 2017 08:14:50 +0000 (18:14 +1000)]
Fix T52329: Boolean with aligned shapes failed

Creating ngons with multiple axis aligned shapes in the middle of a
single face would fail in some cases.

This exposed multiple problems in BM_face_split_edgenet_connect_islands

- Islands needed to be sorted on Y axis when X was aligned.
- Checking edge intersections needed increased endpoint bias.
- BVH epsilon needed to be increased.

2 years agoMath Lib: add isect_seg_seg_v2_point_ex
Campbell Barton [Sat, 12 Aug 2017 08:12:29 +0000 (18:12 +1000)]
Math Lib: add isect_seg_seg_v2_point_ex

This exposes end-point bias argument, needed in rare cases.

2 years agoFix width estimation for buttons with short labels in pie menus
Aleksandr Zinovev [Sat, 12 Aug 2017 08:00:19 +0000 (11:00 +0300)]
Fix width estimation for buttons with short labels in pie menus

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

To be backported to 2.79 branch

2 years agoCleanup: quiet warnings
Campbell Barton [Sat, 12 Aug 2017 04:07:26 +0000 (14:07 +1000)]
Cleanup: quiet warnings

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sat, 12 Aug 2017 04:06:02 +0000 (14:06 +1000)]
Merge branch 'master' into blender2.8

2 years agoCleanup: whitespace
Campbell Barton [Sat, 12 Aug 2017 03:37:34 +0000 (13:37 +1000)]
Cleanup: whitespace

2 years agoiFix T52050: Empty VSE preview for scene strips with OpenGL preview + Rendered settings.
Bastien Montagne [Fri, 11 Aug 2017 16:02:54 +0000 (18:02 +0200)]
iFix T52050: Empty VSE preview for scene strips with OpenGL preview + Rendered settings.

'OpenGL Preview' checkbox was redundant now, just use seq_prev_type
value only.

Might be OK for 2.79, but should be double-checked first...

2 years agoFix T52149: LoopTriArray computation was not correctly protected against concurrency.
Bastien Montagne [Fri, 11 Aug 2017 14:51:19 +0000 (16:51 +0200)]
Fix T52149: LoopTriArray computation was not correctly protected against concurrency.

Note: this commit seems to work as expected (also with transform
snapping etc.). However, it is rather unsafe - not enough for 2.79 at
least, unless we get much more testing on it. It also depends on three
previous ones.

Note that using a global lock here is far from ideal, we should rather
have a lock per DM, but that will do for now, whole DM thing is doomed
to oblivion anyway in 2.8.

Also, we may need a `DM_DIRTY_LOOPTRIS` dirty flag at some point. Looks
like we can survive without it for now though... Probably because cached
looptris are never copied accross DM's?

2 years agoCleanup: remove useless `DM_ensure_looptri()`.
Bastien Montagne [Fri, 11 Aug 2017 14:18:01 +0000 (16:18 +0200)]
Cleanup: remove useless `DM_ensure_looptri()`.

That one was doing exactly same thing as `dm->getLoopTriArray()`, no
point in having twice the same code here...

2 years agoFix transform snap code using 'allocated' flags to get verts/edges/etc. arrays again...
Bastien Montagne [Fri, 11 Aug 2017 13:53:38 +0000 (15:53 +0200)]
Fix transform snap code using 'allocated' flags to get verts/edges/etc. arrays again from DM.

This was... horribly wrong, CDDM will often *not* need to allocate
anything to return arrays of mesh items! Just check whether array
pointer is NULL.

Also, remove `DM_get_looptri_array`, that one is useless currently,
`dm->getLoopTriArray` will always return cached array (computing it if
needed).

2 years agoCleanup: deduplicate DM's getLoopTriArray() callback.
Bastien Montagne [Fri, 11 Aug 2017 13:41:53 +0000 (15:41 +0200)]
Cleanup: deduplicate DM's getLoopTriArray() callback.

All three functions were doing exactly the same thing, simpler to only
have one in that case!

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 11 Aug 2017 14:23:49 +0000 (00:23 +1000)]
Merge branch 'master' into blender2.8

2 years agoFix T52346: Alt-I (Delete Keyframes) on a NlaStrip's Extrapolate property would crash
Joshua Leung [Fri, 11 Aug 2017 13:52:51 +0000 (01:52 +1200)]
Fix T52346: Alt-I (Delete Keyframes) on a NlaStrip's Extrapolate property would crash

2 years agoFix T52327: Entering/Exiting NLA Tweakmode disables Scene -> Only Keyframes from...
Joshua Leung [Fri, 11 Aug 2017 13:40:28 +0000 (01:40 +1200)]
Fix T52327: Entering/Exiting NLA Tweakmode disables Scene -> Only Keyframes from Selected Channels

The tweakmode flag and the selected-channels flag accidentally
used the same value, due to confusion over where these flags were
supposed to be set. The selected-channels flag has now been moved
to use a different value, so that there shouldn't be any further
conflicts.

To be ported to 2.79.

2 years agoFix bevel clamping bugs T51247 and T50819.
Howard Trickey [Fri, 11 Aug 2017 13:13:27 +0000 (09:13 -0400)]
Fix bevel clamping bugs T51247 and T50819.

Old bevel 'Clamp overlap' code was very naive: just limit amount
to half edge length. This uses more accurate (but not perfect)
calculations for the max amount before (many) geometry collisions
happen. This is not a backward compatible change - meshes that
have modifiers with 'Clamp overlap' will likely have larger allowed
bevel widths now. But that can be fixed by turning off clamp overlap
and setting the amount to the desired value.

2 years agoObject Apply Transform: option to apply properties
Campbell Barton [Fri, 11 Aug 2017 12:16:44 +0000 (22:16 +1000)]
Object Apply Transform: option to apply properties

In some cases users may want to disable this option
to avoid changing other properties besides vertex locations.

2 years agoFix T52344: Softbody on Text.
Bastien Montagne [Fri, 11 Aug 2017 12:25:36 +0000 (14:25 +0200)]
Fix T52344: Softbody on Text.

Own previous fix (rBd5d626df236b) was not valid, curves are actually
supported by SoftBodies. It was rather a mere UI bug, which was not
including Surfaces and Font obect types in those valid for softbody UI.

Thanks to @brecht for the head up!

Also, fix safe for 2.79, btw.

2 years agoTweak maximum sizes of vertices/handle vertices
Joshua Leung [Fri, 11 Aug 2017 04:16:30 +0000 (16:16 +1200)]
Tweak maximum sizes of vertices/handle vertices

* 255 maximum seems excessive for F-Curve handle vertices; now reduced to 100

* Vertex Size is no longer restricted to the old 10px maximum size limit
  (used because Windows limited the maximum vertex size drivers needed to
  support)

2 years agoFix: Muted strips in NLA draw with dotted borders again
Joshua Leung [Fri, 11 Aug 2017 02:48:03 +0000 (14:48 +1200)]
Fix: Muted strips in NLA draw with dotted borders again

It's more important that there is some form of feedback that the strips
are muted (i.e. dotted borders) than the fact that those dotted borders
may have slightly rounded corners. So, just use a regular sharp-cornered
rect when the strips need to be muted.

2 years agoCode Cleanup: Use utility function here
Joshua Leung [Fri, 11 Aug 2017 02:44:08 +0000 (14:44 +1200)]
Code Cleanup: Use utility function here

There's no reason to manually iterate over items in a DLRBT_Tree,
as the structure is designed to be able to be safely casted down
to a ListBase and ListBase-like nodes..

2 years agoRevert C99 "cleanups" from rB09bfc378895f
Joshua Leung [Fri, 11 Aug 2017 02:42:18 +0000 (14:42 +1200)]
Revert C99 "cleanups" from rB09bfc378895f

2 years agoNla Drawing: Fix strip outlines being drawn too thick
Joshua Leung [Thu, 3 Aug 2017 12:32:34 +0000 (00:32 +1200)]
Nla Drawing: Fix strip outlines being drawn too thick

2 years agoGraphEdit Drawing: Make active F-Curve slightly thicker
Joshua Leung [Thu, 3 Aug 2017 12:32:01 +0000 (00:32 +1200)]
GraphEdit Drawing: Make active F-Curve slightly thicker

2 years agoGraphEdit Keyframe Drawing: Tweak styling of handles
Joshua Leung [Thu, 3 Aug 2017 01:45:26 +0000 (13:45 +1200)]
GraphEdit Keyframe Drawing: Tweak styling of handles

* Reduce interior fill opacity - These should *not* be shaded
* Adjust thickness of lines to match the old chunkiness more

2 years agoCycles: Clarify new argument in PathRadiance
Sergey Sharybin [Fri, 11 Aug 2017 10:46:09 +0000 (12:46 +0200)]
Cycles: Clarify new argument in PathRadiance

2 years agoCycles tests: Draw images on top of checkerboard
Sergey Sharybin [Fri, 11 Aug 2017 07:34:34 +0000 (09:34 +0200)]
Cycles tests: Draw images on top of checkerboard

This way it's easier to see alpha-channel only images, such as shadow catcher
images on transparent film.

2 years agoFix T52229: Shadow Catcher artifacts when under transparency
Sergey Sharybin [Fri, 11 Aug 2017 07:33:18 +0000 (09:33 +0200)]
Fix T52229: Shadow Catcher artifacts when under transparency

Added some extra tirckery to avoid background being tinted dark with transparent
surface. Maybe a bit hacky, but seems to work fine.

2 years agoEevee: SSR: Change clamp default.
Clément Foucault [Fri, 11 Aug 2017 10:59:32 +0000 (12:59 +0200)]
Eevee: SSR: Change clamp default.

2 years agoEevee: Refraction: Fix low roughness artifact.
Clément Foucault [Fri, 11 Aug 2017 10:53:17 +0000 (12:53 +0200)]
Eevee: Refraction: Fix low roughness artifact.

2 years agoPie menu's sub-rows ignore 'EXPAND' flag
Aleksandr Zinovev [Fri, 11 Aug 2017 10:18:30 +0000 (13:18 +0300)]
Pie menu's sub-rows ignore 'EXPAND' flag

Regression, to be backported in 2.79.

2 years agoRNA: Operators were excluded from struct map
Campbell Barton [Fri, 11 Aug 2017 10:09:22 +0000 (20:09 +1000)]
RNA: Operators were excluded from struct map

Recent changes meant structs that were registered without a name
wouldn't get added to the map.
Now assigning identifiers manages the struct-map.

2 years agoGHash: note that 'deprecated' is used for private
Campbell Barton [Fri, 11 Aug 2017 09:04:41 +0000 (19:04 +1000)]
GHash: note that 'deprecated' is used for private

2 years agoError in last commit, problems with unregister
Campbell Barton [Fri, 11 Aug 2017 09:09:03 +0000 (19:09 +1000)]
Error in last commit, problems with unregister

We can't free the identifier before its used when
removing from the ghash.

2 years agoFix T52344: Softbody on Text.
Bastien Montagne [Fri, 11 Aug 2017 08:24:57 +0000 (10:24 +0200)]
Fix T52344: Softbody on Text.

For some reasons (c) softbody modifier was marked as compatible with
curves... Would need much more work though, so for now just removing
that flag!

2 years agoRNA: Use hash lookups for structs
Campbell Barton [Fri, 11 Aug 2017 07:51:38 +0000 (17:51 +1000)]
RNA: Use hash lookups for structs

Adding structs was checking for duplicates
causing approx 75k string comparisons on startup.

While overall speedup is minimal,
Python access to `bpy.types` will now use a hash lookup
instead of a full linked list search.

See D2774

2 years agoTransform: Snap used multiple eval contexts
Campbell Barton [Fri, 11 Aug 2017 01:23:39 +0000 (11:23 +1000)]
Transform: Snap used multiple eval contexts

Changes for 2.8x to use EvaluationContext caused some confusion

- Would use scene layer passed from snap context.
- Would generate duplis from Main eval context.
- Would take context argument and use it to create another eval context.

Adding context args all over and filling in a new eval-context
for every ray-cast test isn't ideal either.

Remove the context argument since the purpose of
SnapObjectContext is to avoid this kind of confusion.
Store the EvaluationContext once and re-use.

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 11 Aug 2017 00:33:39 +0000 (10:33 +1000)]
Merge branch 'master' into blender2.8

2 years agoWM: don't load preferences on 'File -> New'
Campbell Barton [Thu, 10 Aug 2017 23:29:25 +0000 (09:29 +1000)]
WM: don't load preferences on 'File -> New'

User preferences are now only loaded on...

- Initial startup.
- Factory-settings.
- Setting app-templates.

2 years agoEevee: Re: Fix NaN
Clément Foucault [Thu, 10 Aug 2017 23:25:40 +0000 (01:25 +0200)]
Eevee: Re: Fix NaN

This should be faster and apparently more stable.

2 years agoEevee: SSR Clamp color when blurring buffers.
Clément Foucault [Thu, 10 Aug 2017 23:24:09 +0000 (01:24 +0200)]
Eevee: SSR Clamp color when blurring buffers.

This effectivly reduce firefly bleeding all over the place.
We still need the clamp in the resolve pass because the level 0 has not been clamped.
NOTE: I did not clamped each sample individually for performance BUT I did not profile it to know how much it cost.

2 years agoEevee: Fix NaN
Clément Foucault [Thu, 10 Aug 2017 21:08:33 +0000 (23:08 +0200)]
Eevee: Fix NaN

This was surely cause by float overflow. Limit roughness in this case to limit the brdf intensity.
Also compute VH faster.

Add a sanitizer to the SSR pass for investigating where NANs come from. Play with the roughness until you see where the black pixel is / comes from.

2 years agoCycles: remove square samples option.
Brecht Van Lommel [Wed, 2 Aug 2017 13:39:02 +0000 (15:39 +0200)]
Cycles: remove square samples option.

It doesn't seem that useful in practice, was mostly added to match some
other renderers but also seems to be causing user confusing and accidental
long render times. So let's just keep the UI simple and remove this.

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

2 years agoCycles: change defaults for filter glossy, clamp and branched path AA.
Brecht Van Lommel [Wed, 2 Aug 2017 13:29:08 +0000 (15:29 +0200)]
Cycles: change defaults for filter glossy, clamp and branched path AA.

We're adding some bias by default, which now I think is the right thing
to do from a usability point of view since you really need to use those
options anyway to get clean renders in a practical time.

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

2 years agoCycles: add denoising tests, keep new image even if no reference exists.
Brecht Van Lommel [Thu, 10 Aug 2017 22:38:39 +0000 (00:38 +0200)]
Cycles: add denoising tests, keep new image even if no reference exists.

2 years agoFix T52322: denoiser broken on Windows after recent changes.
Brecht Van Lommel [Thu, 10 Aug 2017 21:38:20 +0000 (23:38 +0200)]
Fix T52322: denoiser broken on Windows after recent changes.

It's not clear why this only happened on Windows, but the code
was wrong and should do a bitcast here instead of conversion.

2 years agoFix crash checking for Blender version 10+
Campbell Barton [Thu, 10 Aug 2017 22:56:57 +0000 (08:56 +1000)]
Fix crash checking for Blender version 10+

PyAPI could trigger this, for now just truncate.

2 years agoCleanup: redundant 'static' variable
Campbell Barton [Thu, 10 Aug 2017 22:48:15 +0000 (08:48 +1000)]
Cleanup: redundant 'static' variable

Also use BLI_snprintf.

2 years agoFix OSX duplicate path in Python's sys.path
Campbell Barton [Thu, 10 Aug 2017 22:42:27 +0000 (08:42 +1000)]
Fix OSX duplicate path in Python's sys.path

The '..' in the path caused simple comparisons to fail.

D2780 by @akitula

2 years agoCleanup: whitespace
Campbell Barton [Thu, 10 Aug 2017 22:32:05 +0000 (08:32 +1000)]
Cleanup: whitespace

2 years agoCMake: only build msgfmt if international is used
Campbell Barton [Thu, 10 Aug 2017 22:13:16 +0000 (08:13 +1000)]
CMake: only build msgfmt if international is used

Changes to BLI would always rebuild msgfmt.

2 years agoFix MSVSC error
Antonio Vazquez [Thu, 10 Aug 2017 15:41:47 +0000 (17:41 +0200)]
Fix MSVSC error

The array must have any initialization value

2 years agoFix after last merge.
Bastien Montagne [Thu, 10 Aug 2017 14:04:01 +0000 (16:04 +0200)]
Fix after last merge.

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Thu, 10 Aug 2017 13:57:59 +0000 (15:57 +0200)]
Merge branch 'master' into blender2.8

2 years agoFix install_deps usage of patches.
Bastien Montagne [Thu, 10 Aug 2017 13:55:19 +0000 (15:55 +0200)]
Fix install_deps usage of patches.

Who in Hell did rename those files and did not update accordingly
install_deps.sh script???

2 years agoDPI: add back option to control line width, tweak default width.
Brecht Van Lommel [Mon, 7 Aug 2017 20:42:47 +0000 (22:42 +0200)]
DPI: add back option to control line width, tweak default width.

Adds thin/default/thick modes to add -1/0/1 to the auto detected line width,
while leaving the overall UI scale unchanged.

Also tweaks the default line width threshold, so thicker lines start from
slightly high UI scales.

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

2 years agoFix T52334: images with non-color data should not change color space on save.
Brecht Van Lommel [Thu, 10 Aug 2017 12:11:18 +0000 (14:11 +0200)]
Fix T52334: images with non-color data should not change color space on save.

2 years agoEevee: Refraction: Add "thickness" parameter.
Clément Foucault [Thu, 10 Aug 2017 13:43:15 +0000 (15:43 +0200)]
Eevee: Refraction: Add "thickness" parameter.

This enables to fake a second refraction event. This is great to simulate thin planar objects such as glass panels.

2 years agoEevee: Fix multiply blend mode.
Clément Foucault [Wed, 9 Aug 2017 21:51:26 +0000 (23:51 +0200)]
Eevee: Fix multiply blend mode.

2 years agoObject Mode Engine: Optimize outline passes.
Clément Foucault [Wed, 9 Aug 2017 21:51:00 +0000 (23:51 +0200)]
Object Mode Engine: Optimize outline passes.

Group texture fetches to hide latency. 3.2ms -> 2.2ms (constant time improvement, not depending on scene complexity)

Could optimize further with textureGather (require OpenGL 4.0).

2 years agoEevee: Refraction: Make it available for opaque materials.
Clément Foucault [Wed, 9 Aug 2017 21:48:42 +0000 (23:48 +0200)]
Eevee: Refraction: Make it available for opaque materials.

Theses Materials are rendered after the SSR pass.
The only difference with previous method is that they have a depth prepass (less overdraw) and are not sorted.

2 years agoDRW: Indent profiler timings.
Clément Foucault [Wed, 9 Aug 2017 20:34:26 +0000 (22:34 +0200)]
DRW: Indent profiler timings.

2 years agoEevee: Fix AO not working.
Clément Foucault [Wed, 9 Aug 2017 14:54:46 +0000 (16:54 +0200)]
Eevee: Fix AO not working.

2 years agoEevee: Add Screen Space Refraction.
Clément Foucault [Wed, 9 Aug 2017 14:54:18 +0000 (16:54 +0200)]
Eevee: Add Screen Space Refraction.

For the moment the only way to enable this is to:
- enable Screen Space REFLECTIONS.
- enable Screen Space Refraction in the SSR parameters.
- enable Screen Space Refraction in the material tab.