Germano [Fri, 4 May 2018 14:16:13 +0000 (11:16 -0300)]
Merge branch 'master' into blender2.8
Germano [Fri, 4 May 2018 14:15:21 +0000 (11:15 -0300)]
BKE: bvhutils: Unifies static functions oh bvhtrees creation.
Bastien Montagne [Fri, 4 May 2018 13:44:19 +0000 (15:44 +0200)]
Static Override: fix stupid ;istake in moving autooverride to own struct flag.
Bastien Montagne [Fri, 4 May 2018 13:36:06 +0000 (15:36 +0200)]
Merge branch 'blender2.8' into tmp-static-override-insertion
Bastien Montagne [Fri, 4 May 2018 13:32:22 +0000 (15:32 +0200)]
Static Override: Add overridable flag to drivers' ID pointer.
Bastien Montagne [Fri, 4 May 2018 13:26:02 +0000 (15:26 +0200)]
Merge branch 'blender2.8' into tmp-static-override-insertion
Sergey Sharybin [Fri, 4 May 2018 13:21:42 +0000 (15:21 +0200)]
Merge branch 'master' into blender2.8
Sergey Sharybin [Fri, 4 May 2018 12:57:31 +0000 (14:57 +0200)]
Cleanup: Remove G.main from framechange_poses_clear_unkeyed()
Campbell Barton [Fri, 4 May 2018 12:41:51 +0000 (14:41 +0200)]
Transform: use bool when local matrix is needed
Existing code checked pose/edit mode to check for transforming in an
objects local space.
This added many similar checks all over the code,
which leads to confusion.
Multi-edit caused a regression in UV transform since where UV's
had the object matrix applied by accident.
Now there is a boolean to use a local matrix,
this allows for any mode to have a 4x4 matrix
applied w/o adding mode specific checks everywhere.
Campbell Barton [Fri, 4 May 2018 12:41:36 +0000 (14:41 +0200)]
Fix mistake in boundbox center
Germano [Fri, 4 May 2018 13:12:47 +0000 (10:12 -0300)]
Merge branch 'master' into blender2.8
Germano [Fri, 4 May 2018 13:11:30 +0000 (10:11 -0300)]
BKE: Smoke: Fix error with implicit declaration of function due recent changes.
Sergey Sharybin [Fri, 4 May 2018 12:27:50 +0000 (14:27 +0200)]
Depsgraph: Fix missing relations for IDs brought by drivers
This is similar to rather recent fix in nodes builder.
Fixes crash when creating static override for chicken from Dweebs.
Germano [Fri, 4 May 2018 12:22:48 +0000 (09:22 -0300)]
Merge branch 'master' into blender2.8
Germano [Fri, 4 May 2018 12:21:42 +0000 (09:21 -0300)]
BKE: BVHtree: Replace all external references of `bvhtree_from_mesh_looptri` with `bvhtree_from_mesh_get`.
Jeroen Bakker [Fri, 4 May 2018 12:07:00 +0000 (14:07 +0200)]
Workbench: Shadows
Initial review of the shard shadows in the workbench engine.
Speed optimizations like transform feedback are not implemented yet. I first want this part to be reviewed and merged.
@fclem please check the note in drw_stencil_set it was holding back nequal == 0 as by default DST.stencil_mask was set to 0. questioin is should we remove the whole check or not.
Also I am still looking for a better name (or split the enum) for DRW_STATE_STENCIL_DEPTH_FAIL_INCR_DECR_WRAP
Reviewers: fclem
Reviewed By: fclem
Tags: #code_quest
Differential Revision: https://developer.blender.org/D3198
Sybren A. Stüvel [Thu, 3 May 2018 13:42:55 +0000 (15:42 +0200)]
Allocate/free meshes with generic library functions.
This avoids the need to use Mesh-specific functions, and makes allocation
and freeing easy oneliners.
Germano [Fri, 4 May 2018 12:01:56 +0000 (09:01 -0300)]
Mesh Remap: Face Corner Data: Do not use large epsilon values to create bvhtrees.
Use ray radius instead.
Germano [Fri, 4 May 2018 11:29:00 +0000 (08:29 -0300)]
Mesh Remap: Face Data: Do not use large epsilon values to create bvhtree.
If you need the approximation, use raycast radius.
Bastien Montagne [Fri, 4 May 2018 10:53:20 +0000 (12:53 +0200)]
ID management: add higher level BKE_id_new... helpers.
Those should be used in priority when you need to create either a new
datablock in Main, or a new temp one. Lower level BKE_libblock_...
should only be used when you need a very specific, uncommon behavior.
Sergey Sharybin [Fri, 4 May 2018 10:50:40 +0000 (12:50 +0200)]
Merge branch 'master' into blender2.8
Sergey Sharybin [Fri, 4 May 2018 10:49:28 +0000 (12:49 +0200)]
Depsgraph: Fix extra operations and relations created for shared armatures
Germano [Fri, 4 May 2018 10:44:34 +0000 (07:44 -0300)]
Merge branch 'master' into blender2.8
Germano [Fri, 4 May 2018 10:43:08 +0000 (07:43 -0300)]
Mesh Remap: Change the sphere_radius parameter instead of creating a bvhtree with epsilon equal to the value of ray_radius.
This is the desirable behavior.
It also removes one more use of `bvhtree_from_mesh_looptri`.
Germano [Fri, 4 May 2018 10:39:07 +0000 (07:39 -0300)]
Constraint: Shrink Warp: Replace `bvhtree_from_mesh_looptri` with` bvhtree_from_mesh_get`.
The value of epsilon was never used to create this bvhtree because whenever we activate this constraint, a bvhtree with parameter epsilon 0.0 was created and cached.
Germano [Fri, 4 May 2018 10:33:26 +0000 (07:33 -0300)]
Mesh Lapacian: Use `isect_ray_tri_watertight_v3` instead of Epsilons to prevent corners errors in raycast.
Using FLT_EPSILON can fail with large coordinate values.
This commit also avoids storing bvhtrees with different settings in BVHCache.
Sergey Sharybin [Fri, 4 May 2018 09:51:07 +0000 (11:51 +0200)]
Merge branch 'master' into blender2.8
Sergey Sharybin [Fri, 4 May 2018 09:40:27 +0000 (11:40 +0200)]
Fix T54935: Particle group instances don't render when hidden in viewport
Seems to be only related on linked nature of particles.
This is caused by some conflicting optimization done for viewport, which
does not do particles re-calculation if they do not depend on time
(which is crucial for big layout scene grass fields) and particle render
setting switch which was relying on fact that render pipeline will do
particle update via time dependency.
Now we extent an old workaround for invisible objects, which now also
deals with particles in the same way as old dependency graph was dealing
with this: tag object data for update if there is particle system.
There shouldn't be any speed difference between old and new depsgraph,
since tagging was already needed and was happening.
In Blender 2.8 such things should be easier to deal with since the whole
depsgraph is to be evaluated for render engine anyway.
Philipp Oeser [Fri, 4 May 2018 08:31:16 +0000 (10:31 +0200)]
Merge branch 'master' into blender2.8
Campbell Barton [Fri, 4 May 2018 08:05:57 +0000 (10:05 +0200)]
Modifiers: add back dirty normal flag
Philipp Oeser [Fri, 4 May 2018 07:20:57 +0000 (09:20 +0200)]
Fix T54341: Particle Instance Modifier doesn't preserve edge data
Campbell Barton [Fri, 4 May 2018 07:04:33 +0000 (09:04 +0200)]
Cleanup: avoid local definitions for one-off args
Campbell Barton [Fri, 4 May 2018 06:51:04 +0000 (08:51 +0200)]
Cleanup: avoid local definitions for one-off args
Campbell Barton [Fri, 4 May 2018 06:45:43 +0000 (08:45 +0200)]
Modifiers: ported wire modifier to mesh
Campbell Barton [Fri, 4 May 2018 06:39:43 +0000 (08:39 +0200)]
Merge branch 'master' into blender2.8
Campbell Barton [Fri, 4 May 2018 06:38:01 +0000 (08:38 +0200)]
Fix wireframe modifier w/ even offset
Was passing non-normalized axis to angle_on_axis.
Campbell Barton [Fri, 4 May 2018 06:02:11 +0000 (08:02 +0200)]
Merge branch 'master' into blender2.8
Campbell Barton [Fri, 4 May 2018 06:00:22 +0000 (08:00 +0200)]
Logging: setting log level wasn't working
Campbell Barton [Fri, 4 May 2018 05:30:14 +0000 (07:30 +0200)]
Merge branch 'master' into blender2.8
Campbell Barton [Fri, 4 May 2018 05:26:42 +0000 (07:26 +0200)]
IDProp API: expose repr utility function
Useful for logging properties passed to operators.
Germano [Thu, 3 May 2018 21:47:14 +0000 (18:47 -0300)]
Merge branch 'master' into blender2.8
Germano [Thu, 3 May 2018 21:33:16 +0000 (18:33 -0300)]
BKE: BVHtree: make `bvhtree_from_mesh_edges` a static function.
This will help us have more control over bvhtrees that are cached.
Germano [Thu, 3 May 2018 21:19:36 +0000 (18:19 -0300)]
Fix `Transfer Mesh Data` with `Edge Mapping` of type `Projected Edge Interpolated` and `Ray Radius` other than 0.0.
`MREMAP_RAYCAST_APPROXIMATE_BVHEPSILON(ray_radius)` greatly increased the radius making for example that 0.1 becoming 1.5
Now the result is much more predictable.
Dalai Felinto [Thu, 3 May 2018 19:56:59 +0000 (21:56 +0200)]
Edit-Mesh: multi-object un-subdivide
Dalai Felinto [Thu, 3 May 2018 19:44:53 +0000 (21:44 +0200)]
Edit-Mesh: multi-object edge rotate
Dalai Felinto [Thu, 3 May 2018 18:59:02 +0000 (20:59 +0200)]
Edit-Mesh: multi-object dissolve limited
Germano [Thu, 3 May 2018 18:54:26 +0000 (15:54 -0300)]
Merge branch 'master' into blender2.8
Germano [Thu, 3 May 2018 18:52:09 +0000 (15:52 -0300)]
Particle Edit: Shape Cut: Create and use bvhtree with AABB hull.
This bvhtree is only used for raycast. Currently the raycast does not benefit from general hull.
Germano [Thu, 3 May 2018 18:50:48 +0000 (15:50 -0300)]
Dynamic Paint: Create and use bvhtree with AABB hull.
This bvhtree is only used for raycast and find_nearest which currently do not benefit from general hull.
Campbell Barton [Thu, 3 May 2018 18:24:44 +0000 (20:24 +0200)]
Merge branch 'master' into blender2.8
Campbell Barton [Thu, 3 May 2018 18:23:32 +0000 (20:23 +0200)]
Fix T54927: BMesh Py error w/ select history slice
Campbell Barton [Thu, 3 May 2018 17:53:19 +0000 (19:53 +0200)]
Merge branch 'master' into blender2.8
Campbell Barton [Thu, 3 May 2018 17:48:28 +0000 (19:48 +0200)]
Cleanup: correct solidify logic
Code for side normals isn't executing at the moment,
so not essential, but better correct it.
Campbell Barton [Thu, 3 May 2018 17:37:20 +0000 (19:37 +0200)]
Cleanup: parentheses warning
Germano [Thu, 3 May 2018 17:33:52 +0000 (14:33 -0300)]
Merge branch 'master' into blender2.8
Germano [Thu, 3 May 2018 17:26:39 +0000 (14:26 -0300)]
BKE bvhtree: Add `tree_type` parameter to `bvhtree_from_mesh_get`.
This will allow greater control of the bvhtrees that are obtained, and helps identify problems.
It is also an additional step to unify the functions.
Joshua Leung [Thu, 3 May 2018 16:50:53 +0000 (18:50 +0200)]
Cleanup "Sync Mode" (i.e. Av Sync/Framedropping) stuff
* Remove the "sync_mode" dropdown from timeline header, and move it into
the Playback menu instead.
* Remove the confusing "Frame Dropping" and "AV Sync" entries from the
Playback menu. These were supposed to be mutually exclusive (or else,
the "sync_mode" menu would break).
* Turn AV Sync on by default
* Commented out the Frame Dropping and Av Sync RNA Properties too.
THere doesn't seem to be any valid reason for these to exist?
Joshua Leung [Thu, 3 May 2018 14:34:25 +0000 (16:34 +0200)]
Multi-Object Pose: Fix POSE_OT_flip_names
Campbell Barton [Thu, 3 May 2018 15:56:06 +0000 (17:56 +0200)]
Fix 3D cursor being hidden on existing 2.8 files
Flip logic for the flag avoids versioning code.
Sergey Sharybin [Thu, 3 May 2018 15:42:46 +0000 (17:42 +0200)]
Sculpt: Fix crash when using grab brush
Was wrong paint structure deducted from context.
Test plan:
With default cube, go to sculpt mode, switch to grab brush
and try to sculpt.
Brecht Van Lommel [Wed, 2 May 2018 08:32:01 +0000 (10:32 +0200)]
Cleanup: fix warnings, removed unused code.
Sergey Sharybin [Thu, 3 May 2018 14:22:47 +0000 (16:22 +0200)]
Depsgraph: Keep edit bones around, fixes missing edit mode with copy on write
Dalai Felinto [Thu, 3 May 2018 14:17:45 +0000 (16:17 +0200)]
Fix T54805: Bones are white in edit mode
Sergey Sharybin [Thu, 3 May 2018 14:10:37 +0000 (16:10 +0200)]
Depsgraph: Make sure evaluated pose channels are pointing to evaluated bones
Clément Foucault [Thu, 3 May 2018 13:44:19 +0000 (15:44 +0200)]
Eevee: Shadows: Perf: Do not update shadows that are not inside the view.
Clément Foucault [Thu, 3 May 2018 13:43:42 +0000 (15:43 +0200)]
DRW: Add plane culling test.
Usefull to see if the view frustum is totally behind a plane.
Clément Foucault [Thu, 3 May 2018 12:37:53 +0000 (14:37 +0200)]
DRW: Silence unused function warning in release.
Bastien Montagne [Thu, 3 May 2018 14:02:11 +0000 (16:02 +0200)]
Merge branch 'blender2.8' into tmp-static-override-insertion
Bastien Montagne [Thu, 3 May 2018 14:01:43 +0000 (16:01 +0200)]
Merge branch 'master' into blender2.8
Bastien Montagne [Thu, 3 May 2018 14:00:34 +0000 (16:00 +0200)]
Fix tooltip for constraints' subtarget.
Thanks @aligorith for the head-up.
Jeroen Bakker [Thu, 3 May 2018 13:31:37 +0000 (15:31 +0200)]
Workbench: selection method for studio lighting
Jeroen Bakker [Thu, 3 May 2018 13:31:03 +0000 (15:31 +0200)]
Workbench: studiolight
Joshua Leung [Thu, 3 May 2018 13:18:24 +0000 (15:18 +0200)]
Fix: Tag armature for copy on write when selecting bones, so active bone gets updated
Note: This still needs some copy-on-write magic to get the bone pointers
to get remapped properly (e.g. evaluated pose still refers to original
arm->bones, and arm->act_bone isn't getting remapped).
Bastien Montagne [Thu, 3 May 2018 13:02:05 +0000 (15:02 +0200)]
Merge branch 'master' into blender2.8
Bastien Montagne [Thu, 3 May 2018 13:00:12 +0000 (15:00 +0200)]
Cleanup: factorize RNA constraint targets definition.
No expected changes in behavior from that commit!
Campbell Barton [Thu, 3 May 2018 12:28:40 +0000 (14:28 +0200)]
Fix crash selecting envelope bone joint
Sergey Sharybin [Thu, 3 May 2018 12:25:09 +0000 (14:25 +0200)]
Render preview: Assign proper depsgraph for icon preview
Wondering why it only was visible when running without copy on write.
Sergey Sharybin [Thu, 3 May 2018 12:15:09 +0000 (14:15 +0200)]
Depsgraph: Fix missing action re-map with node tree update
After copying animation data we need to re-map action, otherwise
our original DNA values will go out of symc, causing flickering
when tweaking values on animated node tree.
Sergey Sharybin [Thu, 3 May 2018 10:58:48 +0000 (12:58 +0200)]
Render preview: Make it to preserve unkeyed animation
The idea is to re-use evaluated datablock from within current context.
This relies on the following factors:
- It expects scene to be fully evaluated before preview jobs starts.
- It expects datablocks to be localized.
Sybren A. Stüvel [Thu, 3 May 2018 12:02:05 +0000 (14:02 +0200)]
Restored HQ normals in Solidify modifier
Germano [Thu, 3 May 2018 12:11:02 +0000 (09:11 -0300)]
Metaball: Move handles shader to draw/modes/shader and reference them in draw_common.c
Bastien Montagne [Thu, 3 May 2018 11:51:42 +0000 (13:51 +0200)]
Merge branch 'blender2.8' into tmp-static-override-insertion
Dalai Felinto [Thu, 3 May 2018 10:57:34 +0000 (12:57 +0200)]
Fix pose transformation helper lines
This was broken since
33bb8b785a9 (triple-buffer changes).
This also helps help lines as a whole.
Sergey Sharybin [Thu, 3 May 2018 10:57:54 +0000 (12:57 +0200)]
Render preview: Remove dedicated depsgraph
It is not needed since render pipeline will create its own depsgraph.
Sergey Sharybin [Thu, 3 May 2018 10:43:32 +0000 (12:43 +0200)]
Depsgraph: Tag IDs for animation update on visible update
Without this it's quite unpredictable what state of unkeyed changes
datablock will end up with.
Sergey Sharybin [Thu, 3 May 2018 10:41:03 +0000 (12:41 +0200)]
Depsgraph: Fix threading conflict between node animation and shading update
Sergey Sharybin [Thu, 3 May 2018 10:15:37 +0000 (12:15 +0200)]
Depsgraph: Fix wrong debug message
Dalai Felinto [Thu, 3 May 2018 09:35:23 +0000 (11:35 +0200)]
Fix sculpt grab cursor
This was broken since
33bb8b785a9 (triple-buffer changes).
We need to account to the area limits when drawing the cursor.
Sergey Sharybin [Thu, 3 May 2018 09:07:09 +0000 (11:07 +0200)]
Fix for material/node tree localization
The workaround removal was wrong, the whole id->adt of a local
copy is to be NULL.
But now instead of modifying original datablock, we tell library
manager to not copy animation data.
Clément Foucault [Thu, 3 May 2018 09:20:10 +0000 (11:20 +0200)]
UI: Fix region_draw_azone_tab_plus missing/broken background.
This was due to the background being drawn by a batch that had its VAO
generated in the windows "UI" context.
Since we use the DRW ogl context to draw the entire area, we have to
regenerate the VAO for thoses UI batches to be drawn correctly.
Jeroen Bakker [Thu, 3 May 2018 08:55:28 +0000 (10:55 +0200)]
Workbench: Show 3D Cursor Overlay
Dalai Felinto [Thu, 3 May 2018 07:56:20 +0000 (09:56 +0200)]
Initialize alpha discard for uiWidgetBaseParameters
No functional change, just playing safe and documenting how to
initialize the parameter in most of the cases.
Campbell Barton [Thu, 3 May 2018 06:22:00 +0000 (08:22 +0200)]
Merge branch 'master' into blender2.8
Campbell Barton [Thu, 3 May 2018 06:13:17 +0000 (08:13 +0200)]
Cleanup: split out extrude spin/screw
Since these will have their own manipulators,
its more convenient to keep them separate.
Campbell Barton [Thu, 3 May 2018 05:31:55 +0000 (07:31 +0200)]
WM: warn when tool widget not found
This happens when testing adding tools, assert isn't useful.
Campbell Barton [Thu, 3 May 2018 05:22:04 +0000 (07:22 +0200)]
Cleanup: trailing space
Campbell Barton [Thu, 3 May 2018 05:21:06 +0000 (07:21 +0200)]
Cleanup: remove axis bounds ifdef
This was added for scale-cage manipulator, but seems generally useful.
Campbell Barton [Thu, 3 May 2018 05:15:34 +0000 (07:15 +0200)]
Transform: expose 3D center/axis calculation
This is needed for other manipulator placement.
Campbell Barton [Wed, 2 May 2018 15:59:43 +0000 (17:59 +0200)]
WM: add function to access last_properties
Germano [Thu, 3 May 2018 00:26:43 +0000 (21:26 -0300)]
Metaball: pointers used in `DRW_shgroup_call_dynamic_add` don't need to hold the reference.