Campbell Barton [Thu, 8 Feb 2018 15:31:09 +0000 (02:31 +1100)]
Fix mixed weight-paint & pose mode
Sergey Sharybin [Thu, 8 Feb 2018 15:27:28 +0000 (16:27 +0100)]
Merge branch 'master' into blender2.8
Sergey Sharybin [Wed, 7 Feb 2018 13:44:59 +0000 (14:44 +0100)]
Remove Carve boolean
We've got quite comprehensive BMesh based implementation, which is way easier
for maintenance than abandoned Carve library.
After all the time BMesh implementation was working on the same level of
limitations about manifold meshes and touching edges than Carve. Is better
to focus on maintaining one boolean implementation now.
Reviewers: campbellbarton
Reviewed By: campbellbarton
Differential Revision: https://developer.blender.org/D3050
Sergey Sharybin [Thu, 8 Feb 2018 14:14:22 +0000 (15:14 +0100)]
Merge branch 'master' into blender2.8
Sergey Sharybin [Thu, 8 Feb 2018 14:12:38 +0000 (15:12 +0100)]
Depsgraph: Fix missing camera animation after visibility changes
Synchronize code in on_visible_update with depsgraph building.
Need to update all cameras, since they might be hooked up to marker.
Campbell Barton [Thu, 8 Feb 2018 12:48:36 +0000 (23:48 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Thu, 8 Feb 2018 12:38:17 +0000 (23:38 +1100)]
Mesh: concave quad support
Previously quads always split along first-third vertices.
This is still the default, to avoid flickering with animated deformation
however concave quads that would create two opposing triangles now use
second-fourth split.
Reported as T53999 although this issue has been known limitation
for a long time.
Sergey Sharybin [Thu, 8 Feb 2018 11:35:42 +0000 (12:35 +0100)]
Dopesheet: Synchronize selection on bones when selecting everything
This is also how box selection and mouse selection is working.
Requested by Hjalti, reviewed by Joshua. Thanks!
Campbell Barton [Thu, 8 Feb 2018 10:58:45 +0000 (21:58 +1100)]
Fix error in object-mode removal
Wasn't setting transform context
Campbell Barton [Thu, 8 Feb 2018 10:43:37 +0000 (21:43 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Thu, 8 Feb 2018 10:27:08 +0000 (21:27 +1100)]
Fail gracefully when editmode data doesn't exist
Sync changes from 2.8
Campbell Barton [Thu, 8 Feb 2018 10:14:26 +0000 (21:14 +1100)]
Object Mode: move to workspace struct
- Read-only access can often use EvaluationContext.object_mode
- Write access to go to WorkSpace.object_mode.
- Some TODO's remain (marked as "TODO/OBMODE")
- Add-ons will need updating
(context.active_object.mode -> context.workspace.object_mode)
- There will be small/medium issues that still need resolving
this does work on a basic level though.
See D3037
Dalai Felinto [Thu, 8 Feb 2018 10:03:35 +0000 (08:03 -0200)]
Fixing builds for 2.8 - outliner typo
Campbell Barton [Thu, 8 Feb 2018 04:57:14 +0000 (15:57 +1100)]
Linux: Add appdata.xml file for packagers
D3025 by @januz
Joshua Leung [Thu, 8 Feb 2018 03:15:49 +0000 (16:15 +1300)]
Fix: Data-Blocks view in Outliner no longer displayed property values, making it semi-useless
Partially revert
efe1af3d11a930b539718cc566049f07316427ff
The offending commit over-zealously removed the datablocks viewer case
as well, when only the condition needed to be modified.
Clément Foucault [Wed, 7 Feb 2018 23:40:50 +0000 (00:40 +0100)]
DRW: Fix crash caused by fixing the leak (badly).
Previous commit was
af425f3f7a08c09f7fbc7076b364fac75163b296
Bastien Montagne [Wed, 7 Feb 2018 21:27:08 +0000 (22:27 +0100)]
Merge branch 'master' into blender2.8
Bastien Montagne [Wed, 7 Feb 2018 21:26:11 +0000 (22:26 +0100)]
Forgot to return actual value in previous own commit.
Sorry about the noise...
Bastien Montagne [Wed, 7 Feb 2018 21:19:11 +0000 (22:19 +0100)]
Merge branch 'master' into blender2.8
Conflicts:
source/blender/windowmanager/intern/wm_files_link.c
Bastien Montagne [Wed, 7 Feb 2018 21:09:44 +0000 (22:09 +0100)]
Library linking code: proper early out in case there is nothing to link.
Bastien Montagne [Wed, 7 Feb 2018 20:54:52 +0000 (21:54 +0100)]
Merge branch 'master' into blender2.8
Conflicts:
source/blender/windowmanager/intern/wm_files_link.c
Bastien Montagne [Wed, 7 Feb 2018 20:52:38 +0000 (21:52 +0100)]
Library reload code: add early out in case there is nothing to reload.
Clément Foucault [Wed, 7 Feb 2018 18:15:37 +0000 (19:15 +0100)]
DRW: Fix memory leak with dupli objects.
This was caused by dupli's ObjectEngineData that were not free.
This allocates the data using the instance data manager (no alloc/free between frames). Though the data should be treated as not persistent in this case.
Clément Foucault [Wed, 7 Feb 2018 17:12:35 +0000 (18:12 +0100)]
DRW: Opti: Use less bytes in DRWUniform.
Clément Foucault [Wed, 7 Feb 2018 17:10:32 +0000 (18:10 +0100)]
Clay: Small refactoring of matcap_colors and put ubos into sldata.
Ubos needed to be free correctly.
Also the matcap colors are statics and does not need to be uploaded each drawcall.
Brecht Van Lommel [Wed, 7 Feb 2018 16:17:24 +0000 (17:17 +0100)]
Merge branch 'master' into blender2.8
Sergey Sharybin [Wed, 7 Feb 2018 13:15:24 +0000 (14:15 +0100)]
Depsgraph: More fixes for shape keys
Made shape keys to work for meshes. Also added missing code for curves.
Curves and lattices will not have shape keys visible, since modifiers support
is still to be done for them.
Sergey Sharybin [Wed, 7 Feb 2018 11:26:30 +0000 (12:26 +0100)]
Depsgraph: Fix crash with shape keys and lattices
Only crash is fixed, still need to do something about missing recalc
or something like that.
Brecht Van Lommel [Tue, 6 Feb 2018 13:54:18 +0000 (14:54 +0100)]
Update CUEW to latest version
This brings separate initialization for libcuda and libnvrtc, which
fixes Cycles nvrtc compilation not working on build machines without
CUDA hardware available.
Differential Revision: https://developer.blender.org/D3045
Sergey Sharybin [Wed, 7 Feb 2018 10:18:54 +0000 (11:18 +0100)]
Depsgraph: Fix crash when visible update is called after tagging for updates
It is possible to have non-NULL scene in graph which was never built yet,
this happens when ID is tagged for update for non-built graph.
Was causing crash opening deg_anim_pose_bones.
Reported by Mai in IRC, thanks!
Sergey Sharybin [Wed, 7 Feb 2018 09:57:54 +0000 (10:57 +0100)]
Depsgraph: Fix node sockets as driver variables
Fixes empty not moving int deg_anim_material_driving_empty.
Reported by Mai in IRC, thanks!
Campbell Barton [Wed, 7 Feb 2018 07:33:19 +0000 (18:33 +1100)]
Fix error with Main.eval_ctx.object_mode being unset
This made vertex/weight/sculpt crash.
Add BKE_workspace_update_object_mode which sets the object mode from the
workspace.
We may want to re-visit exactly when this is set, for now call within
wm_event_do_refresh_wm_and_depsgraph.
Mai Lavelle [Tue, 6 Feb 2018 10:17:19 +0000 (05:17 -0500)]
Depsgraph: Add missing relationship between object transform and point cache reset
This fixes an issue where old cache data was used after an object has been moved.
Particles were coming from very wrong positions. Reproduction case is to move an
object while animation is running and then let the animation loop back and
play again.
Differential Revision: https://developer.blender.org/D3044
Campbell Barton [Wed, 7 Feb 2018 05:36:12 +0000 (16:36 +1100)]
Move eval_ctx after object mode changes
Campbell Barton [Wed, 7 Feb 2018 04:59:16 +0000 (15:59 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Wed, 7 Feb 2018 04:51:23 +0000 (15:51 +1100)]
Correct header guard in last commit
Campbell Barton [Wed, 7 Feb 2018 04:47:54 +0000 (15:47 +1100)]
Cleanup: Python context access
Avoid access from bpy when it's already declared.
Clément Foucault [Wed, 7 Feb 2018 04:30:26 +0000 (05:30 +0100)]
Eevee: Fix SSR & AO on Vega + Mesa.
Really strange bug. Maybe gl_FragDepth is broken on this implementation.
Clément Foucault [Wed, 7 Feb 2018 04:26:56 +0000 (05:26 +0100)]
GPU: Remove Mesa + Vega hack.
This is not needed anymore with linux 4.15 + Mesa 17.3.3.
Campbell Barton [Wed, 7 Feb 2018 00:18:50 +0000 (11:18 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Wed, 7 Feb 2018 00:14:08 +0000 (11:14 +1100)]
Cleanup: add _types.h suffix to DNA headers
Dalai Felinto [Tue, 6 Feb 2018 20:27:26 +0000 (18:27 -0200)]
Outliner: Add object(s) to new collection
Suggested by Pablo Vazquez (venomgfx).
The idea here is that it should be easy to work in the outliner by picking a
bunch of objects and adding them to a new collection.
Where is the new collection? In the same level as the "outliner active" object.
Note, since the outliner has no pure concept of an active object, I'm using
the highlight tag for this. Hopefully it works fine.
It should work in "Collections", "View Layer", and "Groups".
Only when collections are not filtered out.
Dalai Felinto [Tue, 6 Feb 2018 20:37:37 +0000 (18:37 -0200)]
Fix poll for OUTLINER_OT_object_remove_from_collection
Outliner groups mode support no filtering.
Dalai Felinto [Tue, 6 Feb 2018 15:28:37 +0000 (13:28 -0200)]
Rename OUTLINER_OT_collection_object_remove > _object_remove_from_collection
Better make it clear it is different than OUTLINER_OT_collection_objects_remove.
Dalai Felinto [Tue, 6 Feb 2018 15:19:52 +0000 (13:19 -0200)]
Outliner: Operator to delete outliner selected elements from collection
Suggested by Pablo Vazquez (venomgfx).
Dalai Felinto [Tue, 6 Feb 2018 15:17:43 +0000 (13:17 -0200)]
Fix crash when no active object
To reproduce the crash: delete the active object of the scene.
This bug was introduced on
e9c40b7339be9.
Sergey Sharybin [Tue, 6 Feb 2018 13:47:02 +0000 (14:47 +0100)]
Depsgraph: Correction to previous particle fix
The reason it appeared working was due to left-over debug code to force
time dependency.
Real fix seems to include force tagging objects used by duplication,
similar to what we do for some other modifiers already.
Bastien Montagne [Tue, 6 Feb 2018 13:35:36 +0000 (14:35 +0100)]
Fix T54005: Broken IDProp copying from RNA code.
When destination IDProp did not exist, new code (related ot static
overrides) would not do nothing...
IDProps and RNA are really not easy to tame, thinking more and more we
should totally bypass RNA and directly use (add) IDP code to handle
comparison and diff creation/application of IDProps.
But for now, this bandage should to the trick.
Campbell Barton [Tue, 6 Feb 2018 12:36:12 +0000 (23:36 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Tue, 6 Feb 2018 12:34:58 +0000 (23:34 +1100)]
Use eObjectMode for function arguments
Campbell Barton [Tue, 6 Feb 2018 12:27:49 +0000 (23:27 +1100)]
Use eObjectMode for function arguments
Campbell Barton [Tue, 6 Feb 2018 12:06:23 +0000 (23:06 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Tue, 6 Feb 2018 11:53:09 +0000 (22:53 +1100)]
DNA: move eObjectMode into own header
Add a enum headers to DNA, to be included in other headers
so function signatures can use enums for better type safety.
Add DNA_*_enums.h matching DNA_*.types.h as needed.
Bastien Montagne [Tue, 6 Feb 2018 11:11:00 +0000 (12:11 +0100)]
Fix Collada building after changes in API.
Seriously guys... *Full* build when you change APIs!
Bastien Montagne [Tue, 6 Feb 2018 11:10:41 +0000 (12:10 +0100)]
Fix bplayer (c)
Campbell Barton [Tue, 6 Feb 2018 08:34:36 +0000 (19:34 +1100)]
Object Mode: use eval_ctx for modifiers_isCorrectableDeformed
Some other minor changes from D3037 as well
Campbell Barton [Tue, 6 Feb 2018 08:17:28 +0000 (19:17 +1100)]
Partially revert changes from
2a184f3d2b6
Ended up removing the need for eval_ctx,
but left it being initialized.
Campbell Barton [Tue, 6 Feb 2018 06:59:17 +0000 (17:59 +1100)]
Object Mode: use eval_ctx for get_active_constraints
Campbell Barton [Tue, 6 Feb 2018 06:57:07 +0000 (17:57 +1100)]
Object Mode: pass eval_ctx to ED_object_iter_other
Campbell Barton [Tue, 6 Feb 2018 06:53:19 +0000 (17:53 +1100)]
Object Mode: use eval_ctx for paint & object
Campbell Barton [Tue, 6 Feb 2018 06:38:48 +0000 (17:38 +1100)]
Object Mode: ED_mesh_mirrtopo_* check edit-mode data
Replace object mode checks for edit-mode data
Campbell Barton [Tue, 6 Feb 2018 06:32:00 +0000 (17:32 +1100)]
Object Mode: pass as arg to stats_string
Campbell Barton [Tue, 6 Feb 2018 06:28:00 +0000 (17:28 +1100)]
Object Mode: use eval_ctx for context/screen code
Campbell Barton [Tue, 6 Feb 2018 06:11:46 +0000 (17:11 +1100)]
Object Mode: pass eval_ctx in outliner functions
Campbell Barton [Tue, 6 Feb 2018 06:10:08 +0000 (17:10 +1100)]
Object Mode: use eval_ctx for keyframe & weight calculation
Campbell Barton [Tue, 6 Feb 2018 06:06:20 +0000 (17:06 +1100)]
Object Mode: Use eval_ctx mode for drawing, paint & modifiers
Campbell Barton [Tue, 6 Feb 2018 05:34:11 +0000 (16:34 +1100)]
Object Mode: use eval_ctx mode in transform code
This adds EvaluationContext into TransInfo
Campbell Barton [Tue, 6 Feb 2018 05:16:50 +0000 (16:16 +1100)]
Object Mode: pass object mode to CTX_data_mode_enum_ex
Campbell Barton [Tue, 6 Feb 2018 05:10:03 +0000 (16:10 +1100)]
Object Mode: Add to EvaluationContext & DRWContextState
Campbell Barton [Tue, 6 Feb 2018 04:47:51 +0000 (15:47 +1100)]
Object Mode: use obdata when loading from editmode
Avoids having to check the objects mode in 'update_from_editmode'.
Campbell Barton [Tue, 6 Feb 2018 02:56:12 +0000 (13:56 +1100)]
Object Mode: don't check posemode in the BGE
No reason pose mode should change behavior
Mai Lavelle [Tue, 6 Feb 2018 01:15:53 +0000 (20:15 -0500)]
Fix T54003: Particles - Size and random size not present in "physics" tab in Advanced mode
The check to see if `use_advanced_hair` was enabled was actually in two places
(render panel `draw` function and physics panel `poll` function). As these
properties are only in one place now the check in `draw` isn't needed anymore.
Related: T53513,
a6c69ca57f661a8538
Tamito Kajiyama [Tue, 6 Feb 2018 00:11:59 +0000 (09:11 +0900)]
Freestyle: Unnecessary repeats of Cycles property copying.
As a follow-up to the commit rB354f92a49458795c69f857de927c5b1531cd3618
for fixing Freestyle crash when using Cycles (thanks Brecht for the fix), this revision
applies a related bugfix addressed partly in D3040 (item #2 in the description).
Tamito Kajiyama [Mon, 5 Feb 2018 23:53:59 +0000 (08:53 +0900)]
Freestyle: Additional debug info for the render engine used for stroke rendering.
Brecht Van Lommel [Mon, 5 Feb 2018 21:13:08 +0000 (22:13 +0100)]
Fix T54001: AMD OpenCL fails with certain resolutions, after recent changes.
We should actually be using CL_DEVICE_MEM_BASE_ADDR_ALIGN for sub buffers,
previous change in this code was incorrect. Renamed the function now to
make the specific purpose of this alignment clear, it's not required for
data types in general.
Dalai Felinto [Mon, 5 Feb 2018 21:01:25 +0000 (19:01 -0200)]
Fix duplicator visibility logic
Cycles old behaviour is to hide the duplicator on rendering at all times.
We have since a few months an option in 2.8 to control the duplicator
visibility on its own. However when the duplicator is also duplicated, things
were not working properly.
What we do now is, in addition to the duplicator visibility control, is to not
have the source collection of the duplicator object to ever influence its
visibility when the object is been duplicated.
So if the user wants to reproduce Cycles old behaviour all that is required is
to have different collections, one for the original to-be duplicated objects
that you hide in for the view layer used in the final render. And another
collection with only the first duplicator (which in turn duplicates other
duplicators).
I know this all may sound confusing, so please just give it a try, it's simpler
than it sounds.
Howard Trickey [Mon, 5 Feb 2018 19:21:43 +0000 (14:21 -0500)]
Fix bevel profile=1 problems, see T39132, T38458, T40278, T51010,
T53783.
Before, profile=1 ("square outside") only worked well in a few cases
(some "pipes", cube corners). This makes it work well pretty much
everywhere.
Brecht Van Lommel [Mon, 5 Feb 2018 15:16:09 +0000 (16:16 +0100)]
Fix Freestyle not copying Cycles properties to stroke rendering scene.
Brecht Van Lommel [Mon, 5 Feb 2018 14:01:26 +0000 (15:01 +0100)]
Fix Cycles + Freestyle rendering crash, due to bug in RNA override code.
Nathan Letwory [Mon, 5 Feb 2018 09:01:00 +0000 (11:01 +0200)]
Fix typo in struct name obejct to object.
Reviewers: sergey
Reviewed By: sergey
Differential Revision: https://developer.blender.org/D3041
Campbell Barton [Mon, 5 Feb 2018 06:58:31 +0000 (17:58 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Mon, 5 Feb 2018 06:56:09 +0000 (17:56 +1100)]
Minor change to last commit
Keep mode checks simple, nest other checks in their body.
Campbell Barton [Mon, 5 Feb 2018 06:53:30 +0000 (17:53 +1100)]
Fix T53986: Crash saving during sculpt stroke
Also remove unused struct member.
Clément Foucault [Mon, 5 Feb 2018 00:49:19 +0000 (01:49 +0100)]
Eevee: Pixel Filter: Add parameter & rescale final LUT.
Clément Foucault [Sat, 3 Feb 2018 22:48:00 +0000 (23:48 +0100)]
Eevee: AA: Add Blackmann-Harris pixel filter distribution.
This leads to a huge improvement of AntiAliasing quality.
There is no other distribution now and there is not settings displayed to the user. That's for another commit.
Clément Foucault [Sat, 3 Feb 2018 22:45:53 +0000 (23:45 +0100)]
Eevee: Style: More Const correctness.
Clément Foucault [Sat, 3 Feb 2018 22:45:08 +0000 (23:45 +0100)]
Eevee: Render: Reset winmat before jittering it again.
Clément Foucault [Sat, 3 Feb 2018 02:17:22 +0000 (03:17 +0100)]
Eevee: Render: Fix Ao pass background contamination.
It was poluted by the additive blend mode.
Clément Foucault [Sat, 3 Feb 2018 02:16:16 +0000 (03:16 +0100)]
Eevee: Render Fix black normals on blended material in the normal pass.
Clément Foucault [Sat, 3 Feb 2018 02:00:39 +0000 (03:00 +0100)]
Eevee: Render: Force normal buffer creation if needed.
Clément Foucault [Sat, 3 Feb 2018 02:00:09 +0000 (03:00 +0100)]
Eevee: Codestyle: Indent #ifdefs
Clément Foucault [Sat, 3 Feb 2018 01:33:35 +0000 (02:33 +0100)]
Eevee: Render: Fix black reflections in 1st sample.
Ray Molenkamp [Sun, 4 Feb 2018 22:12:35 +0000 (15:12 -0700)]
cycles: fix black render with cycles_cubin_cc.
I have honestly no idea how this got swapped..
Ray Molenkamp [Sun, 4 Feb 2018 22:11:08 +0000 (15:11 -0700)]
cycles: fix cxx11 usage for cycles_cubin_cc
Campbell Barton [Sat, 3 Feb 2018 23:46:34 +0000 (10:46 +1100)]
Merge branch 'master' into blender2.8
Ray Molenkamp [Sat, 3 Feb 2018 23:38:27 +0000 (16:38 -0700)]
msvc: Use source folder structure for project file.
This patch changes the huge list of projects in visual studio into a nice tree matching the source folder structure. see D2823 for details.
Differential Revision: http://developer.blender.org/D2823
Ray Molenkamp [Sat, 3 Feb 2018 17:59:09 +0000 (10:59 -0700)]
cycles: Add an nvrtc based cubin cli compiler.
nvcc is very picky regarding compiler versions, severely limiting the compiler we can use, this commit adds a nvrtc based compiler that'll allow us to build the cubins even if the host compiler is unsupported. for details see D2913.
Differential Revision: http://developer.blender.org/D2913
Brecht Van Lommel [Sat, 3 Feb 2018 15:10:01 +0000 (16:10 +0100)]
Merge branch 'master' into blender2.8
Brecht Van Lommel [Sat, 3 Feb 2018 12:29:44 +0000 (13:29 +0100)]
Fix more Cycles incorrect principled BSDF mixing due to missing initialization.
Spotted by Ha Hyung-jin, thanks!
Brecht Van Lommel [Sat, 3 Feb 2018 12:14:05 +0000 (13:14 +0100)]
Fix build error with CUDA 9.1 and compute capability 2.x.