2 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Mon, 16 Apr 2018 08:19:03 +0000 (10:19 +0200)]
Merge branch 'master' into blender2.8

2 years agoMake ID icons safe for deletion from threads
Sergey Sharybin [Fri, 13 Apr 2018 11:52:37 +0000 (13:52 +0200)]
Make ID icons safe for deletion from threads

Added a lock-free deferred queue for deletion. Now if ID icon
is requested to be freed from non-main thread, it will be added
to the deferred list. Actual deletion will happen later from main

Currently actual deletion only happens next time BKE_icon_id_delete()
is called, which might not be enough. But it's easy to enforce
deferred deletion.

Icons for preview images are not covered by deferred deletion yet.

Reviewers: mont29

Differential Revision:

2 years agoAdded lock-free single linked list implementation
Sergey Sharybin [Fri, 13 Apr 2018 11:31:55 +0000 (13:31 +0200)]
Added lock-free single linked list implementation

Only supports lock-free insertion for now, can not delete element
or traverse the list at the same time.

2 years agoMerge remote-tracking branch 'origin' into blender2.8
Gaia Clary [Mon, 16 Apr 2018 07:59:52 +0000 (09:59 +0200)]
Merge remote-tracking branch 'origin' into blender2.8

2 years agoDisable Feature Collada: Tests do not work on unix
Gaia Clary [Mon, 16 Apr 2018 07:55:05 +0000 (09:55 +0200)]
Disable Feature Collada: Tests do not work on unix

The tests as they are now make string comparisons. This only works
on Windows because the reference files look different for different
operating systems because of different number formatting.
The collada tests need a complete rework (wip)

2 years agoFix object/bone select buffer big-endian sorting
Campbell Barton [Mon, 16 Apr 2018 06:51:41 +0000 (08:51 +0200)]
Fix object/bone select buffer big-endian sorting

2 years agoCleanup: unused function
Campbell Barton [Mon, 16 Apr 2018 05:40:40 +0000 (07:40 +0200)]
Cleanup: unused function

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Mon, 16 Apr 2018 05:39:47 +0000 (07:39 +0200)]
Merge branch 'master' into blender2.8

2 years agoLogging: edits to build on macOS
Campbell Barton [Mon, 16 Apr 2018 05:38:11 +0000 (07:38 +0200)]
Logging: edits to build on macOS

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Mon, 16 Apr 2018 05:27:53 +0000 (07:27 +0200)]
Merge branch 'master' into blender2.8

2 years agoEevee: Cleanup remaining shadow geometry references.
Clément Foucault [Sun, 15 Apr 2018 20:23:28 +0000 (22:23 +0200)]
Eevee: Cleanup remaining shadow geometry references.

2 years agoEevee: Shadows: Transition to individual face rendering.
Clément Foucault [Sun, 15 Apr 2018 20:22:50 +0000 (22:22 +0200)]
Eevee: Shadows: Transition to individual face rendering.

This gets rid of the need of a geom shader and instancing.

Both are pretty slow compared to the new method.
The only moment the old method could be better is when scene is filled
with lots of objects and most of the objects in the shadow map appear
on every layer.

But even then, we could optimize the culling and minimize the overhead.

2 years agoDRW: Fix culling algorithm for cascade shadow maps.
Clément Foucault [Sun, 15 Apr 2018 19:48:57 +0000 (21:48 +0200)]
DRW: Fix culling algorithm for cascade shadow maps.

draw_frustum_boundbox_calc does not work properly it seems in this case.

2 years agoDRW: Override matrices: fix const correctness.
Clément Foucault [Sun, 15 Apr 2018 17:03:42 +0000 (19:03 +0200)]
DRW: Override matrices: fix const correctness.

2 years agoCleanup: skip redundant edit-bone select lookups
Campbell Barton [Sun, 15 Apr 2018 19:45:19 +0000 (21:45 +0200)]
Cleanup: skip redundant edit-bone select lookups

2 years agoCleanup: Make access to widget triangle defines explicit
Julian Eisel [Sun, 15 Apr 2018 19:32:04 +0000 (21:32 +0200)]
Cleanup: Make access to widget triangle defines explicit

E.g. the vertices created for each of the defines would require a
certain offset. If you don't know what to look for, finding out about
this is pretty difficult. Make them easily searchable instead.

2 years agoFix button triangle for "hold action" not working
Julian Eisel [Sun, 15 Apr 2018 19:14:10 +0000 (21:14 +0200)]
Fix button triangle for "hold action" not working

There is quite some mess going on in that most of the old triangle
drawing code is still there, but does almost nothing effectively.
Instead values are hardcoded in the shader, however it doesn't support
the drawing options the triangle functions expose.
E.g. the 'where' variable to set triangle direction doesn't work.

2 years agoPydoc: Fix multiple bpy.type modules
Aaron Carlisle [Sun, 15 Apr 2018 15:42:52 +0000 (11:42 -0400)]
Pydoc: Fix multiple bpy.type modules

2 years agoMissed from last merge
Campbell Barton [Sun, 15 Apr 2018 15:41:11 +0000 (17:41 +0200)]
Missed from last merge

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 15 Apr 2018 10:48:39 +0000 (12:48 +0200)]
Merge branch 'master' into blender2.8

2 years agoCleanup: remove redundant args from ebone picking
Campbell Barton [Sun, 15 Apr 2018 10:45:39 +0000 (12:45 +0200)]
Cleanup: remove redundant args from ebone picking

Make this match editmesh picking more closely

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 15 Apr 2018 10:03:09 +0000 (12:03 +0200)]
Merge branch 'master' into blender2.8

2 years agoCleanup: remove bad casts
Campbell Barton [Sun, 15 Apr 2018 09:57:49 +0000 (11:57 +0200)]
Cleanup: remove bad casts

2 years agoCleanup: ED_armature naming
Campbell Barton [Sun, 15 Apr 2018 09:45:51 +0000 (11:45 +0200)]
Cleanup: ED_armature naming

- Wasn't clear which functions handle edit-bones.
- Mixed both ebone and edit_bone in names.
- Didn't use ED_armature_* prefix for public API.

See P655 to apply to branches.

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 15 Apr 2018 08:52:14 +0000 (10:52 +0200)]
Merge branch 'master' into blender2.8

2 years agoCleanup: remove undoing access, minor formatting
Campbell Barton [Sun, 15 Apr 2018 08:48:50 +0000 (10:48 +0200)]
Cleanup: remove undoing access, minor formatting

Access to undoing state isn't needed,
some text insert code was overly compacted.

2 years agoFix T54593: Py text edits crash (undo regression)
Campbell Barton [Sun, 15 Apr 2018 08:34:41 +0000 (10:34 +0200)]
Fix T54593: Py text edits crash (undo regression)

2 years agoFix compiler error in Windows
Antonio Vazquez [Sat, 14 Apr 2018 14:24:06 +0000 (16:24 +0200)]
Fix compiler error in Windows

2 years agoFix T54527: Misleading Tooltip on Snap Target Menu
Aaron Carlisle [Sat, 14 Apr 2018 22:26:27 +0000 (18:26 -0400)]
Fix T54527: Misleading Tooltip on Snap Target Menu

2 years agoPydocs: Expand bge.contraint docs
Aaron Carlisle [Thu, 29 Mar 2018 22:18:04 +0000 (18:18 -0400)]
Pydocs: Expand bge.contraint docs

Takes information from the manual and dumps it here.

2 years agoCleanup: style
Campbell Barton [Sat, 14 Apr 2018 20:26:12 +0000 (22:26 +0200)]
Cleanup: style

2 years agoFix compiler error in Windows
Antonio Vazquez [Sat, 14 Apr 2018 14:24:06 +0000 (16:24 +0200)]
Fix compiler error in Windows

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sat, 14 Apr 2018 12:34:21 +0000 (14:34 +0200)]
Merge branch 'master' into blender2.8

2 years agoCleanup: use const for BKE_object args
Campbell Barton [Sat, 14 Apr 2018 12:27:38 +0000 (14:27 +0200)]
Cleanup: use const for BKE_object args

2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sat, 14 Apr 2018 12:04:24 +0000 (14:04 +0200)]
Merge branch 'master' into blender2.8

2 years agoLogging: replace 'fwrite' w/ 'write'
Campbell Barton [Sat, 14 Apr 2018 11:59:33 +0000 (13:59 +0200)]
Logging: replace 'fwrite' w/ 'write'

We're already buffing output, so use write directly.

2 years agoCleanup: rename WriteData struct members.
Campbell Barton [Sat, 14 Apr 2018 11:17:11 +0000 (13:17 +0200)]
Cleanup: rename WriteData struct members.

Relationship between tot/count/buf wasn't clear.

Also use doxy sections.

2 years agoUndo: refactor memfile writing
Campbell Barton [Sat, 14 Apr 2018 10:33:19 +0000 (12:33 +0200)]
Undo: refactor memfile writing

- Move static undo variable into 'WriteData',
  'memfile_chunk_add' used arguments in a confusing way,
  sometimes to set/clear static var.

- Replace checks for 'wd->current' with 'wd->use_memfile'
  move memfile vars into 'wd->mem' struct.

2 years agoFix T54568: Undo memory de-duplication failed
Campbell Barton [Sat, 14 Apr 2018 10:30:14 +0000 (12:30 +0200)]
Fix T54568: Undo memory de-duplication failed

Error in 651b8fb14e caused de-duplication to fail.

2 years agoBGL: Expose OpenGL API for FrameBuffers and RenderBuffers.
Germano [Sat, 14 Apr 2018 05:25:18 +0000 (02:25 -0300)]
BGL: Expose OpenGL API for FrameBuffers and RenderBuffers.

2 years agoPyAPI: Gawain: Checks the member `data` instead `vbo_id`.
Germano [Fri, 13 Apr 2018 13:47:49 +0000 (10:47 -0300)]
PyAPI: Gawain: Checks the member `data` instead `vbo_id`.

After recent changes in gawain, `vbo_id` is now assigned in VertBuf creation.

2 years agoRNA: Fix crash with select_mode_update.
Germano [Fri, 13 Apr 2018 13:41:44 +0000 (10:41 -0300)]
RNA: Fix crash with select_mode_update.

`bpy.context.tool_settings.mesh_select_mode = (True, True, True)` was crashing because `wmn->window` was not being passed.

2 years agoDRW: Deferred Shader Compilation: Optimize shaders compilation.
Germano [Fri, 13 Apr 2018 13:38:13 +0000 (10:38 -0300)]
DRW: Deferred Shader Compilation: Optimize shaders compilation.

`glFinish()` that was causing bad perf issue on `Intel(R) HD Graphics 4000`.

2 years agoCLAY: Fix prepass shader on certain compiler.
Germano [Fri, 13 Apr 2018 13:36:05 +0000 (10:36 -0300)]
CLAY: Fix prepass shader on certain compiler.

`Intel(R) HD Graphics 4000` driver sometimes does stupid things.

2 years agoPython API: remove preview/render resolution settings from API functions.
Brecht Van Lommel [Sun, 8 Apr 2018 07:28:52 +0000 (09:28 +0200)]
Python API: remove preview/render resolution settings from API functions.

For correct results these must have been set already when the depsgraph was
created and evaluated, so all dependencies have appropriate resolutions too.

For particle we no longer backup and restore the viewport particles to avoid
overwriting them during render, as copy-on-write solves this for us. Even
without COW particles seem to work ok.

This also removes the particle simplification options based on camera. This
was never used much and only available in Blender Internal.

Differential Revision:

2 years agoDepsgraph: don't pass evaluation context to update functions.
Brecht Van Lommel [Fri, 6 Apr 2018 09:21:20 +0000 (11:21 +0200)]
Depsgraph: don't pass evaluation context to update functions.

The depsgraph now contains all the state needed to evaluate it.

Differential Revision:

2 years agoDepsgraph: remove engine type from evaluation context.
Brecht Van Lommel [Fri, 6 Apr 2018 08:55:11 +0000 (10:55 +0200)]
Depsgraph: remove engine type from evaluation context.

This was only used for viewport rendering, where we can just pass the engine
type directly. There is no technical reason why we can't draw the same depsgrpah
with different render engines.

It also led to some weird things like requiring a render engine for snapping
and raycast API functions.

Differential Revision:

2 years agoDepsgraph: store mode and time in depsgraph, add view layer / scene accessors.
Brecht Van Lommel [Fri, 6 Apr 2018 07:17:53 +0000 (09:17 +0200)]
Depsgraph: store mode and time in depsgraph, add view layer / scene accessors.

Scene, view layer and mode are now set in the constructor and never changed.
Time is updated on frame changes to indicate which frame is being or has been
evaluated last.

This is a step towards making EvaluationContext obsolete.

Differential Revision:

2 years agoPython API: remove object.dupli_list_create and dupli_list_clear.
Brecht Van Lommel [Fri, 6 Apr 2018 08:32:18 +0000 (10:32 +0200)]
Python API: remove object.dupli_list_create and dupli_list_clear.

Cycles is no longer using this. There are still addons using it but for
correct results with the new depsgraph this API should not be used.

Differential Revision:

2 years agoFix incorrect object in editmode tests in depsgraph eval.
Brecht Van Lommel [Fri, 13 Apr 2018 10:51:49 +0000 (12:51 +0200)]
Fix incorrect object in editmode tests in depsgraph eval.

These cases should not depend on the view layer.

2 years agoFix incomplete evaluation context in depsgraph iter.
Brecht Van Lommel [Fri, 13 Apr 2018 10:22:57 +0000 (12:22 +0200)]
Fix incomplete evaluation context in depsgraph iter.

2 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Fri, 13 Apr 2018 10:19:31 +0000 (12:19 +0200)]
Merge branch 'master' into blender2.8

2 years agoRemove editor type selector from File Browser when in 'Operator' mode.
Bastien Montagne [Fri, 13 Apr 2018 10:11:56 +0000 (12:11 +0200)]
Remove editor type selector from File Browser when in 'Operator' mode.

Having that one when opening a file or loading some lib makes absolutely
no sense, and switching that 'temp' editor to some other type can
trigger all kind of funny bugs...

Note that using the shortcuts keys (Shift-F5 etc.) is still possible,
removing those seems a bit more involved. :/

2 years agoPoint cache: stop using general object dupli system.
Brecht Van Lommel [Thu, 12 Apr 2018 16:24:46 +0000 (18:24 +0200)]
Point cache: stop using general object dupli system.

We now only look into dupli groups to find point caches to edit. This
feature is a leftover from the old proxy system, and evaluating the
full dupli list and all transforms was overkill. With static overrides
we may want to get rid of using duplis entirely, and just let users
select the objects directly.

2 years agoCleanup: add utility function to find a single point cache ID.
Brecht Van Lommel [Thu, 12 Apr 2018 16:43:43 +0000 (18:43 +0200)]
Cleanup: add utility function to find a single point cache ID.

2 years agoCleanup: don't use Blender structs in iTaSC module.
Brecht Van Lommel [Thu, 12 Apr 2018 13:59:51 +0000 (15:59 +0200)]
Cleanup: don't use Blender structs in iTaSC module.

2 years agoUI: Activate (unused) tab button-type on press instead of release
Julian Eisel [Fri, 13 Apr 2018 08:30:47 +0000 (10:30 +0200)]
UI: Activate (unused) tab button-type on press instead of release

Even if we want to support drag & drop, seems like most other apps that
support drag & drop for tabs activate the tab first anyway.

2 years agoUI: Activate workspace after appending it using the '+' menu
Julian Eisel [Thu, 12 Apr 2018 16:11:06 +0000 (18:11 +0200)]
UI: Activate workspace after appending it using the '+' menu

Could use an operator-macro if they'd support own RNA-properties. For
now added a wrapper operator.

2 years agoGPUSelect: Remove glFinish() that was causing bad perf issue.
Clément Foucault [Thu, 12 Apr 2018 15:36:53 +0000 (17:36 +0200)]
GPUSelect: Remove glFinish() that was causing bad perf issue.

I can see how it's slowing things down: glFinish make sure that every query
are finished but the first query may have been finished a long time ago.

This might create bubbles because of the PIL_sleep_ms.

2 years agoFix: Follow up to 16b795cb95c
Joshua Leung [Thu, 12 Apr 2018 13:42:55 +0000 (15:42 +0200)]
Fix: Follow up to 16b795cb95c

It's not just the Graph Editor that needed this - the NLA also uses similar code
and thus suffers from a similar problem.

(My first commit from the Blender Institute v2.0 - Just testing that everything works)

2 years agoDepsgraph: Move CoW tag to ID datablock tag
Sergey Sharybin [Thu, 12 Apr 2018 09:03:24 +0000 (11:03 +0200)]
Depsgraph: Move CoW tag to ID datablock tag

Unless there is an external action from an user, there should not
be need in re-copying original datablock to a copied one.

This brings performance up from 5fps to 11fps with Spring runcycle
(performance in master is 14fps).

2 years agoDepsgraph: Avoid relations build time scene datablock expansion
Sergey Sharybin [Thu, 12 Apr 2018 07:47:51 +0000 (09:47 +0200)]
Depsgraph: Avoid relations build time scene datablock expansion

Quite straightforward implementation, allows us to remove all the cherry-picking
update of specified scene/view layer/collection fields. Makes it possible to use
generic function to update scene.

The tricky part is that we need to know view layer pointer before the whole
evaluation starts. So we actually expand scene at initialization of evaluation.
context. This is still a bit of an exceptional case, but at least we still avoid
dangerous cherry-picking update.

2 years agoDepsgraph: Introduce ID recalc flag for COW component
Sergey Sharybin [Wed, 11 Apr 2018 15:29:00 +0000 (17:29 +0200)]
Depsgraph: Introduce ID recalc flag for COW component

Currently unused, but will become handy to check whether ID needs
to have COW update to be run.

2 years agoDepsgraph: Bind base by it's index
Sergey Sharybin [Wed, 11 Apr 2018 10:39:36 +0000 (12:39 +0200)]
Depsgraph: Bind base by it's index

For the performance we convert object bases list to an array
during view layer evaluation. This makes it possible to have
very cheap index-based base lookup.

The goal of this change is to get rid of base used for function
binding, and avoid scene datablock expansion at the depsgraph
construction time.

2 years agoDepsgraph: Bind view layer by index
Sergey Sharybin [Wed, 11 Apr 2018 10:36:50 +0000 (12:36 +0200)]
Depsgraph: Bind view layer by index

Makes it a bit slower to evaluate single view layer, but this is does not
happen often, and overall number of layers is not very high.

2 years agoDepsgraph: Remove function bindings with collections
Sergey Sharybin [Tue, 10 Apr 2018 13:07:39 +0000 (15:07 +0200)]
Depsgraph: Remove function bindings with collections

Use single function to evaluate all the collections for the given view layer.

This way we avoid need to get scene ID sub-data. Similar to pchan index, this
allows us to avoid build-time scene expansion, which also simplifies update of
the scene datablock.

Well, sort of. There is still work to be done to get rid of build-time scene
datablock expansion, which includes:

- Need to pass view layer by index.

  Annoying part would be to get actual view layer for that index. In practice
  doing list lookup might not be such a bad idea, since such lookup will not
  happen very often, and it is unlikely to have more than handful of view
  layer anyway.

  Other idea could be to use view layer from evaluation context.
  Or maybe from depsgraph, which is supposed to be in the context. Can have
  some assert statements to make sure everything is good.

- Need to get id of base binding for flags flush.

  We can replace that with index-based lookup from an array created by view
  layer evaluation.

Reviewers: dfelinto

Differential Revision:

2 years agoMoved vectorblur code from render to compositor
Jeroen Bakker [Thu, 12 Apr 2018 08:27:38 +0000 (10:27 +0200)]
Moved vectorblur code from render to compositor

In preparation of the removal of blender internal render we
moved the vectorblur code that was placed in the render package
(legacy) to the compositor. The compositor is only using this
code even the blender internal renderer did not use the code at

3 years agoFix again 'auto override' system.
Bastien Montagne [Wed, 11 Apr 2018 13:14:20 +0000 (15:14 +0200)]
Fix again 'auto override' system.

Got lost in big undo refactor.

Note that this is probably (maybe) not how we want to have it in the
end, things like EditMode undo should probably not trigger this check?

3 years agoMerge branch 'master' into blender2.8
Sybren A. Stüvel [Wed, 11 Apr 2018 13:07:03 +0000 (15:07 +0200)]
Merge branch 'master' into blender2.8

3 years agoChanged assertion of '..' in file browser entries
Sybren A. Stüvel [Wed, 11 Apr 2018 13:06:42 +0000 (15:06 +0200)]
Changed assertion of '..' in file browser entries

The previous assert assumed '..' is always there, which isn't necessarily
true (for example when in the root of an Asset Engine repository).

The new code asserts that if '..' is present it should be the first entry
(rather than forcing the first entry to be '..').

3 years agofix T54549: Vector Transform node in wrong nodeclass
Philipp Oeser [Tue, 10 Apr 2018 07:50:25 +0000 (09:50 +0200)]
fix T54549: Vector Transform node in wrong nodeclass

the Vector Transform node was added to the "Vector" category in
but was using the "NODE_CLASS_CONVERTOR" internally (thus using e.g. the
'wrong' theme color)

thanx @dingto for review

Differential Revision:

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 11 Apr 2018 07:41:49 +0000 (09:41 +0200)]
Merge branch 'master' into blender2.8

3 years agoExplicitly specify which tag to use
Sybren A. Stüvel [Wed, 11 Apr 2018 07:34:21 +0000 (09:34 +0200)]
Explicitly specify which tag to use

3 years agoPose Mode: pass object to mode enter/exit
Campbell Barton [Wed, 11 Apr 2018 07:20:29 +0000 (09:20 +0200)]
Pose Mode: pass object to mode enter/exit

Also add lower level mode exit function

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 11 Apr 2018 07:02:32 +0000 (09:02 +0200)]
Merge branch 'master' into blender2.8

3 years agoCleanup: minor changes to pose-mode switching API
Campbell Barton [Wed, 11 Apr 2018 06:53:59 +0000 (08:53 +0200)]
Cleanup: minor changes to pose-mode switching API

Prepare for multi-object pose mode

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 10 Apr 2018 18:17:56 +0000 (20:17 +0200)]
Merge branch 'master' into blender2.8

3 years agoCleanup: remove unused flag
Campbell Barton [Tue, 10 Apr 2018 18:13:31 +0000 (20:13 +0200)]
Cleanup: remove unused flag

3 years agoDRW: Deferred Shader Compilation: Don't recreate ogl context.
Clément Foucault [Tue, 10 Apr 2018 17:30:13 +0000 (19:30 +0200)]
DRW: Deferred Shader Compilation: Don't recreate ogl context.

Only recreate ogl context if we cannot reuse the one of the previous thread.

Adding lots of shaders were recreating as many ogl context which was very

3 years agoFormatting
Sybren A. Stüvel [Tue, 10 Apr 2018 16:27:49 +0000 (18:27 +0200)]

3 years agoFix crashing of EEVEE/Clay engines when importing an Alembic file
Sybren A. Stüvel [Tue, 10 Apr 2018 16:12:25 +0000 (18:12 +0200)]
Fix crashing of EEVEE/Clay engines when importing an Alembic file

The dependency graph still isn't updated properly, so animated meshes don't
move in EEVEE/Clay, but at least Blender doesn't crash.

3 years agoUI: Fix some drawing order issues.
Clément Foucault [Tue, 10 Apr 2018 15:42:33 +0000 (17:42 +0200)]
UI: Fix some drawing order issues.

3 years agoWM: Fix a crash (assert) when creating a new window.
Clément Foucault [Tue, 10 Apr 2018 15:41:30 +0000 (17:41 +0200)]
WM: Fix a crash (assert) when creating a new window.

This happened when creating a window with the cursor over the timeline area.
I still don't know exactly what happened but for a reason batches were not
reset in this case.

3 years agoDRW: Hair: Use GWN_PRIM_LINE_STRIPS instead of LINES
Clément Foucault [Tue, 10 Apr 2018 15:38:33 +0000 (17:38 +0200)]

This means fewer indices to store. That being said, it seems to be a little
slower because of the restart index. But that's in the case we would be
vertex bound, which is mostly never going to happen.

3 years agoBLF: Style: Fix bad casts.
Clément Foucault [Tue, 10 Apr 2018 09:34:45 +0000 (11:34 +0200)]
BLF: Style: Fix bad casts.

This could have caused overflow issue.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 10 Apr 2018 14:15:25 +0000 (16:15 +0200)]
Merge branch 'master' into blender2.8

3 years agoFix transform nearest axis check
Campbell Barton [Tue, 10 Apr 2018 14:13:32 +0000 (16:13 +0200)]
Fix transform nearest axis check

Was mixing up global/local coords

3 years agoDraw Manager: Fix lazy compilation on certain hardware.
Germano [Tue, 10 Apr 2018 14:03:15 +0000 (11:03 -0300)]
Draw Manager: Fix lazy compilation on certain hardware.

Before, the drawing functions sometimes froze with `AMD Radeon HD 7570M`.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Tue, 10 Apr 2018 09:59:23 +0000 (11:59 +0200)]
Merge branch 'master' into blender2.8

3 years agoDepsgraph: Build relations for objects linked via pchan constraints
Sergey Sharybin [Tue, 10 Apr 2018 09:56:20 +0000 (11:56 +0200)]
Depsgraph: Build relations for objects linked via pchan constraints

This is similar to previous fix for missing ID nodes, just the original
fix missed this part of change because it looked like it is already

3 years agoBLF: Fix broken shadows on certain hardware.
Clément Foucault [Mon, 9 Apr 2018 16:43:27 +0000 (18:43 +0200)]
BLF: Fix broken shadows on certain hardware.

This was due to uninitialized texture space.

3 years agoFix T54423: Messages from RNA_property_editable_info() were not translatable.
Bastien Montagne [Tue, 10 Apr 2018 08:22:40 +0000 (10:22 +0200)]
Fix T54423: Messages from RNA_property_editable_info() were not translatable.

3 years agoDepsgraph: Flush debug prints
Sergey Sharybin [Tue, 10 Apr 2018 07:54:27 +0000 (09:54 +0200)]
Depsgraph: Flush debug prints

Makes it more reliable to see what was updating last when
crash happens.

3 years agoFix crash when no object is active
Mai Lavelle [Tue, 10 Apr 2018 01:59:54 +0000 (21:59 -0400)]
Fix crash when no object is active

Could happen when deleting the active object or opening an old file

3 years agoFix crash in graph editor id remapping
Mai Lavelle [Tue, 10 Apr 2018 01:39:10 +0000 (21:39 -0400)]
Fix crash in graph editor id remapping

Dopsheet pointer isn't set...?

3 years agoFix invalid context when refreshing popups
Julian Eisel [Mon, 9 Apr 2018 17:24:31 +0000 (19:24 +0200)]
Fix invalid context when refreshing popups

Patch D2759 by @raa, with minor edits by me.

3 years agoUI: Fix widget shader on certain compiler.
Germano [Mon, 9 Apr 2018 17:07:32 +0000 (14:07 -0300)]
UI: Fix widget shader on certain compiler.

There was a crash with Intel(R) HD Graphics 4000.

3 years agoCleanup: unused variable
Campbell Barton [Mon, 9 Apr 2018 17:01:31 +0000 (19:01 +0200)]
Cleanup: unused variable

3 years agoUI: Clamp scrollbar offset to lower view boundaries
Julian Eisel [Mon, 9 Apr 2018 16:52:03 +0000 (18:52 +0200)]
UI: Clamp scrollbar offset to lower view boundaries

Fixes the "emtpy scrolling" glitch by clamping the scroller offset to
the boundary of the view when it's smaller than the previous.

Fixes T45197. Patch by @januz.

Differential Revision: D1580

3 years agoGPU Shader: Cleanup: Remove unnecessary ";"
Germano [Mon, 9 Apr 2018 16:45:57 +0000 (13:45 -0300)]
GPU Shader: Cleanup: Remove unnecessary ";"