2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 12 Jun 2018 15:36:24 +0000 (17:36 +0200)]
Merge branch 'master' into blender2.8

2 years agoWM: remove sloppy region type access
Campbell Barton [Tue, 12 Jun 2018 15:34:44 +0000 (17:34 +0200)]
WM: remove sloppy region type access

Avoid accidentally operating on the wrong region type.

2 years agoWM: rename BKE_regiontype_from_id
Campbell Barton [Tue, 12 Jun 2018 15:26:38 +0000 (17:26 +0200)]
WM: rename BKE_regiontype_from_id

This returns the first as a fallback, causing confusing usage.
Renamed and added a version of the function that doesn't.

2 years agoCleanup: warning, spaces
Campbell Barton [Tue, 12 Jun 2018 15:20:12 +0000 (17:20 +0200)]
Cleanup: warning, spaces

2 years agoCleanup: get rid of global RNG usage in paint stroke code.
Bastien Montagne [Tue, 12 Jun 2018 15:13:23 +0000 (17:13 +0200)]
Cleanup: get rid of global RNG usage in paint stroke code.

2 years agoFix leak of manipulator tooltip timers.
Brecht Van Lommel [Tue, 12 Jun 2018 14:57:01 +0000 (16:57 +0200)]
Fix leak of manipulator tooltip timers.

This was causing performance degradation over time in posing, as the
manipulator recomputes the center locations for every event.

Ref T55442.

2 years agoDepsgraph: remove object tagging hack for render.
Brecht Van Lommel [Tue, 12 Jun 2018 11:49:27 +0000 (13:49 +0200)]
Depsgraph: remove object tagging hack for render.

With copy-on-write it should now all be evaluated correctly in render
resolution, without needing to switch the original data resoluton.

2 years agoCleanup: get rid of global RNG usage in transform code.
Bastien Montagne [Tue, 12 Jun 2018 15:00:07 +0000 (17:00 +0200)]
Cleanup: get rid of global RNG usage in transform code.

2 years agoWM: HUD was disappearing on redo
Campbell Barton [Tue, 12 Jun 2018 14:59:37 +0000 (16:59 +0200)]
WM: HUD was disappearing on redo

2 years agoFix redo panels being added to non-hud regions
Campbell Barton [Tue, 12 Jun 2018 14:55:00 +0000 (16:55 +0200)]
Fix redo panels being added to non-hud regions

2 years agoUI: improve HUD ensure/clear logic
Campbell Barton [Tue, 12 Jun 2018 14:49:52 +0000 (16:49 +0200)]
UI: improve HUD ensure/clear logic

Running operators w/o redo now clears the HUD immediately.

2 years agoParticle: Use loclaized RNG for physics simulation
Sergey Sharybin [Tue, 12 Jun 2018 14:36:43 +0000 (16:36 +0200)]
Particle: Use loclaized RNG for physics simulation

Avoids threading conflicts between multiple particle systems being simulated.

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Tue, 12 Jun 2018 14:29:07 +0000 (16:29 +0200)]
Merge branch 'master' into blender2.8


2 years agoStudioLight: Use texel size as input size
Jeroen Bakker [Tue, 12 Jun 2018 14:18:07 +0000 (16:18 +0200)]
StudioLight: Use texel size as input size

Bettter light distribution for diffuse shading

2 years agoFix T55452: Crash on saving with visible particle system.
Bastien Montagne [Tue, 12 Jun 2018 14:17:05 +0000 (16:17 +0200)]
Fix T55452: Crash on saving with visible particle system.

Missing Main pointer in recent refactor/cleanup of G.main usages...

2 years agoMath: Remove unused functions which are not safe for threading
Sergey Sharybin [Tue, 12 Jun 2018 13:46:50 +0000 (15:46 +0200)]
Math: Remove unused functions which are not safe for threading

All areas are toy use "local" number generator, in order to keep
behavior predictable and threadable. This is what BLI_rng_() API
is for.

There are still lots of usages of BLI_frand(), which are to be
ported to BLI_rng_get_float(). but that is somewhat involved.

For the time being, remove unsafe API, so new areas have zero
chance using it.

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Tue, 12 Jun 2018 13:41:32 +0000 (15:41 +0200)]
Merge branch 'master' into blender2.8


2 years agoUse evaluated objects in Alembic unit tests
Sybren A. Stüvel [Tue, 12 Jun 2018 13:39:54 +0000 (15:39 +0200)]
Use evaluated objects in Alembic unit tests

This at least makes sure the tests don't fail any more. Possibly there
should be more evaluation happening there.

2 years agoFix T55409: Can't animated keyframed material node value after moving keyframe on...
Sergey Sharybin [Fri, 8 Jun 2018 15:23:23 +0000 (17:23 +0200)]
Fix T55409: Can't animated keyframed material node value after moving keyframe on timeline

Completely ignore animation for legacy zero update tag.

If one needs animation to be evaluated, tag with proper update tag, stop relying
on direct assignment of adt->>recalc with zero update tag for DEG.

This commit might cause missing updates when needed, those needs to be looked
into once they happen.

2 years agoParticle: Remove global RNG usage from distribution
Sergey Sharybin [Tue, 12 Jun 2018 13:26:37 +0000 (15:26 +0200)]
Particle: Remove global RNG usage from distribution

2 years agoParticle: Use local RNG during initialization
Sergey Sharybin [Tue, 12 Jun 2018 13:23:38 +0000 (15:23 +0200)]
Particle: Use local RNG during initialization

2 years agoRender: Remove global RNG usage
Sergey Sharybin [Tue, 12 Jun 2018 13:18:54 +0000 (15:18 +0200)]
Render: Remove global RNG usage

We shouldn't be using BI textures anyway. But in any case, adding noise
texture to compositor is doing proper seed updates already, so probably
was already ported to a proper RNG usage.

2 years agoT55454: removal of clay engine
Jeroen Bakker [Tue, 12 Jun 2018 13:15:36 +0000 (15:15 +0200)]
T55454: removal of clay engine

The ClayEngine was introduced to test the blender2.8 architecture during
development. As currently we have the wanted features implemented with
matcaps we are going to remove the clay engine as it was never intended
to be an official releasable engine

Note: The test cases are never run. But when enabled will be skipped as
they were implemented over the Clay Engine

2 years agoStudiolight: add rim lighting to the default light setup
Jeroen Bakker [Tue, 12 Jun 2018 11:40:23 +0000 (13:40 +0200)]
Studiolight: add rim lighting to the default light setup

2 years agoCleanup: moar removal of G.main in BKE area...
Bastien Montagne [Tue, 12 Jun 2018 13:16:45 +0000 (15:16 +0200)]
Cleanup: moar removal of G.main in BKE area...

2 years agoAlembic: made run again
Sybren A. Stüvel [Fri, 8 Jun 2018 15:14:44 +0000 (17:14 +0200)]
Alembic: made run again

Two tests are still failing, but at least the API changes in 2.8 have been
applied now.

2 years agoCleanup/simplify G.main usages.
Bastien Montagne [Tue, 12 Jun 2018 13:03:51 +0000 (15:03 +0200)]
Cleanup/simplify G.main usages.

Using G.main only to get main bled filepath, or built-in fonts, is OK.
So now using the 'valid' G_MAIN macro here instead.

2 years agoFix crahs using ndof
Sergey Sharybin [Tue, 12 Jun 2018 12:50:57 +0000 (14:50 +0200)]
Fix crahs using ndof

2 years agoCleanup: Indentation
Sergey Sharybin [Tue, 12 Jun 2018 12:43:40 +0000 (14:43 +0200)]
Cleanup: Indentation

2 years agoParticles: Use local RNG
Sergey Sharybin [Tue, 12 Jun 2018 12:20:46 +0000 (14:20 +0200)]
Particles: Use local RNG

Currently only obvious cases, but is already a progress.

2 years agoDuplication: Use local RNG
Sergey Sharybin [Tue, 12 Jun 2018 12:20:21 +0000 (14:20 +0200)]
Duplication: Use local RNG

Makes generation safe for threading.

2 years agoAdd utility function to help debugging concurrent usage of global RNG
Sergey Sharybin [Tue, 12 Jun 2018 12:19:26 +0000 (14:19 +0200)]
Add utility function to help debugging concurrent usage of global RNG

Checks are disabled by default, but we need to make them enabled by
porting all required areas, or by removing API which uses global RNG.

2 years agoDepsgraph: Ensure modifiers evaluation doesn't happen on top evaluated mesh
Sergey Sharybin [Tue, 12 Jun 2018 08:01:57 +0000 (10:01 +0200)]
Depsgraph: Ensure modifiers evaluation doesn't happen on top evaluated mesh

2 years agoDepsgraph: Don't update derived mesh for particles on render
Sergey Sharybin [Tue, 12 Jun 2018 08:00:25 +0000 (10:00 +0200)]
Depsgraph: Don't update derived mesh for particles on render

Render depsgraph is evaluated from scratch, so it should not be needed
to do such a call.

This also prevents modifier stack from being evaluated on top of already
evaluated mesh

2 years agoDepsgraph: Add debug option to invalidate data tagged for update
Sergey Sharybin [Tue, 12 Jun 2018 07:59:30 +0000 (09:59 +0200)]
Depsgraph: Add debug option to invalidate data tagged for update

See comment for INVALIDATE_ON_FLUSH.

2 years agoDepsgraph: Set temp object to invalid state as soon as it becomes inaccessible
Sergey Sharybin [Tue, 12 Jun 2018 07:55:34 +0000 (09:55 +0200)]
Depsgraph: Set temp object to invalid state as soon as it becomes inaccessible

2 years agoDepsgraph: Cleanup, wrap private functions to an anonymous namespace
Sergey Sharybin [Tue, 12 Jun 2018 07:46:00 +0000 (09:46 +0200)]
Depsgraph: Cleanup, wrap private functions to an anonymous namespace

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Tue, 12 Jun 2018 10:58:31 +0000 (12:58 +0200)]
Merge branch 'master' into blender2.8


2 years agoCleanup: remove moar G.main from BKE area.
Bastien Montagne [Tue, 12 Jun 2018 10:53:27 +0000 (12:53 +0200)]
Cleanup: remove moar G.main from BKE area.

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Tue, 12 Jun 2018 10:38:54 +0000 (12:38 +0200)]
Merge branch 'master' into blender2.8


2 years agoCleanup: remove some G.main from ED's animsys.
Bastien Montagne [Tue, 12 Jun 2018 10:28:14 +0000 (12:28 +0200)]
Cleanup: remove some G.main from ED's animsys.

The easy ones - there some much, much trickier to tackle there...

2 years agoLookDev: Move lookdev balls when menu switches
Jeroen Bakker [Tue, 12 Jun 2018 10:24:05 +0000 (12:24 +0200)]
LookDev: Move lookdev balls when menu switches

2 years agoStudiolight: Disabled irradiance icons
Jeroen Bakker [Tue, 12 Jun 2018 09:53:34 +0000 (11:53 +0200)]
Studiolight: Disabled irradiance icons

2 years agoStudiolight: Bumped the radiance buffer to RGBA16F
Jeroen Bakker [Tue, 12 Jun 2018 09:50:07 +0000 (11:50 +0200)]
Studiolight: Bumped the radiance buffer to RGBA16F

Fixes issue reported at

2 years agoStudiolight: cache irradiance buffer
Jeroen Bakker [Tue, 12 Jun 2018 09:48:17 +0000 (11:48 +0200)]
Studiolight: cache irradiance buffer

2 years agoCleanup: remove some G.main from BKE area.
Bastien Montagne [Tue, 12 Jun 2018 09:21:54 +0000 (11:21 +0200)]
Cleanup: remove some G.main from BKE area.

2 years agoUI: fix crash with HUD panel size
Campbell Barton [Tue, 12 Jun 2018 09:18:52 +0000 (11:18 +0200)]
UI: fix crash with HUD panel size

There can be no panels in the region.

2 years agoUI: remove redo popover from topbar
Campbell Barton [Tue, 12 Jun 2018 08:51:23 +0000 (10:51 +0200)]
UI: remove redo popover from topbar

See: T55039

2 years agoFix T55448: Typo in Cycles CUDA debug output
Lukas Stockner [Tue, 12 Jun 2018 08:37:51 +0000 (10:37 +0200)]
Fix T55448: Typo in Cycles CUDA debug output

Reviewers: sergey, lukasstockner97

Reviewed By: lukasstockner97

Tags: #cycles, #bf_blender

Differential Revision:

2 years agoUI: Initial persistent floating redo panel
Campbell Barton [Tue, 12 Jun 2018 08:11:32 +0000 (10:11 +0200)]
UI: Initial persistent floating redo panel

This is the first step to moving redo out of the top-bar, see: T55039

- Support for floating panels in the ScrArea has been added.
- A new region type RGN_TYPE_HUD is used for floating settings input.
- Only one HUD should be visible at a time.
- Currently HUD regions are only visible
  for 3D view and image space types.
- There are currently some remaining glitches with hide/show
  that need further investigation.

2 years agoUI: non editable template_icon_views are rendered as label
Jeroen Bakker [Tue, 12 Jun 2018 06:43:09 +0000 (08:43 +0200)]
UI: non editable template_icon_views are rendered as label

This is also a way to render an large preview icon without the selection
control. This is used by the studiolights in the userprefs that only
displays the preview of the light.

2 years agoUI: replace ui_draw_search_back w/ general code
Campbell Barton [Tue, 12 Jun 2018 06:14:13 +0000 (08:14 +0200)]
UI: replace ui_draw_search_back w/ general code

Useful for drawing any kind of region-background.

2 years agoCleanup: remove unused context args
Campbell Barton [Tue, 12 Jun 2018 05:59:27 +0000 (07:59 +0200)]
Cleanup: remove unused context args

2 years agoCleanup: remove image->bindcode, always wrap in GPUTexture.
Brecht Van Lommel [Mon, 11 Jun 2018 20:30:59 +0000 (22:30 +0200)]
Cleanup: remove image->bindcode, always wrap in GPUTexture.

This simplifies code, and will hopefully make UDIM usage of GPUTexture
a little easier.

2 years agoRevert "Cleanup: remove image->bindcode, always wrap in GPUTexture."
Brecht Van Lommel [Mon, 11 Jun 2018 20:34:35 +0000 (22:34 +0200)]
Revert "Cleanup: remove image->bindcode, always wrap in GPUTexture."

This reverts commit 8242a5bc853a74da1273fc7ad4b959ac716c563c. This isn't
quite ready to use yet.

2 years agoCleanup: remove image->bindcode, always wrap in GPUTexture.
Brecht Van Lommel [Mon, 11 Jun 2018 20:30:59 +0000 (22:30 +0200)]
Cleanup: remove image->bindcode, always wrap in GPUTexture.

2 years agoFix part of T55439: don't add indirectly linked objects to the scene on link.
Brecht Van Lommel [Mon, 11 Jun 2018 19:51:21 +0000 (21:51 +0200)]
Fix part of T55439: don't add indirectly linked objects to the scene on link.

2 years agoDrivers: ensure Python expressions are cached with copy-on-write.
Brecht Van Lommel [Mon, 11 Jun 2018 18:00:03 +0000 (20:00 +0200)]
Drivers: ensure Python expressions are cached with copy-on-write.

Store the compiled expressions on the original driver.

Ref T55442.

2 years agoCleanup: fix compiler warnings.
Brecht Van Lommel [Mon, 11 Jun 2018 19:20:43 +0000 (21:20 +0200)]
Cleanup: fix compiler warnings.

2 years agoFix accidental addons submodule change in previous commit.
Brecht Van Lommel [Mon, 11 Jun 2018 19:12:06 +0000 (21:12 +0200)]
Fix accidental addons submodule change in previous commit.

2 years agoFix crash with OpenGL rendering in multiple threads on macOS.
Edmund Kapusniak [Mon, 11 Jun 2018 18:50:14 +0000 (20:50 +0200)]
Fix crash with OpenGL rendering in multiple threads on macOS.

On macOS we must always go through BLI_thread_local_get/set().

Differential Revision:

2 years agoPose: optimize pose rebuild for copy-on-write.
Brecht Van Lommel [Mon, 11 Jun 2018 18:26:29 +0000 (20:26 +0200)]
Pose: optimize pose rebuild for copy-on-write.

Ref T55442.

2 years agoCleanup: add simplified panel callbacks
Campbell Barton [Mon, 11 Jun 2018 17:30:48 +0000 (19:30 +0200)]
Cleanup: add simplified panel callbacks

2 years agoImprove/partially fix overriding of Object material pointers.
Bastien Montagne [Mon, 11 Jun 2018 17:28:12 +0000 (19:28 +0200)]
Improve/partially fix overriding of Object material pointers.

Basic workflow shall now work, still lots to do in the UI (ID template
needs some love to reflect overriden status ;) ).

2 years agoGHOST: Fix uninitialized values.
fclem [Mon, 11 Jun 2018 15:07:37 +0000 (17:07 +0200)]
GHOST: Fix uninitialized values.

2 years agoFix crash when doing Sculpt->Edit->Sculpt switch.
Bastien Montagne [Mon, 11 Jun 2018 16:56:01 +0000 (18:56 +0200)]
Fix crash when doing Sculpt->Edit->Sculpt switch.

We actually get fully rid of BKE_object_free_derived_mesh_caches usages,
now always using BKE_object_free_derived_caches (bad name, btw, should
be 'evaluated_caches ;) )...

2 years agoWM: use layout/draw callbacks for buttons space
Campbell Barton [Mon, 11 Jun 2018 16:36:00 +0000 (18:36 +0200)]
WM: use layout/draw callbacks for buttons space

2 years agoWM: split panel drawing into layout and draw
Campbell Barton [Mon, 11 Jun 2018 16:23:36 +0000 (18:23 +0200)]
WM: split panel drawing into layout and draw

This matches changes made to the header.

2 years agoOutlines: Make Xray outlines 2px thick instead of 3px
Clément Foucault [Mon, 11 Jun 2018 16:03:50 +0000 (18:03 +0200)]
Outlines: Make Xray outlines 2px thick instead of 3px

2 years agoOutlines: Make outlines in xray mode not occluded.
Clément Foucault [Mon, 11 Jun 2018 15:26:41 +0000 (17:26 +0200)]
Outlines: Make outlines in xray mode not occluded.

This is visually too distracting (flickering). Until we have a better
solution, just disable occlusion fading.

2 years agoRevert previous commit and do proper fix for missing typeinfo in nodes.
Bastien Montagne [Mon, 11 Jun 2018 15:39:05 +0000 (17:39 +0200)]
Revert previous commit and do proper fix for missing typeinfo in nodes.

2 years agoGHOST: GLX: Remove XInitThreads
Clément Foucault [Mon, 11 Jun 2018 15:22:57 +0000 (17:22 +0200)]
GHOST: GLX: Remove XInitThreads

This was needed because we were sharing opengl contexts across multiple
threads. With the recent refactor this should be no longer needed.

2 years agoFix crash in loading/applying static overrides of some nodal material.
Bastien Montagne [Mon, 11 Jun 2018 15:11:26 +0000 (17:11 +0200)]
Fix crash in loading/applying static overrides of some nodal material.

No real idea why node's typeinfo is NULL here... but think we do not
care much in that case, so just adding some NULL checks for now.

2 years agoCleanup: remove unused DAG_EVAL_PREVIEW mode.
Brecht Van Lommel [Mon, 11 Jun 2018 09:48:16 +0000 (11:48 +0200)]
Cleanup: remove unused DAG_EVAL_PREVIEW mode.

2 years agoCleanup: remove object.is_visible.
Brecht Van Lommel [Fri, 8 Jun 2018 16:43:05 +0000 (18:43 +0200)]
Cleanup: remove object.is_visible.

Depsgraph already iterates over visible objects, and since this was only
valid for objects evaluated with the depsgraph it was confusing.

2 years agoFix incorrect object selection test in outliner and rigid body.
Brecht Van Lommel [Mon, 11 Jun 2018 09:40:26 +0000 (11:40 +0200)]
Fix incorrect object selection test in outliner and rigid body.

2 years agoFix T55436: crash with point density and shader tweaking.
Brecht Van Lommel [Mon, 11 Jun 2018 14:29:49 +0000 (16:29 +0200)]
Fix T55436: crash with point density and shader tweaking.

With copy-on-write we can no longer assumes the point density data is
available after Cycles synchronization with Blender data is done. So
force it to be loaded earlier, even if it's not great for interactivity.

2 years agoFix merge error in 908b696, removed files were accidentally added back.
Brecht Van Lommel [Mon, 11 Jun 2018 15:01:17 +0000 (17:01 +0200)]
Fix merge error in 908b696, removed files were accidentally added back.

2 years agoGHOST: Fix uninitialized var
Clément Foucault [Mon, 11 Jun 2018 15:04:44 +0000 (17:04 +0200)]
GHOST: Fix uninitialized var

Was causing crash on startup.

2 years agoUI: split left/right header buttons
Campbell Barton [Mon, 11 Jun 2018 14:57:35 +0000 (16:57 +0200)]
UI: split left/right header buttons

- Added flexible separators to
  Clip, Graph, Dopesheet, Image, Node, Timeline, 3D View.
- Added graying out for Proportional Editing
  menus to avoid popping when right-aligned.
- Slightly re-arranged some controls,
  so they can be on correct side of the separators.

Patch by @billreynish

2 years agoFix: Remove UI_BLOCK_MOVEMOUSE_QUIT from popovers
Joshua Leung [Mon, 11 Jun 2018 14:48:59 +0000 (02:48 +1200)]
Fix: Remove UI_BLOCK_MOVEMOUSE_QUIT from popovers

This was causing driver editing popovers to just keep disappearing
whenever you accidentally moved the mouse away, making the popovers
there nearly useless.

After testing with the other popovers we have in other places, I don't
really see why we needed this flag enabled in the first place. You can
still switch between popovers in the topbar by mousing over the others,
and if you want to dismiss without clicking to escape, you can go over a
standard menu instead OR just move back towards the button that spawned it.

Let's just test this out for a while and see how it goes. Maybe we don't
need a more invasive solution here...

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Mon, 11 Jun 2018 14:02:46 +0000 (16:02 +0200)]
Merge branch 'master' into blender2.8


2 years agoWorkbench: API Changes
Jeroen Bakker [Mon, 11 Jun 2018 13:54:02 +0000 (15:54 +0200)]
Workbench: API Changes

- merged matcap and studioLight api

2 years agoCleanup: remove moar ugly G.main usages...
Bastien Montagne [Mon, 11 Jun 2018 13:40:37 +0000 (15:40 +0200)]
Cleanup: remove moar ugly G.main usages...

BKE_image was an ugly nest, could fix all but the ones from compositor,
so moved ugly G.main there, at least we know where the Evil is that way ;)

2 years agoFix T55440: Pose Mode Crash
Dalai Felinto [Mon, 11 Jun 2018 13:29:13 +0000 (15:29 +0200)]
Fix T55440: Pose Mode Crash

2 years agoGHOST: WGL: Delay context initialization for offscreen contexts.
fclem [Mon, 11 Jun 2018 11:06:54 +0000 (13:06 +0200)]
GHOST: WGL: Delay context initialization for offscreen contexts.

Same as 128926a41b368e166af63515370d9c9367e3dda2 but for windows.

2 years agoCycles: Cleanup, silence strict compiler warning
Sergey Sharybin [Mon, 11 Jun 2018 10:54:17 +0000 (12:54 +0200)]
Cycles: Cleanup, silence strict compiler warning

There is one legit place in the code where memcpy was used as an
optimization trick. Was needed for older version of GCC, but now
it should be re-evaluated and checked if it still helps to have
that trick.

In other places it's somewhat lazy programming to zero out all
object members. That is absolutely unsafe, at the moment when
less trivial class is used as a member in that object things
will break.

Other cases were using memcpy into an object which comes from
an external library. We don't control that object, and we can
not guarantee it will always be safe for such memory tricks
and debugging bugs caused by such low level access is far fun.

Ideally we need to use more proper C++, but needs to be done with
big care, including benchmarks of each change, For now do
annoying but simple cast to void*.

2 years agoLibmv: Cleanup, make strict compiler more happy
Sergey Sharybin [Mon, 11 Jun 2018 10:53:11 +0000 (12:53 +0200)]
Libmv: Cleanup, make strict compiler more happy

In C++ it is not really safe to memcpy objects, and newer GCC will warn
about this. However, we don't use our vector for unsafe-to-memcpy objects,
so just explicitly silence that warning.

2 years agoRender: Fix build problem with missing GL/glew.h
fclem [Mon, 11 Jun 2018 11:00:21 +0000 (13:00 +0200)]
Render: Fix build problem with missing GL/glew.h

2 years agoFix separator element for headers with multiple directions
Dalai Felinto [Mon, 11 Jun 2018 12:54:04 +0000 (14:54 +0200)]
Fix separator element for headers with multiple directions

2 years agoUI: Separator spacer
Dalai Felinto [Mon, 11 Jun 2018 12:33:53 +0000 (14:33 +0200)]
UI: Separator spacer

This support layout.separator_spacer() to be used by headers as a way to
dynamically separate the ui buttons.

Right now no UI file is changed, though we can use this right away in the
timeline, and shortly after in the viewport header (moving settings from
the topbar to it).

Original design by William Reynish.

Review: Campbell Barton

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Mon, 11 Jun 2018 12:44:03 +0000 (14:44 +0200)]
Merge branch 'master' into blender2.8

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Mon, 11 Jun 2018 12:39:38 +0000 (14:39 +0200)]
Merge branch 'master' into blender2.8


2 years agoRender: Create a separate gl context for rendering.
Clément Foucault [Mon, 11 Jun 2018 11:54:31 +0000 (13:54 +0200)]
Render: Create a separate gl context for rendering.

This should take care of all the threading stability issues some people
are reporting.

2 years agoGHOST: Delay opengl context initialization
Clément Foucault [Mon, 11 Jun 2018 09:49:10 +0000 (11:49 +0200)]
GHOST: Delay opengl context initialization

This way they can be init in their owner thread. Contexts should not be
shared accross threads. Once you make a context active on a thread it is
owned by the thread.

This commit only have the GLX backend updated but should not break orther

2 years agoDRW: Rename ogl_context to gl_context
Clément Foucault [Mon, 11 Jun 2018 09:38:26 +0000 (11:38 +0200)]
DRW: Rename ogl_context to gl_context

We might not use opengl forever :)

2 years agoDRW: Add cache reset.
Clément Foucault [Mon, 11 Jun 2018 09:36:09 +0000 (11:36 +0200)]
DRW: Add cache reset.

This is a temporary solution to the use of the shared cache.

Ideally this cache should be per gl drawing context.

2 years agoShading: Change icon of userpreference in Shading popover
Jeroen Bakker [Mon, 11 Jun 2018 10:41:35 +0000 (12:41 +0200)]
Shading: Change icon of userpreference in Shading popover

2 years agoCleanup: Moar G.main removal of Hell.
Bastien Montagne [Mon, 11 Jun 2018 10:14:18 +0000 (12:14 +0200)]
Cleanup: Moar G.main  removal of Hell.

This commit actually adds some G.main... but at much, much higher level
than the ones it removes, so should still be better ;)

2 years agoCleanup: remove some G.main usages...
Bastien Montagne [Mon, 11 Jun 2018 09:05:37 +0000 (11:05 +0200)]
Cleanup: remove some G.main usages...