5 years agoMerge branch 'master' into blender2.8
Bastien Montagne [Sun, 4 Sep 2016 14:41:06 +0000 (16:41 +0200)]
Merge branch 'master' into blender2.8


5 years agoFix a few OpenCL compiler warnings.
Brecht Van Lommel [Sat, 3 Sep 2016 21:06:12 +0000 (23:06 +0200)]
Fix a few OpenCL compiler warnings.

5 years agofix: not initialised variable can crash blender (related to modifiers with cage editi...
Gaia Clary [Sat, 3 Sep 2016 16:00:40 +0000 (18:00 +0200)]
fix: not initialised variable can crash blender (related to modifiers with cage editing enabled)

5 years agoFix T48911: Fix T48847: Issues with some shortcuts on non-US latin keyboards, and...
Bastien Montagne [Sat, 3 Sep 2016 15:50:56 +0000 (17:50 +0200)]
Fix T48911: Fix T48847: Issues with some shortcuts on non-US latin keyboards, and with non-first layouts.

This is a tentative fix, own tests here seem to be working OK,
but don't think it's safe enough to be backported to 2.78.

5 years agoFix T49228: Separate by material, materials dissappear after reload.
Bastien Montagne [Sat, 3 Sep 2016 10:51:50 +0000 (12:51 +0200)]
Fix T49228: Separate by material, materials dissappear after reload.

Yet another mismatch where code would decrease usercount (of Material here) but never increase it again
when re-assigning the datablock...

5 years agoFix T49229: ID user decrement error when deleting group instance twice.
Bastien Montagne [Sat, 3 Sep 2016 09:47:17 +0000 (11:47 +0200)]
Fix T49229: ID user decrement error when deleting group instance twice.

Another great example of inconsistency in usercount handling - dupli_group was considered
as refcounted by readfile.c code (and hence by library_query.c one, which is based on it),
but not by editor/BKE_object code, which never increased group's usercount when creating
an instance of it etc.

To be backported to 2.78.

5 years agoPoint submodules to latest master branches
Sergey Sharybin [Fri, 2 Sep 2016 09:43:36 +0000 (11:43 +0200)]
Point submodules to latest master branches

We did not update them for really long time and the currently used
hashes are quite old and probably wouldn't work without manually
updating all submodules.

Not as if it's something totally crucial (we ask to update submodules
all the times and that's what `make update` does) but updating hashes
will save some cloning/checkout time.

5 years agoBlender 2.78 commit!
Sergey Sharybin [Fri, 2 Sep 2016 09:37:25 +0000 (11:37 +0200)]
Blender 2.78 commit!


- Version bump to 2.78
- Doxy file update
- New splash screen
- Wrapped some do_versions with version check
- Updated template to use proper font

After poking around a lot it seems Droid Sans was used during 2.7x series.
(or at least difference between using this font and comparing to previous
splash screens gives none visible difference).

5 years agoFix T49180: Cycles MIS Map for Animated Environment Texture Movie Doesn't Update...
Sergey Sharybin [Fri, 2 Sep 2016 07:58:41 +0000 (09:58 +0200)]
Fix T49180: Cycles MIS Map for Animated Environment Texture Movie Doesn't Update on Frame Change

Not really ideal fix at all, but we are at RC today, so better to play really safe.

5 years agoCycles: Silence strict compiler warning in release build
Sergey Sharybin [Fri, 2 Sep 2016 07:14:34 +0000 (09:14 +0200)]
Cycles: Silence strict compiler warning in release build

5 years agoFix T49222: Image Save settings are overridden by the File Save Screen ones.
Bastien Montagne [Fri, 2 Sep 2016 06:37:57 +0000 (08:37 +0200)]
Fix T49222: Image Save settings are overridden by the File Save Screen ones.

There were two inconsistencies in how 'save image' op initiated its settings:
* It would always use ImBuf->planes value.
* It would always use Image views settings.

Both of those settings should come from scene->r.im_format (as everything else)
when saving render/compo result...

5 years agoCycles microdisplacement: Improved automatic bump mapping
Mai Lavelle [Sun, 14 Aug 2016 15:44:25 +0000 (11:44 -0400)]
Cycles microdisplacement: Improved automatic bump mapping

Object coordinates can now be used in the displacement shader and will give
correct results, where as before bump mapping was calculated from the displace
positions and resulted in incorrect shading.

This works by evaluating the shader in two parts, first bump then surface, and
setting the shader state to match what it would be if the surface was
undisplaced for the bump shader evaluation. Currently only `P` is set as if
undisplaced, but other shader variables could be set as well, such as `I` or
`time`. Since these aren't set to anything meaningful for displacement I left
them out of this patch, we can decide what to do with them separately.

Reviewed By: brecht

Differential Revision:

5 years agoCycles: Store undisplaced coordinates for meshes when needed
Mai Lavelle [Sat, 13 Aug 2016 16:27:17 +0000 (12:27 -0400)]
Cycles: Store undisplaced coordinates for meshes when needed

Reviewed By: brecht

Differential Revision:

5 years agoCycles: remove duplicate shader storage
Mai Lavelle [Tue, 16 Aug 2016 23:42:08 +0000 (19:42 -0400)]
Cycles: remove duplicate shader storage

Storing multiple copies of a shader was needed when the displacement method was
a mesh option and could be different for each mesh. Now that its a shader option
this is unnecessary.

Reviewed By: brecht

Differential Revision:

5 years agoFix T49215
lazydodo [Thu, 1 Sep 2016 20:00:20 +0000 (14:00 -0600)]
Fix T49215

5 years agoFix T49224: Crash due to dangling value in 'Object.proxy_from' pointer.
Bastien Montagne [Thu, 1 Sep 2016 19:16:54 +0000 (21:16 +0200)]
Fix T49224: Crash due to dangling value in 'Object.proxy_from' pointer.

Why/how this may happen remains a mystery, so for now simply clearing this runtime-only
pointer on Object reading...

5 years agoCurve Fitting: correct initial handle sign
Campbell Barton [Thu, 1 Sep 2016 16:52:46 +0000 (02:52 +1000)]
Curve Fitting: correct initial handle sign

In practice the initial values are almost never used.

5 years agoMath Lib: avoid char > int conversion w/ line plot
Campbell Barton [Tue, 9 Aug 2016 06:57:26 +0000 (16:57 +1000)]
Math Lib: avoid char > int conversion w/ line plot

5 years agoFix crash calling wm.open_mainfile from menu with --debug-memory enabled
Julian Eisel [Thu, 1 Sep 2016 14:55:01 +0000 (16:55 +0200)]
Fix crash calling wm.open_mainfile from menu with --debug-memory enabled

Didn't do any bisecting, but guess it's caused rBb54e95a5c8dcb7 (2.74 is fine, 2.75 isn't).
I think this fix makes some other hacks redundant but need to check details (will do when we're back to bcon1 to avoid regressions).

5 years agoFix T49199: Combination of dialog + wm.open_mainfile causes crash
Julian Eisel [Thu, 1 Sep 2016 14:25:42 +0000 (16:25 +0200)]
Fix T49199: Combination of dialog + wm.open_mainfile causes crash

Issue was that the wm.open_mainfile OP caused all handlers to be removed and since rB45592291 cancelled (which is correct in general), the menu that triggered the OP should not be cancelled though.
Not sure if this is a nice fix or not, it's however the safest fix I found. A different fix would be to call UI_popup_block_close before WM_operator_call_ex (in dialog_exec_cb), but not sure how safe this is and want to further investigate if it makes other hacks/fixes redundant.

There's still a crash with --debug-memory that confused the heck out of me (since I always have --debug-memory enabled), but I'll commit fix for that separately.

5 years agoD2184 Stamp: Make drawing stamp labels optional.
Sybren A. Stüvel [Wed, 31 Aug 2016 16:51:32 +0000 (18:51 +0200)]
D2184 Stamp: Make drawing stamp labels optional.

When using metadata stamping, it's often handy to have "Camera" in
front of the camera name, "Marker" in front of the marker text, etc.,
but sometimes those get in the way. This patch allows an artist to
turn those labels on/off.

Reviewed by: sergey, mont29, venomgfx

5 years agopydoc: added missing 'compress' parameter to b.t.BlendDataLibraries.write
Sybren A. Stüvel [Thu, 1 Sep 2016 13:29:58 +0000 (15:29 +0200)]
pydoc: added missing 'compress' parameter to b.t.BlendDataLibraries.write

5 years agoOpenSubdiv: Fix missing object ORCO when Subsurf uses OpenSubdiv but disabled fore...
Sergey Sharybin [Thu, 1 Sep 2016 13:27:08 +0000 (15:27 +0200)]
OpenSubdiv: Fix missing object ORCO when Subsurf uses OpenSubdiv but disabled fore viewport

5 years agoCleanup: Reduce amount of misleading indentation
Sergey Sharybin [Thu, 1 Sep 2016 10:14:16 +0000 (12:14 +0200)]
Cleanup: Reduce amount of misleading indentation

Was polluting compile output too much.

5 years agoFix T49175: GLSL material crash with environment maps.
Brecht Van Lommel [Wed, 31 Aug 2016 00:17:11 +0000 (02:17 +0200)]
Fix T49175: GLSL material crash with environment maps.

5 years agoFix T49210: Issue with User Count on Images in some shader nodetrees when rendering...
Bastien Montagne [Wed, 31 Aug 2016 14:42:14 +0000 (16:42 +0200)]
Fix T49210: Issue with User Count on Images in some shader nodetrees when rendering previews

Our usercount handling was really... infuriating :|

Here, localization (i.e. 'shalow' copy that should not touch to usercounts) was incrementing
usercounts of the sole Textures IDs of lamps and worlds (on the weak and fallacious pretext
that related BKE_free... functions would decrement those counts)... Seriously...

So now, localize funcs do not increment any usercount anymore (since matching BKE_free... ones do
not decrement any either), and we do not call anymore that stupid unlink when freeing temp
localized copies of lamps/materials at end of preview generation.

Note that we probably still have a lot to do to cleanup that copy/localize code, pretty sure
we can dedpulicate a lot more.

5 years ago[Windows] Add support for code signing the final binaries.
lazydodo [Wed, 31 Aug 2016 12:26:05 +0000 (06:26 -0600)]
[Windows] Add support for code signing the final binaries.

The option is controlled with the WITH_WINDOWS_CODESIGN option and needs:

- Signtool must be found on the system, the standard windows sdk folders will be searched for it.
- The path to the pfx file (WINDOWS_CODESIGN_PFX)
- The password for the pfx , this can either be set by the WINDOWS_CODESIGN_PFX_PASSWORD variable but given that ends up in CMakeCache.txt (which might be undesirable) there is a backup option of setting the PFXPASSWORD environment variable on the system.

Reviewers: sergey, juicyfruit

Reviewed By: juicyfruit

Tags: #bf_blender, #platform:_windows

Differential Revision:

5 years agoCycles: don't crash if OSLRenderServices::osl_ts is unset
Mai Lavelle [Wed, 17 Aug 2016 12:42:10 +0000 (08:42 -0400)]
Cycles: don't crash if OSLRenderServices::osl_ts is unset

5 years agoCorrect render pass identifier usage in toolitps
Aaron Carlisle [Tue, 30 Aug 2016 20:05:27 +0000 (22:05 +0200)]
Correct render pass identifier usage in toolitps

5 years agoFix stupid mistake in previous commit 'cleanup' part.
Bastien Montagne [Tue, 30 Aug 2016 19:08:11 +0000 (21:08 +0200)]
Fix stupid mistake in previous commit 'cleanup' part.

Thanks to sergey for spotting it.

5 years agoFix bad usercount handling of materials in BKE_mesh_new_from_object().
Bastien Montagne [Tue, 30 Aug 2016 18:36:22 +0000 (20:36 +0200)]
Fix bad usercount handling of materials in BKE_mesh_new_from_object().

Curves and meshes (when no modifier application required) would increase their material usercount twice.

Not sure how/why it worked in previous code, but with new, stricter ID handling we need more
careful check of ID 'ownership' handling.

Reported by Sergey over IRC, thanks.

5 years agoCycles: Fix calculation of normals for subdivision meshes
Mai Lavelle [Tue, 30 Aug 2016 16:22:50 +0000 (12:22 -0400)]
Cycles: Fix calculation of normals for subdivision meshes

Not sure what happened here. Will have only effected Cycles standalone with
linear subdivision in use.

5 years agoFix type mismatch causing the buffer overflow in D810
Alexander Romanov [Tue, 30 Aug 2016 14:15:26 +0000 (17:15 +0300)]
Fix type mismatch causing the buffer overflow in D810

5 years agoFix T49201: Mesh with OpenSubdiv subsurf and a texture disappears in Material viewpor...
Sergey Sharybin [Tue, 30 Aug 2016 10:12:12 +0000 (12:12 +0200)]
Fix T49201: Mesh with OpenSubdiv subsurf and a texture disappears in Material viewport mode

5 years agoFix T49187: inconsistent Normal Map node output for backfacing polygons.
Alexander Gavrilov [Tue, 30 Aug 2016 09:48:59 +0000 (12:48 +0300)]
Fix T49187: inconsistent Normal Map node output for backfacing polygons.

There basically are two issues here: in smooth mode (and all non-tangent
normal map types) it doesn't invert the normal for backfacing polys;
on the other hand for flat shaded tangent type it is inverted too soon.

This fix does a brute force correction by checking the backfacing flag.

Reviewers: #cycles, brecht

Reviewed By: #cycles, brecht

Differential Revision:

5 years agoFix node editor to display node group names in the bottom left corner.
Alexander Gavrilov [Tue, 30 Aug 2016 09:32:31 +0000 (12:32 +0300)]
Fix node editor to display node group names in the bottom left corner.

Currently it pointlessly repeats the material name there, separated by
slashes. That obviously should display the nested group path instead.

5 years agoUsual i18n/UI messages fixes...
Bastien Montagne [Mon, 29 Aug 2016 19:08:33 +0000 (21:08 +0200)]
Usual i18n/UI messages fixes...

5 years agoFix T49158: Take II, some more untranslated UI messages...
Bastien Montagne [Mon, 29 Aug 2016 18:08:42 +0000 (20:08 +0200)]
Fix T49158: Take II, some more untranslated UI messages...

5 years agoCleanup: Indentation
Sergey Sharybin [Tue, 30 Aug 2016 08:29:53 +0000 (10:29 +0200)]
Cleanup: Indentation

5 years agoGPencil: Fix segment fault when undo
Antonioya [Mon, 29 Aug 2016 20:17:57 +0000 (22:17 +0200)]
GPencil: Fix segment fault when undo

When undo in UV/Image editor and press ESC key, there was segment fault
in Toolsettings because the reference was missing. Now the toolsetting
is loaded from context and not from local operator data.

5 years agoGPencil: Replace strcpy by BLI_strncpy
Antonioya [Mon, 29 Aug 2016 19:55:02 +0000 (21:55 +0200)]
GPencil: Replace strcpy by BLI_strncpy

5 years agoFix T49196
lazydodo [Mon, 29 Aug 2016 19:33:01 +0000 (13:33 -0600)]
Fix T49196

5 years agoCleanup/refactor spacefile's 'check dir' code.
Bastien Montagne [Mon, 29 Aug 2016 14:42:49 +0000 (16:42 +0200)]
Cleanup/refactor spacefile's 'check dir' code.

Was kinda split in two different places (one allowed to modify given path to always get a valid one,
the other only checking for validity of given path), not nice - and broken in asset branch case.

So rather extended a bit FileList->checkdirf to handle both cases (modifying and non-modifying path).

5 years agoFix for Bevel segments bug T49183; but doesn't fix whole report yet.
Howard Trickey [Mon, 29 Aug 2016 12:51:04 +0000 (08:51 -0400)]
Fix for Bevel segments bug T49183; but doesn't fix whole report yet.

5 years agoFix T49181: Movie clip animation lost when invoking action which reloads the clip
Sergey Sharybin [Mon, 29 Aug 2016 11:09:03 +0000 (13:09 +0200)]
Fix T49181: Movie clip animation lost when invoking action which reloads the clip

Was a bug since the very beginning of movie clip animation support
which was done on Feb 2012.

5 years agoMovie clip: Add missing animation data RNA declaration
Sergey Sharybin [Mon, 29 Aug 2016 11:03:50 +0000 (13:03 +0200)]
Movie clip: Add missing animation data RNA declaration

Was missing since the beginning of the days.

5 years agoFix T49172: mixdown sound op not exporting full length
Jörg Müller [Mon, 29 Aug 2016 08:54:32 +0000 (10:54 +0200)]
Fix T49172: mixdown sound op not exporting full length

Thanks Flavio Perez for the fix.

5 years agoFix compilation error caused by wrong array initialization
Sergey Sharybin [Mon, 29 Aug 2016 07:40:15 +0000 (09:40 +0200)]
Fix compilation error caused by wrong array initialization

We usually don't silence migh-be-uninitialized warning (which is the only
thing which could explain setting matrix to all zeroes) so we can catch
such errors when using tools like Valgrind.

I don't get warning here and the initializer was wrong, so removing it.

If it-s _REALLY_ needed please do a proper initialization.

5 years agoGPencil UI: Move the "quick toggles" for colors into their own row below the list
Joshua Leung [Mon, 29 Aug 2016 05:10:53 +0000 (17:10 +1200)]
GPencil UI: Move the "quick toggles" for colors into their own row below the list

Previously, they were in a column alongside the list, but because the lists were
rarely that long, there would always be a large gap left below the list.

5 years agoFix: Some settings (e.g. "volumetric strokes") from old files were not getting correc...
Joshua Leung [Mon, 29 Aug 2016 05:00:18 +0000 (17:00 +1200)]
Fix: Some settings (e.g. "volumetric strokes") from old files were not getting correctly ported to GPv2

5 years agoCode Cleanup: Fixes for some issues noticed during previous fix
Joshua Leung [Mon, 29 Aug 2016 04:39:27 +0000 (16:39 +1200)]
Code Cleanup: Fixes for some issues noticed during previous fix

5 years agoFix: GPencil Paste couldn't be used to paste strokes from one datablock to another
Joshua Leung [Mon, 29 Aug 2016 04:27:23 +0000 (16:27 +1200)]
Fix: GPencil Paste couldn't be used to paste strokes from one datablock to another

This was because the poll callback was checking for the presence of an active layer.
If you just create an empty datablock and try to paste, nothing would happen.

However, this check was kindof redundant anyway, as the operator would add a layer for
you if it didn't find one.

5 years agoSmall optimisation: Only calculate the inverse_diff_mat once per stroke instead of...
Joshua Leung [Mon, 29 Aug 2016 01:50:53 +0000 (13:50 +1200)]
Small optimisation: Only calculate the inverse_diff_mat once per stroke instead of for every point

(Later this calculation should be moved into the iteration macro instead, since
it only needs to be applied once per layer along with the diff_mat calculation)

5 years agoGPencil: "Reproject Strokes" operator
Joshua Leung [Sun, 28 Aug 2016 15:03:09 +0000 (03:03 +1200)]
GPencil: "Reproject Strokes" operator

A common problem encountered by artists was that they would accidentally move
the 3D cursor while drawing, causing their strokes to end up in weird places in
3D space when viewing the drawing again from other perspectives.

This operator helps fix up this mess by taking the selected strokes, projecting them
to screenspace, and then back to 3D space again. As a result, it should be as if
you had directly drawn the whole thing again, but from the current viewpoint instead.
Unfortunately, if there was originally some depth information present (i.e. you already
started reshaping the sketch in 3D), then that will get lost during this process.
But so far, my tests indicate that this seems to work well enough.

5 years agoGPencil: Include basic brush settings in "Grease Pencil Settings" panel for 2D Editors
Joshua Leung [Sun, 28 Aug 2016 14:04:06 +0000 (02:04 +1200)]
GPencil: Include basic brush settings in "Grease Pencil Settings" panel for 2D Editors

After the GP v2 changes, it wasn't possible to easily set the thickness of strokes
if you didn't know about the pie menus already. This just exposes the same set of

5 years agoCode Cleanup: Just some fixes for whitespace/typos that I noticed while working on...
Joshua Leung [Sun, 28 Aug 2016 13:37:14 +0000 (01:37 +1200)]
Code Cleanup: Just some fixes for whitespace/typos that I noticed while working on other stuff

5 years agoGPencil UI: Make "Tint" settings take full width of panel in 2D editors
Joshua Leung [Sun, 28 Aug 2016 13:36:13 +0000 (01:36 +1200)]
GPencil UI: Make "Tint" settings take full width of panel in 2D editors

Parenting options are not visible there (i.e. they're only for the 3D view),
so reserving space that isn't going to be used in those editors doesn't really
make much sense. Furthermore, those property regions are often quite narrow
too, so it doesn't help too much to keep these settings so narrow there.

5 years agoFix T49163: let Cycles only hide particles with missing motion data, not regular...
Brecht Van Lommel [Sun, 28 Aug 2016 19:20:06 +0000 (21:20 +0200)]
Fix T49163: let Cycles only hide particles with missing motion data, not regular objects.

5 years agoFix T47639: OpenGL render with smoke and fire incorrect when using
Kévin Dietrich [Sun, 28 Aug 2016 14:50:49 +0000 (16:50 +0200)]
Fix T47639: OpenGL render with smoke and fire incorrect when using

The issue is that we are rendering to a 0..1 clamped sRGB buffer with
unpremultiplied alpha, where the correct thing to do would be to render
to an unclamped linear premultiplied alpha buffer. Then we would just
make fire purely emissive without affecting the alpha channel at all,
but that doesn't work here.

So for now, draw fire and smoke separately using different shaders and
blend modes, like it used to before the smoke programs were rewritten
(see rB0372b642).

5 years agoFix T49167: Normals in wrong coordinate space when adaptive subdivision is used
Mai Lavelle [Sat, 27 Aug 2016 21:57:36 +0000 (17:57 -0400)]
Fix T49167: Normals in wrong coordinate space when adaptive subdivision is used

Meshes with Cycles subdivision were being transformed to world space leading to
normals to sometimes be calculated in that space, while they should be in
object space. Also caused dicing to happen at the wrong rate for scaled meshes.

5 years agoFix missing viewport update changing BI lamp shadow method
Julian Eisel [Sat, 27 Aug 2016 21:22:48 +0000 (23:22 +0200)]
Fix missing viewport update changing BI lamp shadow method

5 years agoOpenGL: use new uniform color functions
Mike Erwin [Sat, 27 Aug 2016 18:14:01 +0000 (14:14 -0400)]
OpenGL: use new uniform color functions

Color picker code motivated these convenience functions. looks much better now.

5 years agoGawain: convenience functions for uniform color
Mike Erwin [Sat, 27 Aug 2016 18:10:37 +0000 (14:10 -0400)]
Gawain: convenience functions for uniform color

Application code can pass ubytes, Gawain converts to float vec4 expected by shader.

For now the conversion is simple linear. We can add sRGB support later if needed.

5 years agoGPencil: Added entry for the "Select Strokes Using Active COlor" operator to the...
Joshua Leung [Sat, 27 Aug 2016 12:09:16 +0000 (00:09 +1200)]
GPencil: Added entry for the "Select Strokes Using Active COlor" operator to the Colors panel dropdown

It was already present in a few of the Pie Menus, but it was hard to find it,
so I've included it here too for good measure.

5 years agoCode Cleanup (Non-functional tweaks)
Joshua Leung [Fri, 26 Aug 2016 07:54:16 +0000 (19:54 +1200)]
Code Cleanup (Non-functional tweaks)

General reshuffling of defines and spacing/brace usage for consistency.
In particular:
* When defining types, don't mix pointers and non-pointer types on same line
  to avoid confusion
* As much as possible, have all defines at the top of each block instead of
  scattered haphazardly throughout the code

5 years agoGPencil: Cleanup change color operator
Antonioya [Sat, 27 Aug 2016 10:52:30 +0000 (12:52 +0200)]
GPencil: Cleanup change color operator

It is faster to assign the color to the pointer instead to force the new
lookup in drawing function.

5 years agoFix T49151: ParticleSettings' usercount not decremented when removing a psys from...
Bastien Montagne [Fri, 26 Aug 2016 18:29:40 +0000 (20:29 +0200)]
Fix T49151: ParticleSettings' usercount not decremented when removing a psys from an object.

5 years agoCycles: Make UI for subdivision more clear
Mai Lavelle [Wed, 24 Aug 2016 15:26:19 +0000 (11:26 -0400)]
Cycles: Make UI for subdivision more clear

Users have been getting a bit confused by the way things are worded/arranged in
the UI. This patch makes a few changes to the UI to make it more clear how to
use subdivision:

- make Subdivide UVs option inactive when adaptive subdivision is enabled as UV
  subdivision is currently unsupported
- add "px" to dicing rates in the Geometry Panel
- display the final dicing rate in the modifier
- reworded "Dicing Rate" in the modifier to "Dicing Scale" to make more clear
  that this is a multiplier for the scene dicing rate and added a note the the
  tooltip pointing the user to that setting in the Geometry Panel

Reviewed By: brecht

Differential Revision:

5 years agoUsual i18n/UI messages fixes...
Bastien Montagne [Fri, 26 Aug 2016 14:14:56 +0000 (16:14 +0200)]
Usual i18n/UI messages fixes...

5 years agoFix T49158: Untranslatable elements in UI.
Bastien Montagne [Fri, 26 Aug 2016 13:44:37 +0000 (15:44 +0200)]
Fix T49158: Untranslatable elements in UI.

We cannot skip 'collections clesse' when generating i18n messages from RNA, some of them
are visible and UI...

5 years agoFix linking issue with OpenEXR and Zlib.
Kévin Dietrich [Fri, 26 Aug 2016 12:28:39 +0000 (14:28 +0200)]
Fix linking issue with OpenEXR and Zlib.

Link Zlib after OpenEXR.

Differential Revision:

5 years agoFix over creation of cache files handles (leading to memory leaks).
Kévin Dietrich [Fri, 26 Aug 2016 12:25:03 +0000 (14:25 +0200)]
Fix over creation of cache files handles (leading to memory leaks).

Multiple threads could create multiple handles for the same cache file,
so protect handle creation with a mutex, to make sure only one is

5 years agoFix cache constraint not reference counting cache files.
Kévin Dietrich [Fri, 26 Aug 2016 12:21:59 +0000 (14:21 +0200)]
Fix cache constraint not reference counting cache files.

5 years agoFix T49168: crash when evaluating a cache constraint with a NULL cache
Kévin Dietrich [Fri, 26 Aug 2016 12:21:06 +0000 (14:21 +0200)]
Fix T49168: crash when evaluating a cache constraint with a NULL cache

5 years agoDepsgraph: Report number of objects to which update as flished
Sergey Sharybin [Fri, 26 Aug 2016 12:04:03 +0000 (14:04 +0200)]
Depsgraph: Report number of objects to which update as flished

This is an easiest way in the new depsgraph to get an idea how much objects
were handled on update.

5 years agoCleanup: Remove unused variable
Sergey Sharybin [Fri, 26 Aug 2016 12:01:03 +0000 (14:01 +0200)]
Cleanup: Remove unused variable

5 years agoDepsgraph: Report overall number of updates objects
Sergey Sharybin [Fri, 26 Aug 2016 12:00:15 +0000 (14:00 +0200)]
Depsgraph: Report overall number of updates objects

5 years agoCleanup: Use more meaningful names and move calculation into am if statement
Sergey Sharybin [Fri, 26 Aug 2016 11:57:46 +0000 (13:57 +0200)]
Cleanup: Use more meaningful names and move calculation into am if statement

5 years agoFix T49139: Memory leak in UV image editor related to Undo (and possibly Waveform...
Bastien Montagne [Fri, 26 Aug 2016 10:54:49 +0000 (12:54 +0200)]
Fix T49139: Memory leak in UV image editor related to Undo (and possibly Waveform and Vectorscope).

Assigning NULL to scopes' data pointer in 'non-UI readfile' context was terribly wrong for sure,
if we'd really want to reset them here we should freed them first.

But we can rather just ignore them here, those are purely runtime data managed by image editor,
no need to touch them here.

5 years agoOpenGL: draw grid floor & axes with new immediate mode
Mike Erwin [Fri, 26 Aug 2016 05:12:44 +0000 (01:12 -0400)]
OpenGL: draw grid floor & axes with new immediate mode

Significant rewrite with some improvements.

Maintain visual hierarchy of the grid:
- emphasized lines draw atop normal lines
- axes draw atop all lines (same as before)

Draw axes only once, not twice.

Return early if nothing to draw.

Single draw call for the default case (grid floor with X and Y axes).

Z axis needs a second draw call because it uses 3D coordinates.

Part of T49043

5 years agoFix: Use submenu for GPencil -> Select Grouped
Joshua Leung [Fri, 26 Aug 2016 04:38:31 +0000 (16:38 +1200)]
Fix: Use submenu for GPencil -> Select Grouped

5 years agoCode Cleanup
Joshua Leung [Fri, 26 Aug 2016 04:25:39 +0000 (16:25 +1200)]
Code Cleanup

* Stroke editing functions should be in gpencil_edit.c not gpencil_data.c
  (the latter is only for handling "CRUD" operations on things like
   layers, brushes, and palettes)
* Deduplicate the GP_STROKE_BUFFER_MAX define

5 years agoFix: Color of frame/selected object indicator in 3D View didn't indicate GPencil...
Joshua Leung [Fri, 26 Aug 2016 04:07:25 +0000 (16:07 +1200)]
Fix: Color of frame/selected object indicator in 3D View didn't indicate GPencil keyframes
when there was no active object

5 years agoGPencil: Select Grouped -> By Color
Joshua Leung [Fri, 26 Aug 2016 04:04:15 +0000 (16:04 +1200)]
GPencil: Select Grouped -> By Color

Added a way to select all the currently visible strokes that use the same
color as the selected stroke. This can be accessed via the Select Grouped (Shift-G)
operator as an alternative to selecting by layer.

5 years agoGPencil RNA: Set pressure and strength to 1.0 by default for new stroke points added...
Joshua Leung [Fri, 26 Aug 2016 03:59:38 +0000 (15:59 +1200)]
GPencil RNA: Set pressure and strength to 1.0 by default for new stroke points added via stroke.points.add()

This commit adds optional "pressure" and "strength" arguments to the
stroke.points.add() method. These are given default values of 1.0,
so that old scripts can be ported over to the new API with less effort
while reducing confusion about why auto generated strokes won't appear.

5 years agoOpenGL: draw empties without GLU
Mike Erwin [Thu, 25 Aug 2016 17:45:39 +0000 (13:45 -0400)]
OpenGL: draw empties without GLU

Also reduced number of matrix ops by generating final positions directly.

Also removed a display list (deprecated in modern GL).

Tried to reuse sinval & cosval tables but those values are skewed (last value repeats first value, middle values are squished to compensate). Went with sinf & cosf instead.

Part of T49042

5 years agoCycles: Remove some redundant checks
Mai Lavelle [Thu, 25 Aug 2016 14:45:48 +0000 (10:45 -0400)]
Cycles: Remove some redundant checks

5 years agoFixed little error in comment
Sybren A. Stüvel [Thu, 25 Aug 2016 14:22:26 +0000 (16:22 +0200)]
Fixed little error in comment

"amount" is for uncountable things, "number" is for countable things.

5 years agoDepsgraph: Prioritize evaluation of the new scheduled nodes
Sergey Sharybin [Thu, 25 Aug 2016 14:08:41 +0000 (16:08 +0200)]
Depsgraph: Prioritize evaluation of the new scheduled nodes

The idea here is again to finish objects evaluation as soon as possible.

Seems to be giving another 3% speedup in the barber scenes.

5 years agoDepsgraph: Merge some traversal back on
Sergey Sharybin [Thu, 25 Aug 2016 13:51:19 +0000 (15:51 +0200)]
Depsgraph: Merge some traversal back on

After previous commit there is no longer measurable difference
in speed and doing all stuff in one go is preferrable here anyway.

5 years agoDepsgrpah: Use deque for the flush queue
Sergey Sharybin [Thu, 25 Aug 2016 13:12:21 +0000 (15:12 +0200)]
Depsgrpah: Use deque for the flush queue

The idea of the change is to avoid queue growing too long
and handle all the operations as quick as possible.

Gives about 3% speedup on one of the barber shots here.

5 years agoFix T48788: Diffuse color in BI Textured Solid mode is not updating properly in Sculp...
Sergey Sharybin [Thu, 25 Aug 2016 11:48:23 +0000 (13:48 +0200)]
Fix T48788: Diffuse color in BI Textured Solid mode is not updating properly in Sculpting mode

Was caused by 6276726, so for the time being revert the optimization part of change.

5 years agoCycles: Cleanup, indentation
Sergey Sharybin [Thu, 25 Aug 2016 10:33:07 +0000 (12:33 +0200)]
Cycles: Cleanup, indentation

5 years agoCycles: Fix crash after recent subd fixes
Sergey Sharybin [Thu, 25 Aug 2016 09:31:36 +0000 (11:31 +0200)]
Cycles: Fix crash after recent subd fixes

Was happening when object only had curves (doe example, object with hair
particle system and emitter rendering disabled).

5 years agoCycles: Support proper visibility check in single volume intersection step for QBVH
Sergey Sharybin [Thu, 25 Aug 2016 09:13:35 +0000 (11:13 +0200)]
Cycles: Support proper visibility check in single volume intersection step for QBVH

5 years agoCycles: Implement proper visibility check in QBVH volume all intersection
Sergey Sharybin [Thu, 25 Aug 2016 09:09:06 +0000 (11:09 +0200)]
Cycles: Implement proper visibility check in QBVH volume all intersection

5 years agoFix T49078: Cycles tries to render volume from another render layer when camera is...
Sergey Sharybin [Thu, 25 Aug 2016 08:55:16 +0000 (10:55 +0200)]
Fix T49078: Cycles tries to render volume from another render layer when camera is in volume

5 years agoOpenGL: de-GLU the transform manipulator
Mike Erwin [Thu, 25 Aug 2016 03:47:45 +0000 (23:47 -0400)]
OpenGL: de-GLU the transform manipulator

Part of T49042

Also reduced the number of matrix ops.

TODO: replace glBegin/glVertex with new immediate mode

5 years agoFix T49112: Alembic unicode path issues on Windows.
Kévin Dietrich [Thu, 25 Aug 2016 03:19:41 +0000 (05:19 +0200)]
Fix T49112: Alembic unicode path issues on Windows.

Now we pass streams to Alembic instead of passing the filename string.
That way we can open the stream ourselves with the proper unicode

Note that this only applies to Ogawa archive, as HDF5 does not support

Differential Revision:

5 years agoWindows Packaging : Make package-name confirm to the windows[32/64] naming scheme...
lazydodo [Wed, 24 Aug 2016 15:37:42 +0000 (09:37 -0600)]
Windows Packaging : Make package-name confirm to the windows[32/64] naming scheme we use.