2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 11 Mar 2018 05:08:12 +0000 (16:08 +1100)]
Merge branch 'master' into blender2.8

2 years agoCleanup: long lines
Campbell Barton [Sun, 11 Mar 2018 04:50:07 +0000 (15:50 +1100)]
Cleanup: long lines

2 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Sat, 10 Mar 2018 18:01:01 +0000 (19:01 +0100)]
Merge branch 'master' into blender2.8

2 years agoCycles: add roughness baking support, using squared roughness convention.
Brecht Van Lommel [Sat, 10 Mar 2018 17:18:05 +0000 (18:18 +0100)]
Cycles: add roughness baking support, using squared roughness convention.

2 years agoCycles: switch to squared roughness convention for all nodes.
Brecht Van Lommel [Sat, 10 Mar 2018 15:09:22 +0000 (16:09 +0100)]
Cycles: switch to squared roughness convention for all nodes.

This was already done for the Principled BSDF to be compatible with typical
baked roughness maps in PBR workflows.

2 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Sat, 10 Mar 2018 05:55:39 +0000 (06:55 +0100)]
Merge branch 'master' into blender2.8

2 years agoCode cleanup: fix compiler warning.
Brecht Van Lommel [Sat, 10 Mar 2018 05:51:52 +0000 (06:51 +0100)]
Code cleanup: fix compiler warning.

2 years agoFix T54279: viewport update bug with volume meshes.
Brecht Van Lommel [Sat, 10 Mar 2018 05:10:14 +0000 (06:10 +0100)]
Fix T54279: viewport update bug with volume meshes.

Meshes without vertex normals were not handled correctly.

2 years agoCode refactor: reduce number of loops over meshes.
Brecht Van Lommel [Sat, 10 Mar 2018 04:45:49 +0000 (05:45 +0100)]
Code refactor: reduce number of loops over meshes.

2 years agoFix T54278: volume artifacts with small density and color after recent changes.
Brecht Van Lommel [Sat, 10 Mar 2018 04:03:03 +0000 (05:03 +0100)]
Fix T54278: volume artifacts with small density and color after recent changes.

2 years agoFix T54269: saved EXR file files unreadable some editors in Blender.
Brecht Van Lommel [Sat, 10 Mar 2018 03:33:14 +0000 (04:33 +0100)]
Fix T54269: saved EXR file files unreadable some editors in Blender.

Don't write the multichannel metadata when there is only a single layer,
and don't unnecessarily consider single layer images with Blender metadata
as multi layer.

2 years agoCode cleanup: use spaces for aligned indentation.
Brecht Van Lommel [Sat, 10 Mar 2018 02:57:18 +0000 (03:57 +0100)]
Code cleanup: use spaces for aligned indentation.

2 years agoCycles: support arbitrary number of motion blur steps for objects.
Brecht Van Lommel [Thu, 8 Mar 2018 03:04:52 +0000 (04:04 +0100)]
Cycles: support arbitrary number of motion blur steps for objects.

2 years agoCycles: support arbitrary number of motion blur steps for cameras.
Brecht Van Lommel [Sat, 10 Mar 2018 00:36:09 +0000 (01:36 +0100)]
Cycles: support arbitrary number of motion blur steps for cameras.

2 years agoCode refactor: motion blur cleanups, preparing for next commit.
Brecht Van Lommel [Fri, 9 Mar 2018 23:37:07 +0000 (00:37 +0100)]
Code refactor: motion blur cleanups, preparing for next commit.

2 years agoCode refactor: don't expose UpdateObjectTransformState in header.
Brecht Van Lommel [Sat, 10 Mar 2018 00:15:02 +0000 (01:15 +0100)]
Code refactor: don't expose UpdateObjectTransformState in header.

2 years agoCode refactor: make Transform always affine, dropping last row.
Brecht Van Lommel [Thu, 8 Mar 2018 05:48:14 +0000 (06:48 +0100)]
Code refactor: make Transform always affine, dropping last row.

This save a little memory and copying in the kernel by storing only a 4x3
matrix instead of a 4x4 matrix. We already did this in a few places, and
those don't need to be special exceptions anymore now.

2 years agoCode refactor: add DecomposedTransform.
Brecht Van Lommel [Thu, 8 Mar 2018 05:19:17 +0000 (06:19 +0100)]
Code refactor: add DecomposedTransform.

This is in preparation of making Transform affine only, and also gives us
a little extra type safety so we don't accidentally treat it as a regular
4x4 matrix.

2 years agoCode refactor: add ProjectionTransform separate from regular Transform.
Brecht Van Lommel [Thu, 8 Mar 2018 04:33:55 +0000 (05:33 +0100)]
Code refactor: add ProjectionTransform separate from regular Transform.

This is in preparation of making Transform affine only.

2 years agoCode refactor: avoid motion transform copy, remove unused curved code.
Brecht Van Lommel [Wed, 7 Mar 2018 22:52:26 +0000 (23:52 +0100)]
Code refactor: avoid motion transform copy, remove unused curved code.

The purpose of the previous code refactoring is to make the code more readable,
but combined with this change benchmarks also render about 2-3% faster with an
NVIDIA Titan Xp.

2 years agoCode refactor: use KernelShader and KernelParticle instead of float arrays.
Stefan Werner [Wed, 7 Mar 2018 23:35:24 +0000 (00:35 +0100)]
Code refactor: use KernelShader and KernelParticle instead of float arrays.

Original patch by Stefan with modifications by Brecht.

2 years agoCode refactor: use KernelLight instead of float4 arrays.
Stefan Werner [Wed, 7 Mar 2018 23:15:41 +0000 (00:15 +0100)]
Code refactor: use KernelLight instead of float4 arrays.

Original patch by Stefan with modifications by Brecht.

2 years agoCode refactor: use KernelOject struct instead of float4 array.
Stefan Werner [Wed, 7 Mar 2018 21:19:56 +0000 (22:19 +0100)]
Code refactor: use KernelOject struct instead of float4 array.

Original patch by Stefan with modifications by Brecht.

2 years agoEevee: Planar Reflections: Fix corrupted results in downsampling step.
Clément Foucault [Sat, 10 Mar 2018 01:18:12 +0000 (02:18 +0100)]
Eevee: Planar Reflections: Fix corrupted results in downsampling step.

It only seems to happen in some drivers/gpu, the vertices gets culled if 4th component is 0.0. So lesson learned: always use 1.0 if constant.

2 years agoEevee: Planar Reflection: Add refraction support for reflected objects.
Clément Foucault [Fri, 9 Mar 2018 23:03:25 +0000 (00:03 +0100)]
Eevee: Planar Reflection: Add refraction support for reflected objects.

2 years agoEevee: Add new clipping UBO.
Clément Foucault [Fri, 9 Mar 2018 23:02:01 +0000 (00:02 +0100)]
Eevee: Add new clipping UBO.

This fixes problems with the planar reflections.

2 years agoEevee: Make use of the new view matrix UBO.
Clément Foucault [Fri, 9 Mar 2018 23:00:04 +0000 (00:00 +0100)]
Eevee: Make use of the new view matrix UBO.

2 years agoDRW: Change UBOs binding logic.
Clément Foucault [Fri, 9 Mar 2018 22:50:30 +0000 (23:50 +0100)]
DRW: Change UBOs binding logic.

Use the same logic than textures. Also reset bindings only on shader changes.

2 years agoDRW: Change clip planes API.
Clément Foucault [Fri, 9 Mar 2018 22:49:08 +0000 (23:49 +0100)]
DRW: Change clip planes API.

The draw manager now just set the number of active clip planes. It's now up to the engine to specify the plane equations as uniform/ubo/constant.

2 years agoDRW: Add assert for uniform that needs valid data.
Clément Foucault [Fri, 9 Mar 2018 18:54:27 +0000 (19:54 +0100)]
DRW: Add assert for uniform that needs valid data.

2 years agoDRW: Put all view-only dependant uniform in a UBO.
Clément Foucault [Fri, 9 Mar 2018 18:52:37 +0000 (19:52 +0100)]
DRW: Put all view-only dependant uniform in a UBO.

This leads to less lookups to the GWNShaderInterface and less uniform upload.

We still keep a legacy path so that Builtin uniforms can still work. We might restrict this path to Builtin shader only in the future.

2 years agoEevee: Probes: Fix last planar reflections remaining after deletion.
Clément Foucault [Thu, 8 Mar 2018 17:02:42 +0000 (18:02 +0100)]
Eevee: Probes: Fix last planar reflections remaining after deletion.

2 years agoEevee: Probes: Add culling for planar probes.
Clément Foucault [Thu, 8 Mar 2018 16:56:30 +0000 (17:56 +0100)]
Eevee: Probes: Add culling for planar probes.

Planar probes that have no influence on pixels in the view are culled.

This greatly improve performance when theses probes are offscreen.

2 years agoDRW: Culling: Expose & Add culling functions to engines.
Clément Foucault [Thu, 8 Mar 2018 16:54:14 +0000 (17:54 +0100)]
DRW: Culling: Expose & Add culling functions to engines.

This way engines can do preemptive culling by themselves.

2 years agoBoundBox: Fix wrong max in BKE_boundbox_alloc_unit.
Clément Foucault [Thu, 8 Mar 2018 16:51:24 +0000 (17:51 +0100)]
BoundBox: Fix wrong max in BKE_boundbox_alloc_unit.

2 years agoEevee: Render: Add cancel support
Clément Foucault [Thu, 8 Mar 2018 14:22:57 +0000 (15:22 +0100)]
Eevee: Render: Add cancel support

You can now cancel your renders that are too long. This will still output the current status of the render. For example if you cancel at 50% rendering progress, you will have a render result with only half the render samples.

2 years agoDRW: Culling: Fix precision error.
Clément Foucault [Thu, 8 Mar 2018 14:06:50 +0000 (15:06 +0100)]
DRW: Culling: Fix precision error.

This was triggering the BLI_assert(fac >= 0.0f);.

Clamp fac to ensure correct value for release builds.

2 years agoEevee: Planar: Add transparent objects.
Clément Foucault [Thu, 8 Mar 2018 00:36:49 +0000 (01:36 +0100)]
Eevee: Planar: Add transparent objects.

The ordering is left broken for the viewport as this can be quite heavy.
Only do it if doing a render.

2 years agoEevee: Planar Probe: Add supersampling jitter.
Clément Foucault [Thu, 8 Mar 2018 00:35:16 +0000 (01:35 +0100)]
Eevee: Planar Probe: Add supersampling jitter.

This also fix a bug with the probe debug display when there was more than 2 probes. ped->probe_id was equal to 0 for all planar probes until the next frame. Resulting in all planar data debug to show probe 0.

2 years agoDon't add "Report a Bug" button for official tracker to non-official add-ons
Julian Eisel [Fri, 9 Mar 2018 20:17:43 +0000 (21:17 +0100)]
Don't add "Report a Bug" button for official tracker to non-official add-ons

If no custom URL was set, add-ons would get a "Report a Bug" button opening
the default bug tracker. Now we only add this default
button if the add-on is bundled and not installed by the user.

2 years agoFix Pose Lib: pose is applied when selected bones don't overlap with pose
Sybren A. Stüvel [Fri, 9 Mar 2018 18:03:29 +0000 (19:03 +0100)]
Fix Pose Lib: pose is applied when selected bones don't overlap with pose

Premise: When pose bones are selected, applying a pose library should
only affect the selected bones.

This commit fixes a bug where the pose was also applied when there was
no overlap between the selected bones and the bones in the pose. For
example, applying a pose which contains only keyframes for the left
hand, while only right-hand bones are selected, would apply the pose
to the left hand anyway.

The code is now also slightly more efficient; the removed 'selcount'
counter was only used as a binary (i.e. zero or non-zero). It's now
stored as a bitflag instead.

2 years agoCleanup: iterator macros
Antonio Vazquez [Fri, 9 Mar 2018 10:00:54 +0000 (11:00 +0100)]
Cleanup: iterator macros

This line was missing in previous commit

2 years agoManipulator: disable UV widget, following prefs
Campbell Barton [Fri, 9 Mar 2018 09:44:41 +0000 (20:44 +1100)]
Manipulator: disable UV widget, following prefs

2 years agoFFmpeg: Add regression tests
Sergey Sharybin [Mon, 5 Mar 2018 14:32:49 +0000 (15:32 +0100)]
FFmpeg: Add regression tests

Currently only covering handful of files from reports about wrong fps detected.

It will need D3083 applied first to get tests passed, also tests themselves
are to be committed to svn.

But there are some python code which needs to be reviewed, like blendfile
passed to run_blender().

Reviewers: sybren, mont29

Reviewed By: sybren, mont29

Subscribers: mont29

Differential Revision:

2 years agoFix T53857: Incorrect framerate for videos imported from OBS
Sergey Sharybin [Mon, 26 Feb 2018 15:39:18 +0000 (16:39 +0100)]
Fix T53857: Incorrect framerate for videos imported from OBS

This is an issue with which value to trust: fps vs. tbr. They both cam be
somewhat broken. Currently the idea is:

- If file was saved with FFmpeg AND we are decoding with FFmpeg we trust tbr.
- If we are decoding with Libav we use fps (there does not seem to be tbr in
  Libav, unless i'm missing something).
- All other cases we use fps.

Seems to work all good for files from T53857, T54148 and T51153. Ideally we
would need to collect some amount of regression files to make further tweaks
more scientific.

Reviewers: mont29

Reviewed By: mont29

Differential Revision:

2 years agoCleanup: iterator macros
Campbell Barton [Fri, 9 Mar 2018 00:44:42 +0000 (11:44 +1100)]
Cleanup: iterator macros

- put render iterator in own scope
  (would shadow it's own variable if used multiple times).
- enforce semicolon at end of iterator macros.
- no need to typedef one-off macro structs.

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Thu, 8 Mar 2018 06:52:10 +0000 (17:52 +1100)]
Merge branch 'master' into blender2.8

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Thu, 8 Mar 2018 06:42:06 +0000 (17:42 +1100)]
Merge branch 'master' into blender2.8

2 years agoCleanup: Rename view3d context set function
Campbell Barton [Thu, 8 Mar 2018 06:30:24 +0000 (17:30 +1100)]
Cleanup: Rename view3d context set function

Use common prefix so adding related functions share the prefix.

2 years agoCleanup: use edit/active objects from view context
Campbell Barton [Thu, 8 Mar 2018 06:26:02 +0000 (17:26 +1100)]
Cleanup: use edit/active objects from view context

Needed to implement multiple edit-objects.

2 years agoCleanup: set the view-context once
Campbell Barton [Thu, 8 Mar 2018 06:21:39 +0000 (17:21 +1100)]
Cleanup: set the view-context once

2 years agoCleanup: Use BKE_ prefix for all public functions exposed by the NLA module
Joshua Leung [Thu, 8 Mar 2018 04:14:46 +0000 (17:14 +1300)]
Cleanup: Use BKE_ prefix for all public functions exposed by the NLA module

2 years agoT54233: NLA "Push Down" discards Blend Mode, Extrapolation, and Influence
Joshua Leung [Thu, 8 Mar 2018 03:49:33 +0000 (16:49 +1300)]
T54233: NLA "Push Down" discards Blend Mode, Extrapolation, and Influence

Each AnimData block has a set of Blend/Extrapolation/Influence settings
that can be used to control how the active action is blended with the
NLA stack. However, these settings were not getting copied over to the
newly created strips (as the push-down code existed long before these
settings were added).

This commit solves this in several ways:
* Active Action Blend/Extrapolation/Influence settings now get copied
  to the new strips when adding them to the NLA stack via Push Down.

  Note: This doesn't happen when there are no existing NLA tracks,
        as these settings don't get used in that case.

* Strip Influence will be copied across when inf < 1.0 (i.e. when a
  non-default value is used), to maintain the effect. To make this work,
  the influence value will get added as a keyframe to the strip's
  "Influence" Control FCurve.

  - See code comments for an alternative approach and why that was not chosen
  - Strip Time still doesn't get keyframes added automatically yet.

* To ensure the "extrapolation mode" settings don't get always overwritten,
  I've put in place a compromise: the extrapolation will only get changed
  if the chosen setting will cause problmes (i.e. hold forward & back -> hold forward
  if there are other tracks before it already).

Not safe for backporting to 2.79[x] stable releases.

2 years agoFix crash if NLA strip with "Use Animated Influence" setting is enabled without the...
Joshua Leung [Thu, 8 Mar 2018 02:17:53 +0000 (15:17 +1300)]
Fix crash if NLA strip with "Use Animated Influence" setting is enabled without the Influence Strip F-Curve existing

2 years agoCleanup: Fix invalid name prefix
Joshua Leung [Mon, 5 Mar 2018 02:58:07 +0000 (15:58 +1300)]
Cleanup: Fix invalid name prefix

2 years agoEevee: Render: Add progress.
Clément Foucault [Wed, 7 Mar 2018 23:08:56 +0000 (00:08 +0100)]
Eevee: Render: Add progress.

2 years agoEevee: Save and reset matrixstate for probe rendering.
Clément Foucault [Wed, 7 Mar 2018 22:25:49 +0000 (23:25 +0100)]
Eevee: Save and reset matrixstate for probe rendering.

2 years agoDRW: Fix culling with inverted view (planar reflections)
Clément Foucault [Wed, 7 Mar 2018 18:03:01 +0000 (19:03 +0100)]
DRW: Fix culling with inverted view (planar reflections)

Just invert the frustum planes in this case.

2 years agoMake sure that the WM_opengl_context_create is always called on the main thread
Germano [Wed, 7 Mar 2018 23:05:51 +0000 (20:05 -0300)]
Make sure that the WM_opengl_context_create is always called on the main thread

Avoid the error 170 ("The requested resource is in use").

2 years agoFix wglShareLists being called with rendering contexts in use
Germano [Wed, 7 Mar 2018 22:40:08 +0000 (19:40 -0300)]
Fix wglShareLists being called with rendering contexts in use

`wglShareLists` was failing with error code 170 ("The requested resource is in use").

2 years agoFix T54206: bevel and inset operations repeat did not remember offset.
Brecht Van Lommel [Wed, 7 Mar 2018 21:19:56 +0000 (22:19 +0100)]
Fix T54206: bevel and inset operations repeat did not remember offset.

Now repeating the operator will use the previously chosen offset, either with
the modal operator or typed in. The modal operator will still start at zero.

2 years agoProper fix for User Preferences window crash
Julian Eisel [Wed, 7 Mar 2018 20:18:16 +0000 (21:18 +0100)]
Proper fix for User Preferences window crash

Reverts rBb9ae517794765d6a1660 and fixes the issue properly. Old fix could cause
NULL to be passed to functions that expect all arguments to be non-NULL.

2 years agoFix Blenderplayer not compiling
Julian Eisel [Wed, 7 Mar 2018 19:41:49 +0000 (20:41 +0100)]
Fix Blenderplayer not compiling

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 7 Mar 2018 15:03:36 +0000 (02:03 +1100)]
Merge branch 'master' into blender2.8

2 years agoEditMesh: pass object data to notifiers
Campbell Barton [Wed, 7 Mar 2018 14:47:35 +0000 (01:47 +1100)]
EditMesh: pass object data to notifiers

Both were being passed in different parts of the code,
use object data for consistency.

2 years agoCleanup: use _BEGIN suffix for group iterators
Campbell Barton [Wed, 7 Mar 2018 09:46:27 +0000 (20:46 +1100)]
Cleanup: use _BEGIN suffix for group iterators

2 years agoAdd missing NULL check
Campbell Barton [Wed, 7 Mar 2018 05:40:02 +0000 (16:40 +1100)]
Add missing NULL check

Caused loading user-prefs to crash.

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 7 Mar 2018 03:31:53 +0000 (14:31 +1100)]
Merge branch 'master' into blender2.8

2 years agoCleanup: edit-mode undo API
Campbell Barton [Wed, 7 Mar 2018 02:55:36 +0000 (13:55 +1100)]
Cleanup: edit-mode undo API

Move function descriptions into the struct,
minor improvements to variable naming,
use convention of 'g_' prefix for static vars.

2 years agoDRW: Fix memory leak.
Clément Foucault [Wed, 7 Mar 2018 00:39:09 +0000 (01:39 +0100)]
DRW: Fix memory leak.

This prevents the creation of a new job if no job is running.

2 years agoEevee: Fix volume rendering glitches.
Clément Foucault [Wed, 7 Mar 2018 00:36:09 +0000 (01:36 +0100)]
Eevee: Fix volume rendering glitches.

The bug was due to the Halton function returning uninitialized value for 0 iteration.

2 years agoEevee: Fix garbage on the first frames when enabling volumetrics.
Clément Foucault [Tue, 6 Mar 2018 22:17:50 +0000 (23:17 +0100)]
Eevee: Fix garbage on the first frames when enabling volumetrics.

Was cause by newly added shader deferred compilation.

2 years agoDraw Manager: Simplify the algorithm that extract the BoundingSphere of a Frustum
Germano [Tue, 6 Mar 2018 22:27:43 +0000 (19:27 -0300)]
Draw Manager: Simplify the algorithm that extract the BoundingSphere of a Frustum

The idea is to separate the most common case from symmetrical frustum. And to make a simple but efficient calculation.

The new radius is usually 98% the size of the radius size of the asymmetric solution.

Thanks to @fclem for reviewing the patch on IRC

2 years agoEevee: Fix crash with volumetrics + default mat + alpha blend
Clément Foucault [Tue, 6 Mar 2018 15:52:06 +0000 (16:52 +0100)]
Eevee: Fix crash with volumetrics + default mat + alpha blend

2 years agoEevee: Fix Cascaded shadowmap setup.
Clément Foucault [Tue, 6 Mar 2018 01:51:51 +0000 (02:51 +0100)]
Eevee: Fix Cascaded shadowmap setup.

It was getting the wrong matrice because of the point light override.

2 years agoDRW: Fix DRW_viewport_matrix_override_set_all function.
Clément Foucault [Tue, 6 Mar 2018 01:49:55 +0000 (02:49 +0100)]
DRW: Fix DRW_viewport_matrix_override_set_all function.

2 years agoEevee: Fix probes not working after a world update.
Clément Foucault [Tue, 6 Mar 2018 01:36:00 +0000 (02:36 +0100)]
Eevee: Fix probes not working after a world update.

2 years agoEevee: Update to support shader deferred compilation.
Clément Foucault [Tue, 6 Mar 2018 01:19:28 +0000 (02:19 +0100)]
Eevee: Update to support shader deferred compilation.

World probe is tagged to refresh when it it's shader is updated.
Probes are recomputed only after all meshes shaders have been compiled.

2 years agoGPU: Fix typo.
Clément Foucault [Mon, 5 Mar 2018 20:52:02 +0000 (21:52 +0100)]
GPU: Fix typo.

2 years agoDRW: Fix broken grid in ortho view.
Clément Foucault [Mon, 5 Mar 2018 15:11:49 +0000 (16:11 +0100)]
DRW: Fix broken grid in ortho view.

2 years agoEevee: fix wrong sizeof.
Clément Foucault [Mon, 5 Mar 2018 00:26:12 +0000 (01:26 +0100)]
Eevee: fix wrong sizeof.

Like really? wtf dude? *self face slapping*

2 years agoDRW: Shader Deferred compilation: Use a wmJob for threading.
Clément Foucault [Mon, 5 Mar 2018 20:50:56 +0000 (21:50 +0100)]
DRW: Shader Deferred compilation: Use a wmJob for threading.

Also get rid of the static var and initialization.
This enables the user to see the progress on the info header.
Closing blender or reading a file also kill the job which is good.

Unfortunatly, this job cannot be interrupt by users directly. We could make it interruptible but we need a way to resume the compilation.

2 years agoDRW: Deferred compilation initial implementation.
Clément Foucault [Sun, 4 Mar 2018 23:54:31 +0000 (00:54 +0100)]
DRW: Deferred compilation initial implementation.

2 years agoMaterial: Free gpumaterials before the notree.
Clément Foucault [Sun, 4 Mar 2018 23:52:19 +0000 (00:52 +0100)]
Material: Free gpumaterials before the notree.

This is because gpumaterials can contain references to the tree when doing lazy compilation.

2 years agoEevee: Fix bad framebuffer when changing probe resolution.
Clément Foucault [Sun, 4 Mar 2018 23:49:24 +0000 (00:49 +0100)]
Eevee: Fix bad framebuffer when changing probe resolution.

2 years agoScreen: Fix screen layout preview render.
Clément Foucault [Sat, 3 Mar 2018 17:06:19 +0000 (18:06 +0100)]
Screen: Fix screen layout preview render.

2 years agoEevee: More use of DRW_viewport_matrix_override_set_all
Clément Foucault [Sat, 3 Mar 2018 00:48:16 +0000 (01:48 +0100)]
Eevee: More use of DRW_viewport_matrix_override_set_all

2 years agoDRW: Fix occlusion culling.
Clément Foucault [Tue, 6 Mar 2018 15:26:13 +0000 (16:26 +0100)]
DRW: Fix occlusion culling.

2 years agoCycles: Fix crash when building with no shading systems
Sergey Sharybin [Tue, 6 Mar 2018 11:00:51 +0000 (12:00 +0100)]
Cycles: Fix crash when building with no shading systems

2 years agoCycles: Cleanup, indentation
Sergey Sharybin [Tue, 6 Mar 2018 10:42:30 +0000 (11:42 +0100)]
Cycles: Cleanup, indentation

2 years agoCleanup: unused var
Campbell Barton [Tue, 6 Mar 2018 11:42:32 +0000 (22:42 +1100)]
Cleanup: unused var

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 6 Mar 2018 09:04:02 +0000 (20:04 +1100)]
Merge branch 'master' into blender2.8

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 6 Mar 2018 08:13:41 +0000 (19:13 +1100)]
Merge branch 'master' into blender2.8

2 years agoUtility to enter sculpt mode
Campbell Barton [Tue, 6 Mar 2018 08:04:43 +0000 (19:04 +1100)]
Utility to enter sculpt mode

2 years agoEevee: Optimize shadows drawing
Germano [Tue, 6 Mar 2018 01:03:14 +0000 (22:03 -0300)]
Eevee: Optimize shadows drawing

In the gpus like `AMD Radeon HD 7570M` and `Intel(R) HD Graphics 4000` this solution improves performance a hundreds or even thousands of times depending on the resolution.

Reviewed By: @brecht and @fclem

Differential Revision:

2 years agoFix T54234, add BLENDER_VERSION_CHAR to .plist
Arto Kitula [Tue, 6 Mar 2018 00:36:29 +0000 (02:36 +0200)]
Fix T54234, add BLENDER_VERSION_CHAR to .plist

2 years agoFix T53206: Array modifier doesn't merge vgroups
Campbell Barton [Mon, 5 Mar 2018 22:57:41 +0000 (09:57 +1100)]
Fix T53206: Array modifier doesn't merge vgroups

Vertex group remapping utility function,
now shared between object join and array modifier cap-ends.

Weights which don't exist are removed.

D3092 by @Foaly

2 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Mon, 5 Mar 2018 15:14:46 +0000 (16:14 +0100)]
Merge branch 'master' into blender2.8

2 years agoSequencer: Expose read-only FPS property for movie-type strips
Sergey Sharybin [Mon, 5 Mar 2018 14:00:04 +0000 (15:00 +0100)]
Sequencer: Expose read-only FPS property for movie-type strips

Main purpose is to make it possible to cover FPS detection with regression test.
But it might also be handy for some other scripters.

Thanks Campbell for review!

2 years agoUI: rename panel 'Workspace Add-ons'
Campbell Barton [Mon, 5 Mar 2018 13:56:51 +0000 (00:56 +1100)]
UI: rename panel 'Workspace Add-ons'

Show/Hide is limited to menus