3 years agoMulti-Object-Editing: MESH_OT_vertices_smooth_laplacian
Habib Gahbiche [Fri, 31 Aug 2018 14:29:01 +0000 (11:29 -0300)]
Multi-Object-Editing: MESH_OT_vertices_smooth_laplacian

Since D3284 was inactive for a long time, I figured I could finish this.

This revision also gives warning when there are no selected faces or when
selected faces are invalid.

Changes from reviewer (Dalai Felinto) :
* Code style
* Fix checking for ngons (BM_ITER_MESH is a for loop, you need to break from it
before continuing the object iteration loop).

Differential Revision:

3 years agoCloth: Implement angular bending springs
Luca Rood [Mon, 5 Dec 2016 23:39:29 +0000 (21:39 -0200)]
Cloth: Implement angular bending springs

This implements angular bending springs for cloth simulation. This also
adds shearing springs for n-gons.

This angular spring implementation does not include Jacobian matrices,
as the springs can exist between polygons of different vertex counts,
rendering their relationships asymmetrical, and thus impossible to solve
with the current implementation. This means that the bending component
is solved explicitly. However, this is usually not a big problem, as
bending springs contribute less to instability than structural springs.

The the old linear bending model can still be used, and is the default for
existing files, to keep compatibility. However, the new angular bending
model is the default for any new simulation.

This commit makes small breaking changes, in that shearing springs are
now created on n-gons (also in linear bending mode), while n-gons were
previously ignored.

Reviewed By: brecht

Differential Revision:

3 years agoCloth: Componentize forces
Luca Rood [Tue, 28 Aug 2018 22:29:37 +0000 (00:29 +0200)]
Cloth: Componentize forces

This separates cloth stiffness and damping forces into tension,
compression, and shearing components, allowing more control over the
cloth behaviour.

This also adds a bending model selector (although the new bending model
itself is not implemented in this commit). This is because some of the
features implemented here only make sense within the new bending model,
while the old model is kept for compatibility.

This commit makes non-breaking changes, and thus maintains full
compatibility with existing simulations.

Reviewed By: brecht

Differential Revision:

3 years agoMulti-Objects: VIEW3D_OT_snap_selected_to_cursor by Habib Gahbiche
Dalai Felinto [Fri, 31 Aug 2018 13:54:24 +0000 (10:54 -0300)]
Multi-Objects: VIEW3D_OT_snap_selected_to_cursor by Habib Gahbiche

Objects in edit mode now behave as if they were joined.

Changes from reviewer (Dalai Felinto): code style (tabs, spaces, ...), missing MEM_freeN(objects);

3 years agoFix Text Boxes not drawing
Dalai Felinto [Fri, 31 Aug 2018 12:53:44 +0000 (09:53 -0300)]
Fix Text Boxes not drawing

I'm using a different shading group for the active text box and the others.
This way I can assign different colors to them.

The alternative would be to create a new `shgroup_dynlines_dashed_flat_color`,
but I find this overkill for such a simple use case.

3 years agoFix broken decorate buttong dragging after recent changes.
Brecht Van Lommel [Fri, 31 Aug 2018 11:35:07 +0000 (13:35 +0200)]
Fix broken decorate buttong dragging after recent changes.

3 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Fri, 31 Aug 2018 11:00:19 +0000 (13:00 +0200)]
Merge branch 'master' into blender2.8

3 years agoFix T56618: crash in release builds when GHOST asserts.
Brecht Van Lommel [Fri, 31 Aug 2018 10:32:12 +0000 (12:32 +0200)]
Fix T56618: crash in release builds when GHOST asserts.

WITH_ASSERT_ABORT was not disabled for release builds. In most cases asserts
are disabled in release builds, but not always.

This also changes the buildbot to use blender_release.cmake instead of
blender_full.cmake, the only effective difference should be WITH_ASSERT_ABORT.

3 years agoFix T56618: crash when typing certain characters on Linux.
Brecht Van Lommel [Fri, 31 Aug 2018 10:39:16 +0000 (12:39 +0200)]
Fix T56618: crash when typing certain characters on Linux.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Fri, 31 Aug 2018 10:30:19 +0000 (12:30 +0200)]
Merge branch 'master' into blender2.8

3 years agoCycles: Cleanup, use explicit comparison with NULL
Sergey Sharybin [Fri, 31 Aug 2018 10:28:12 +0000 (12:28 +0200)]
Cycles: Cleanup, use explicit comparison with NULL

3 years agoFix T56626: Cycles ambient occlusion only local : crash
Sergey Sharybin [Fri, 31 Aug 2018 10:14:36 +0000 (12:14 +0200)]
Fix T56626: Cycles ambient occlusion only local : crash

Was caused by missing NULL pointer check in BVH8.

3 years agoCleanup: Remove unused field
Antonioya [Fri, 31 Aug 2018 07:54:35 +0000 (09:54 +0200)]
Cleanup: Remove unused field

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 31 Aug 2018 04:53:34 +0000 (14:53 +1000)]
Merge branch 'master' into blender2.8

3 years agoPyAPI: replace checks for invalid input w/ assert
Campbell Barton [Fri, 31 Aug 2018 04:51:59 +0000 (14:51 +1000)]
PyAPI: replace checks for invalid input w/ assert

Was returning -1 as a bool argument,
in this case the caller needs to ensure non-null args.

3 years agoTool System: support tool description for tips
Campbell Barton [Fri, 31 Aug 2018 04:37:10 +0000 (14:37 +1000)]
Tool System: support tool description for tips

When the description isn't set, the operators is used instead.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 31 Aug 2018 04:25:42 +0000 (14:25 +1000)]
Merge branch 'master' into blender2.8

3 years agoC/Python API: Add PyC_RunString_AsIntPtr
Campbell Barton [Fri, 31 Aug 2018 04:21:32 +0000 (14:21 +1000)]
C/Python API: Add PyC_RunString_AsIntPtr

Utility to get an int or pointer from a Python expression.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 31 Aug 2018 03:40:10 +0000 (13:40 +1000)]
Merge branch 'master' into blender2.8

3 years agoCleanup: rename WM_keymap_find -> WM_keymap_ensure
Campbell Barton [Fri, 31 Aug 2018 03:36:14 +0000 (13:36 +1000)]
Cleanup: rename WM_keymap_find -> WM_keymap_ensure

3 years agoFix T56619: Transform crash w/ curve deform
Campbell Barton [Fri, 31 Aug 2018 01:09:26 +0000 (11:09 +1000)]
Fix T56619: Transform crash w/ curve deform

3 years agoCleanup: GPU_BATCH_DISCARD_ARRAY_SAFE (deduplicate existing code)
Dalai Felinto [Thu, 30 Aug 2018 20:47:36 +0000 (17:47 -0300)]
Cleanup: GPU_BATCH_DISCARD_ARRAY_SAFE (deduplicate existing code)

3 years agoFix Font object: text selection and cursor not updating
Dalai Felinto [Thu, 30 Aug 2018 20:35:33 +0000 (17:35 -0300)]
Fix Font object: text selection and cursor not updating

3 years agoSilence Grease Pencil warning
Dalai Felinto [Thu, 30 Aug 2018 20:48:53 +0000 (17:48 -0300)]
Silence Grease Pencil warning

3 years agoGP: Change icon identfier for shaderFx
Antonioya [Thu, 30 Aug 2018 17:22:24 +0000 (19:22 +0200)]
GP: Change icon identfier for shaderFx

This commit complements commit d2ad256326736c8a4c746163f9b27491d8a6e95a

3 years agoUI: remove context path from tool settings tab in properties editor.
Brecht Van Lommel [Thu, 30 Aug 2018 15:29:09 +0000 (17:29 +0200)]
UI: remove context path from tool settings tab in properties editor.

3 years agoUI: add dedicated icon IDs for decorators, tool settings, shaderfx, overlays.
Brecht Van Lommel [Fri, 24 Aug 2018 10:54:48 +0000 (12:54 +0200)]
UI: add dedicated icon IDs for decorators, tool settings, shaderfx, overlays.

The preset and decorator icons were updated to be monochrome and draw in the
same color as text. Other icons are unchanged, having them as separate icon IDs
prepares for an artist to make them.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Thu, 30 Aug 2018 15:40:06 +0000 (17:40 +0200)]
Merge branch 'master' into blender2.8

3 years agoCycles: Cleanup, whitespace after keyword
Sergey Sharybin [Thu, 30 Aug 2018 15:34:11 +0000 (17:34 +0200)]
Cycles: Cleanup, whitespace after keyword

3 years agoCleanup: Improve comments
Antonioya [Thu, 30 Aug 2018 14:44:52 +0000 (16:44 +0200)]
Cleanup: Improve comments

3 years agoGP: Fix unreported surface missing strokes
Antonioya [Thu, 30 Aug 2018 14:42:03 +0000 (16:42 +0200)]
GP: Fix unreported surface missing strokes

When drawing in surface mode if the stroke z-depth was not valid, the stroke was created, but it was not visible because location was something illogical.

Now, if the z-depth cannot be calculated, the stroke is calculated as it was done in other modes.

3 years agoWorkspaces: switch object mode when switching workspaces.
Brecht Van Lommel [Tue, 21 Aug 2018 13:27:29 +0000 (15:27 +0200)]
Workspaces: switch object mode when switching workspaces.

In the workspace properties a mode can now be configured that is
automatically enabled when switching to the workspace.

This is a test to validate how well it works. The weak point is
that if you don't have an appropriate object already select it will
not switch modes.

See T56475.

3 years agoFix fox strict flags: Avoid sign cast of strlen() result
Sergey Sharybin [Thu, 30 Aug 2018 12:14:18 +0000 (14:14 +0200)]
Fix fox strict flags: Avoid sign cast of strlen() result

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Thu, 30 Aug 2018 12:09:58 +0000 (14:09 +0200)]
Merge branch 'master' into blender2.8

3 years agoBuildbot: Correction to previous commit
Sergey Sharybin [Thu, 30 Aug 2018 12:09:14 +0000 (14:09 +0200)]
Buildbot: Correction to previous commit

3 years agoBuildbot: Attempt to fix glibc-2.19 compilation
Sergey Sharybin [Thu, 30 Aug 2018 12:07:48 +0000 (14:07 +0200)]
Buildbot: Attempt to fix glibc-2.19 compilation

It is likely to be retired, but for until then lets ensure it works.

3 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Thu, 30 Aug 2018 11:59:34 +0000 (13:59 +0200)]
Merge branch 'master' into blender2.8

3 years agoOutliner: support dragging multiple collections, same as objects.
Brecht Van Lommel [Wed, 29 Aug 2018 16:07:14 +0000 (18:07 +0200)]
Outliner: support dragging multiple collections, same as objects.

3 years agoGP: Undo previous Subdivide edit operator and reformat code
Antonioya [Thu, 30 Aug 2018 11:45:12 +0000 (13:45 +0200)]
GP:  Undo previous Subdivide edit operator  and reformat code

The previous commit reusing the subdivide modifier code was not taking in account the selected points, so the subdivide was wrong.

3 years agoCycles: Fix detection of CPU brand string on 32 bit platforms
Sergey Sharybin [Thu, 30 Aug 2018 10:50:36 +0000 (12:50 +0200)]
Cycles: Fix detection of CPU brand string on 32 bit platforms

The assembler template was backing up and restoring ebx, which is
fair enough. However, this did not prevent compiler for putting
result variables to ebx. This was causing data corruption.

In order to prevent this easiest solution is to list ebx in clobbers
for the assembly.

3 years agoUI: check prop-separate before adding black decorator
Campbell Barton [Thu, 30 Aug 2018 10:41:40 +0000 (20:41 +1000)]
UI: check prop-separate before adding black decorator

This caused the blank icon to be added to menus (ndof menu for eg).

3 years agoCleanup: warnings
Campbell Barton [Thu, 30 Aug 2018 10:47:46 +0000 (20:47 +1000)]
Cleanup: warnings

3 years agoFix T56612: crash in Cycles viewport render update, after recent changes.
Brecht Van Lommel [Thu, 30 Aug 2018 10:21:57 +0000 (12:21 +0200)]
Fix T56612: crash in Cycles viewport render update, after recent changes.

BVH8 refitting code had a bug.

3 years agoGP: New Armature modifier and tools to handle weights
Antonioya [Thu, 30 Aug 2018 10:22:55 +0000 (12:22 +0200)]
GP: New Armature modifier and tools to handle weights

This commit adds a new armature modifier for grease pencil. The deformations are done reusing the mesh deform routines.

There is also a new operator in weight paint mode to help the artist to generate weights base on armatures. This operator is required because 2D animation workflow is not equal to meshes when parent an object to armatures.

In the drawing engine has been added the option to handle the Fade object parameter used in armatures to see the strokes while move the bones.

When rename bones, all related data of grease pencil is renamed too. This not only affect new armature code, but also layers parented and hook modifiers.

Thanks @aligorith for his review and help.

3 years agoFix T56610: crash saving images with python API.
Brecht Van Lommel [Thu, 30 Aug 2018 10:19:27 +0000 (12:19 +0200)]
Fix T56610: crash saving images with python API.

3 years agoCleanup: license header formatting.
Brecht Van Lommel [Thu, 30 Aug 2018 10:09:47 +0000 (12:09 +0200)]
Cleanup: license header formatting.

3 years agoCleanup: Remove line introduced by error in previous commit
Antonioya [Thu, 30 Aug 2018 09:18:04 +0000 (11:18 +0200)]
Cleanup: Remove line introduced by error in previous commit

3 years agoGP: Add weights while drawing strokes
Antonioya [Thu, 30 Aug 2018 09:11:10 +0000 (11:11 +0200)]
GP: Add weights while drawing strokes

Now it's possible to add the weight of the current selected vertex group to any new stroke created.

This is very handy when add drawings after the weight paint was done and it will be required with Armatures.

3 years agoGP: Improve Subdivide and Simplify
Antonioya [Thu, 30 Aug 2018 09:06:44 +0000 (11:06 +0200)]
GP: Improve Subdivide and Simplify

Now the weights are managed in the operators.

The subdivide operator and modifier code have been replaced with a shared function.

Some cleanup also.

3 years agoBuild environment: Tweak to harvasting script
Sergey Sharybin [Thu, 30 Aug 2018 08:21:51 +0000 (10:21 +0200)]
Build environment: Tweak to harvasting script

The idea is to make find_package() to succeed without any
extra tips given. For this, we need header files to be

3 years agoUI: fix glitch redrawing after redo panel collapse
Campbell Barton [Thu, 30 Aug 2018 08:58:18 +0000 (18:58 +1000)]
UI: fix glitch redrawing after redo panel collapse

3 years agoGP: Add small offset to stroke over surface.
Antonioya [Thu, 30 Aug 2018 08:17:29 +0000 (10:17 +0200)]
GP: Add small offset to stroke over surface.

This small offset helps to keep the stroke over the surface and avoid the stoke is "inside" the face of the surface.

We could add this as a parameter in the UI, but after doing a lot of test, the valid values are very limited and don't worth the change, so a hardcoded value works fine.

3 years agoBuildbot: Get rid of OpenJPEG 2 hack
Sergey Sharybin [Thu, 30 Aug 2018 08:00:23 +0000 (10:00 +0200)]
Buildbot: Get rid of OpenJPEG 2 hack

Also clarified some options and decisions.

3 years agoCMake: Automatically detect OpenJPEG 2 libraries
Sergey Sharybin [Thu, 30 Aug 2018 07:55:40 +0000 (09:55 +0200)]
CMake: Automatically detect OpenJPEG 2 libraries

There is chance that on a system with both versions installed this
*might* cause some issues. Such system will be pain to support out
of the box anyway.

This change allows to use precompiled libraries without extra
modifications in the config.

3 years ago3D View: option to always show center in face mode
Campbell Barton [Thu, 30 Aug 2018 06:21:03 +0000 (16:21 +1000)]
3D View: option to always show center in face mode

This matches 2.7x behavior

3 years ago3D View: use thicker edges when in edge-mode
Campbell Barton [Thu, 30 Aug 2018 05:45:58 +0000 (15:45 +1000)]
3D View: use thicker edges when in edge-mode

Without this there is no visual differentiation between face/edge mode.

3 years ago3D View: scale edit-mesh drawing by pixel size
Campbell Barton [Thu, 30 Aug 2018 04:28:50 +0000 (14:28 +1000)]
3D View: scale edit-mesh drawing by pixel size

3 years agoCleanup: inline icon conditional
Campbell Barton [Thu, 30 Aug 2018 03:47:27 +0000 (13:47 +1000)]
Cleanup: inline icon conditional

3 years agoUI: show workspace panel last & use a parent panel
Campbell Barton [Thu, 30 Aug 2018 03:30:16 +0000 (13:30 +1000)]
UI: show workspace panel last & use a parent panel

3 years agoUI: move workspace panels to tool settings
Campbell Barton [Thu, 30 Aug 2018 03:06:03 +0000 (13:06 +1000)]
UI: move workspace panels to tool settings

While this isn't the most logical place, there are very few workspace
options and they don't need to be in such a prominent location.

3 years agoTransform: fix redundant gizmo constraint axis
Campbell Barton [Wed, 29 Aug 2018 23:15:19 +0000 (09:15 +1000)]
Transform: fix redundant gizmo constraint axis

Setting the constraint caused the redo to show
redundant XYZ constraints UI.

3 years agoUI: use property split for mesh options
Campbell Barton [Wed, 29 Aug 2018 23:05:48 +0000 (09:05 +1000)]
UI: use property split for mesh options

3 years agoUI: add active tool panel to tool settings
Campbell Barton [Wed, 29 Aug 2018 22:55:34 +0000 (08:55 +1000)]
UI: add active tool panel to tool settings

3 years agoMSVC: Set the warning C4189 from level 4 to level 3
mano-wii [Wed, 29 Aug 2018 16:08:00 +0000 (13:08 -0300)]
MSVC: Set the warning C4189 from level 4 to level 3

This is a useful warning and there is an equivalent used in `GNUC` and `clang` compilers.

Reviewed on IRC by @brecht and @LazyDodo

3 years agoFix Freestyle build error after recent merge.
Brecht Van Lommel [Wed, 29 Aug 2018 16:53:15 +0000 (18:53 +0200)]
Fix Freestyle build error after recent merge.

3 years agoCorrection to previous commit
Sergey Sharybin [Wed, 29 Aug 2018 16:37:49 +0000 (18:37 +0200)]
Correction to previous commit

Should not include ABI.

3 years agoBuildbot: Tweak configuration to actually ve successful in chroot
Sergey Sharybin [Wed, 29 Aug 2018 16:32:27 +0000 (18:32 +0200)]
Buildbot: Tweak configuration to actually ve successful in chroot

3 years agoBuildbot: Make configuration to pass config state
Sergey Sharybin [Wed, 29 Aug 2018 15:56:17 +0000 (17:56 +0200)]
Buildbot: Make configuration to pass config state

- Foe some reason CMake's platform and processor are not intialized there.

- Need to set variables in cache, otherwise they are not visible in the
  actual CMake files.

3 years agoCleanup: add file doxy comments
Campbell Barton [Wed, 29 Aug 2018 15:56:08 +0000 (01:56 +1000)]
Cleanup: add file doxy comments

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 29 Aug 2018 15:36:52 +0000 (01:36 +1000)]
Merge branch 'master' into blender2.8

3 years agoCleanup: indentation
Campbell Barton [Wed, 29 Aug 2018 15:31:20 +0000 (01:31 +1000)]
Cleanup: indentation

3 years agoCleanup: use simple early exit for common case
Campbell Barton [Wed, 29 Aug 2018 15:19:44 +0000 (01:19 +1000)]
Cleanup: use simple early exit for common case

Caused MSVC warning, may as well do simple check.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 29 Aug 2018 15:05:46 +0000 (01:05 +1000)]
Merge branch 'master' into blender2.8

3 years agoCleanup: trailing space
Campbell Barton [Wed, 29 Aug 2018 15:05:13 +0000 (01:05 +1000)]
Cleanup: trailing space

3 years agoCleanup: trailing space
Campbell Barton [Wed, 29 Aug 2018 15:02:44 +0000 (01:02 +1000)]
Cleanup: trailing space

3 years agoCleanup: correct header guard
Campbell Barton [Wed, 29 Aug 2018 15:02:26 +0000 (01:02 +1000)]
Cleanup: correct header guard

3 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Wed, 29 Aug 2018 14:42:32 +0000 (16:42 +0200)]
Merge branch 'master' into blender2.8

3 years agoFix Cycles CUDA build after recent changes.
Brecht Van Lommel [Wed, 29 Aug 2018 14:35:21 +0000 (16:35 +0200)]
Fix Cycles CUDA build after recent changes.

3 years agoCleanup: remove unused build environment patches.
Brecht Van Lommel [Wed, 29 Aug 2018 12:33:42 +0000 (14:33 +0200)]
Cleanup: remove unused build environment patches.

3 years agoCleanup: consistent includes.
Brecht Van Lommel [Wed, 29 Aug 2018 11:54:26 +0000 (13:54 +0200)]
Cleanup: consistent includes.

3 years agoBuildbot: Some inital work to support newer chroot environment
Sergey Sharybin [Wed, 29 Aug 2018 14:29:25 +0000 (16:29 +0200)]
Buildbot: Some inital work to support newer chroot environment

3 years agoPython / Cleanup: rename INFO_MT to TOPBAR_MT/VIEW3D_MT to reflect actual location.
Brecht Van Lommel [Wed, 29 Aug 2018 13:02:21 +0000 (15:02 +0200)]
Python / Cleanup: rename INFO_MT to TOPBAR_MT/VIEW3D_MT to reflect actual location.

3 years agoCleanup: rename files from group to collection to match contents.
Brecht Van Lommel [Wed, 29 Aug 2018 13:32:50 +0000 (15:32 +0200)]
Cleanup: rename files from group to collection to match contents.

3 years agoCMake: Allow specifying custom LIBDIR on Unix
Sergey Sharybin [Wed, 29 Aug 2018 14:15:54 +0000 (16:15 +0200)]
CMake: Allow specifying custom LIBDIR on Unix

Works similar to how maxOS deals with this.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Wed, 29 Aug 2018 14:09:59 +0000 (16:09 +0200)]
Merge branch 'master' into blender2.8

3 years agoTool System: hide paint options for non brush tools
Campbell Barton [Wed, 29 Aug 2018 13:58:44 +0000 (23:58 +1000)]
Tool System: hide paint options for non brush tools

3 years agoCMake: Comply with include path reported by FindOpenGL.cmake
Sergey Sharybin [Wed, 29 Aug 2018 13:08:28 +0000 (15:08 +0200)]
CMake: Comply with include path reported by FindOpenGL.cmake

The script clearly states:

  This makes the presumption that you are include al.h like
  #include "al.h"
  and not
  #include <AL/al.h>
  The reason for this is that the latter is not entirely portable.
  Windows/Creative Labs does not by default put their headers in AL/ and
  OS X uses the convention <OpenAL/al.h>.

This commit makes default precompiled OpenAL to be properly detected
and also removes hack on MacOS which was finding the OpenAL package but
then was overwriting include directory.

Note, that new audaspace in 2.8 is using expected #include <al.h>.

3 years agoCMake: Make sure zlib folder comes first for precompiled Linux libraries
Sergey Sharybin [Wed, 29 Aug 2018 13:05:03 +0000 (15:05 +0200)]
CMake: Make sure zlib folder comes first for precompiled Linux libraries

Without this find_package(ZLIB) will find ZLib from OpenCollada folder,
which has older ABI and is not what was used to link PNG against.

3 years agoCycles: Add BVH8 and packeted triangle intersection
Sergey Sharybin [Wed, 14 Feb 2018 10:23:30 +0000 (11:23 +0100)]
Cycles: Add BVH8 and packeted triangle intersection

This is an initial implementation of BVH8 optimization structure
and packated triangle intersection. The aim is to get faster ray
to scene intersection checks.

    Scene                BVH4      BVH8
barbershop_interior    10:24.94   10:10.74
bmw27                  02:41.25   02:38.83
classroom              08:16.49   07:56.15
fishy_cat              04:24.56   04:17.29
koro                   06:03.06   06:01.45
pavillon_barcelona     09:21.26   09:02.98
victor                 23:39.65   22:53.71

As memory goes, peak usage raises by about 4.7% in a complex

Note that BVH8 is disabled when using OSL, this is because OSL
kernel does not get per-microarchitecture optimizations and
hence always considers BVH3 is used.

Original BVH8 patch from Anton Gavrikov.
Batched triangles intersection from Victoria Zhislina.
Extra work and tests and fixes from Maxym Dmytrychenko.

3 years agoTool System: tool to extrude along normals
Campbell Barton [Wed, 29 Aug 2018 12:59:49 +0000 (22:59 +1000)]
Tool System: tool to extrude along normals

3 years agoBuild environment: Fix compilation of boost on Linux 32bit
Sergey Sharybin [Wed, 29 Aug 2018 12:11:32 +0000 (14:11 +0200)]
Build environment: Fix compilation of boost on Linux 32bit

3 years agoMissed last commit
Campbell Barton [Wed, 29 Aug 2018 08:43:32 +0000 (18:43 +1000)]
Missed last commit

3 years agoCleanup: rename manipulator -> gizmo
Campbell Barton [Wed, 29 Aug 2018 08:40:32 +0000 (18:40 +1000)]
Cleanup: rename manipulator -> gizmo

3 years agoIcons: update to r62135
William Reynish [Wed, 29 Aug 2018 08:31:09 +0000 (18:31 +1000)]
Icons: update to r62135

- Added icon for To Sphere
- Added icon for Shear
- Added icons for adding mesh objects
- Added icon for Curve Draw
- Add Curve Extrude to Cursor icon
- Tweak Curve Draw icon
- Simplified Hair Cut icon. Was hard to read
- Tweaks to Hair Puff and Smooth icons
- Added icon for Extrude Along Normals
- Updated Extrude Individual icon to become clearer and more consistent
  with "Extrude Along Normals". Now it's easy to see the difference.
- Rip Edge and Rip Region icon tweaks

Note, many icons are regenerated in this commit which
weren't intended to be changed, in some cases this looks to be caused
by material color. Generating again doesn't modify so it
shouldn't be changing every time in future.

3 years agoTool System: only show select tool w/ paint mask
Campbell Barton [Wed, 29 Aug 2018 06:21:48 +0000 (16:21 +1000)]
Tool System: only show select tool w/ paint mask

3 years agoUI: disable brush popover in particle mode
Campbell Barton [Wed, 29 Aug 2018 05:47:06 +0000 (15:47 +1000)]
UI: disable brush popover in particle mode

This currently duplicates the same settings.

3 years agoUI: refactor particle panel/topbar logic
Campbell Barton [Wed, 29 Aug 2018 05:45:51 +0000 (15:45 +1000)]
UI: refactor particle panel/topbar logic

Similar logic for panel & topbar, use same checks.

3 years agoUI: use icons for sculpt mode toolbar
Campbell Barton [Wed, 29 Aug 2018 05:28:56 +0000 (15:28 +1000)]
UI: use icons for sculpt mode toolbar

Re-order some enums so plus is always first.

3 years agoTool System: add curve extrude
Campbell Barton [Wed, 29 Aug 2018 05:14:41 +0000 (15:14 +1000)]
Tool System: add curve extrude

3 years agoTool System: show radius for circle select
Campbell Barton [Wed, 29 Aug 2018 05:03:50 +0000 (15:03 +1000)]
Tool System: show radius for circle select