blender.git
17 months agoRemove Frame Server
Campbell Barton [Wed, 9 May 2018 10:43:16 +0000 (12:43 +0200)]
Remove Frame Server

This feature is limited (only byte PPM output, no multi-view),
only works with specific configurations.

This also causes some maintenance overhead
when testing changes to the render pipeline.

17 months agoCleanup/refactor: Move get_mesh_eval_for_modifier from MOD_util to BKE_modifier.
Bastien Montagne [Wed, 9 May 2018 10:44:22 +0000 (12:44 +0200)]
Cleanup/refactor: Move get_mesh_eval_for_modifier from MOD_util to BKE_modifier.

Because some modifiers' actual code is in BKE... Also renamed to more
BKE-valid name BKE_modifier_get_evaluated_mesh_from_object.

17 months agoSurface Deform mod: removed some stuff that shouldn't have been committed
Sybren A. Stüvel [Wed, 9 May 2018 10:41:32 +0000 (12:41 +0200)]
Surface Deform mod: removed some stuff that shouldn't have been committed

17 months agoMesh Deform modifier: also show result while editing the deformation mesh
Sybren A. Stüvel [Wed, 9 May 2018 10:23:10 +0000 (12:23 +0200)]
Mesh Deform modifier: also show result while editing the deformation mesh

There is still an issue with the modified mesh not being updated until you
disable and re-enable the modifier. However, after that it'll now also work
while editing the deformation mesh.

17 months agoFix (unreported) bug in BVHTree 'free tessfaces' flag setting.
Bastien Montagne [Wed, 9 May 2018 10:36:05 +0000 (12:36 +0200)]
Fix (unreported) bug in BVHTree 'free tessfaces' flag setting.

Same issue as in DM-based on, so follow up of rBf3efa9e15f58...

17 months agoMerge branch 'master' into blender2.8
Bastien Montagne [Wed, 9 May 2018 10:35:16 +0000 (12:35 +0200)]
Merge branch 'master' into blender2.8

17 months agoFix (unreported) bug in BVHTree 'free tessfaces' flag setting.
Bastien Montagne [Wed, 9 May 2018 10:33:21 +0000 (12:33 +0200)]
Fix (unreported) bug in BVHTree 'free tessfaces' flag setting.

Could lead to atempt to free NULL pointer, and/or memory leak.

17 months agoModifiers: ported Surface Deform to Mesh
Sybren A. Stüvel [Wed, 9 May 2018 09:33:32 +0000 (11:33 +0200)]
Modifiers: ported Surface Deform to Mesh

The modifier performed the 'bind' operation not in the bind operator,
but delayed in the mesh evaluation. This saved the result in a CoW copy
instead of in the actual modifier data. The binding operator now follows
the same approach as Mesh Deform: it forces the modifiers to run on the
real (non-CoW) data, making it possible for the modifier to store the
binding data.

This commit also ports the usage of DerivedMesh to Mesh.

17 months agoMulti-Object-Editing: MESH_OT_separate by Nick Milios
Dalai Felinto [Wed, 9 May 2018 10:04:43 +0000 (12:04 +0200)]
Multi-Object-Editing: MESH_OT_separate by Nick Milios

Patch description:

- Reports "Nothing selected" only when all objects has no selection
  and it is in  Separate type(Mode)
- Tested all types (Seperate/By Material/By loose parts)
- Instead of using

```
BKE_view_layer_array_from_objects_in_edit_mode_unique_data
```

I used

```
BKE_view_layer_array_from_bases_in_edit_mode_unique_data
```

Because it needs the "Base" not the "Object" itself.

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3267

17 months agoMulti-Object-Editing: MESH_OT_vert_connect by Nick Milios
Dalai Felinto [Wed, 9 May 2018 09:37:41 +0000 (11:37 +0200)]
Multi-Object-Editing: MESH_OT_vert_connect by Nick Milios

With changes: Skip loop when totvertsel is not 2

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3273

17 months agoEditMesh: multi object spin support by Falk David
Fulk33 [Wed, 9 May 2018 09:10:00 +0000 (11:10 +0200)]
EditMesh: multi object spin support by Falk David

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3279

17 months agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 9 May 2018 09:25:35 +0000 (11:25 +0200)]
Merge branch 'master' into blender2.8

17 months agoMSVC: resolve near/far issue take2
Campbell Barton [Wed, 9 May 2018 09:20:12 +0000 (11:20 +0200)]
MSVC: resolve near/far issue take2

Previous fix failed w/ compositor,
tested on MSVC2015, full build.

17 months agoMulti-Object-Editing : Support for Grid Fill by Falk David
Dalai Felinto [Wed, 9 May 2018 08:41:37 +0000 (10:41 +0200)]
Multi-Object-Editing : Support for Grid Fill by Falk David

With minor changes:
* Have BMOperator declaration close to its initialization.
* Move const use_prepare and const use_interp_simple outside the for loop.

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3222

17 months agoMulti-Object-Editing: MESH_OT_edges_select_sharp by Jefferson Rausseo
Dalai Felinto [Wed, 9 May 2018 08:34:52 +0000 (10:34 +0200)]
Multi-Object-Editing: MESH_OT_edges_select_sharp by Jefferson Rausseo

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3280

17 months agoDraw manager: Initial implementation of particle edit mode
Sergey Sharybin [Tue, 8 May 2018 15:11:42 +0000 (17:11 +0200)]
Draw manager: Initial implementation of particle edit mode

Gets edit more from the current object and displays it as a path.
this is how both hair and particle edit modes are supposed to work.

This only covers path itself, it doesn't do anything like keys
visualization or selection. However, it's already possible to
comb and such.

Only implements particle mode. There are also some settings to
do soft body and cloth. No idea yet what that all is about.

Copy-on-write is not supported either, this is due to some
edit mode ownership problems which are to be addressed from
dependency graph side.

Shading is dead-simple: uses tangent as a color. This is where
i hope to get some help from Clément.

17 months agoDraw manager: Use utility function to get particle edit mode
Sergey Sharybin [Tue, 8 May 2018 15:10:42 +0000 (17:10 +0200)]
Draw manager: Use utility function to get particle edit mode

Makes it more local where we have to do all the tricky checks.

17 months agoDraw manager: Add support for cached particle edit paths
Sergey Sharybin [Tue, 8 May 2018 14:57:08 +0000 (16:57 +0200)]
Draw manager: Add support for cached particle edit paths

Before it was only supporting hair strand paths editing.

17 months agoDraw manager: Correct edit mode check for particles
Sergey Sharybin [Tue, 8 May 2018 14:26:06 +0000 (16:26 +0200)]
Draw manager: Correct edit mode check for particles

17 months agoDraw manager: Ignore particles when object is in particle edit mode
Sergey Sharybin [Tue, 8 May 2018 14:17:33 +0000 (16:17 +0200)]
Draw manager: Ignore particles when object is in particle edit mode

17 months agoDraw manager: allow creation of hair batch cache from edit mode
Sergey Sharybin [Tue, 8 May 2018 14:16:53 +0000 (16:16 +0200)]
Draw manager: allow creation of hair batch cache from edit mode

17 months agoDraw manager: De-duplicate segment counting
Sergey Sharybin [Tue, 8 May 2018 14:09:36 +0000 (16:09 +0200)]
Draw manager: De-duplicate segment counting

17 months agoDraw manager: Completely de-duplicate strands caching for parent and particles
Sergey Sharybin [Tue, 8 May 2018 13:37:23 +0000 (15:37 +0200)]
Draw manager: Completely de-duplicate strands caching for parent and particles

Will make it simple to add strands from edit mode as well.

17 months agoDraw manager: Move parent particle cache fill into an own function
Sergey Sharybin [Tue, 8 May 2018 13:02:11 +0000 (15:02 +0200)]
Draw manager: Move parent particle cache fill into an own function

Should make it fairly simple to make it re-usable by children particles.

17 months agoDraw manager: Use single function to calculate particles UVs
Sergey Sharybin [Tue, 8 May 2018 12:36:11 +0000 (14:36 +0200)]
Draw manager: Use single function to calculate particles UVs

Will allow us to merge two code paths more easily.

17 months agoDraw manager: Move emit_from checks to interpolation functions
Sergey Sharybin [Tue, 8 May 2018 12:26:29 +0000 (14:26 +0200)]
Draw manager: Move emit_from checks to interpolation functions

Keeps main function shorter.

17 months agoDraw manager: Move UVs interpolation of child particles to a function
Sergey Sharybin [Tue, 8 May 2018 12:23:55 +0000 (14:23 +0200)]
Draw manager: Move UVs interpolation of child particles to a function

17 months agoDraw manager: De-duplicate calculation of parent UVs
Sergey Sharybin [Tue, 8 May 2018 12:06:00 +0000 (14:06 +0200)]
Draw manager: De-duplicate calculation of parent UVs

17 months agoDraw manager: Make parent and child particles code to be more equal
Sergey Sharybin [Tue, 8 May 2018 11:55:23 +0000 (13:55 +0200)]
Draw manager: Make parent and child particles code to be more equal

Make parent UVs calculation for simple children to match another block.

17 months agoDraw manager: More meaningful variable name
Sergey Sharybin [Tue, 8 May 2018 10:40:07 +0000 (12:40 +0200)]
Draw manager: More meaningful variable name

17 months agoDraw manager: Reduce indentation level in particle batch populate
Sergey Sharybin [Tue, 8 May 2018 10:36:20 +0000 (12:36 +0200)]
Draw manager: Reduce indentation level in particle batch populate

17 months agoMulti-Object-Editing : Support for MESH_OT_rip_edge by Miguel Pozo
Dalai Felinto [Wed, 9 May 2018 08:27:35 +0000 (10:27 +0200)]
Multi-Object-Editing : Support for MESH_OT_rip_edge by Miguel Pozo

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3268

17 months agoModifier stack: remove last usage of DM in WeightVGProximity .
Bastien Montagne [Wed, 9 May 2018 08:10:30 +0000 (10:10 +0200)]
Modifier stack: remove last usage of DM in WeightVGProximity .

17 months agoMulti-Object-Editing: select_non_manifold by Jefferson Rausseo
Dalai Felinto [Wed, 9 May 2018 07:59:26 +0000 (09:59 +0200)]
Multi-Object-Editing: select_non_manifold by Jefferson Rausseo

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3232

17 months agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 9 May 2018 08:02:33 +0000 (10:02 +0200)]
Merge branch 'master' into blender2.8

17 months agoMSVC: remove hack for near/far name collision
Campbell Barton [Wed, 9 May 2018 08:00:55 +0000 (10:00 +0200)]
MSVC: remove hack for near/far name collision

windows headers define these, conflicting w/ View3D.near/far.

17 months agoColor: Combine/Separate YCbCrA node default to rec. 709
Aaron Carlisle [Wed, 9 May 2018 02:24:58 +0000 (22:24 -0400)]
Color: Combine/Separate YCbCrA node default to rec. 709

This commit is part of T54798

Differential Revision: https://developer.blender.org/D3183

17 months agoBKE: bvhutils: Always return NULL when the BVHtree has no leafs.
Germano [Tue, 8 May 2018 23:31:26 +0000 (20:31 -0300)]
BKE: bvhutils: Always return NULL when the BVHtree has no leafs.

BLI_bvhkdop functions were not made to work with zero-leaf trees.
Perhaps a better solution would be to modify BLI_bvhkdop to work with zero leaf trees.
But this solution of returning NULL was already used for bvhtrees of looptris.

17 months agoED_transform: Port ED_transform_snap_object to new Mesh-based system.
Germano [Tue, 8 May 2018 23:04:32 +0000 (20:04 -0300)]
ED_transform: Port ED_transform_snap_object to new Mesh-based system.

Differential Revision: https://developer.blender.org/D2896

17 months agoBKE: bvhutils: Port bvhtree_from_mesh_get to take a Mesh param instead of a DerivedMesh.
Germano [Tue, 8 May 2018 23:00:51 +0000 (20:00 -0300)]
BKE: bvhutils: Port bvhtree_from_mesh_get to take a Mesh param instead of a DerivedMesh.

Differential Revision: https://developer.blender.org/D3227

17 months agoExtrude Widget: with/without axis constraint
Campbell Barton [Tue, 8 May 2018 18:28:40 +0000 (20:28 +0200)]
Extrude Widget: with/without axis constraint

17 months agoExtrude Widget: tweak draw style
Campbell Barton [Tue, 8 May 2018 18:14:50 +0000 (20:14 +0200)]
Extrude Widget: tweak draw style

Use filled circle for redo

17 months agoCleanup: naming (prefer len over num for new code)
Campbell Barton [Tue, 8 May 2018 17:36:02 +0000 (19:36 +0200)]
Cleanup: naming (prefer len over num for new code)

17 months agoCleanup: mesh_runtime naming
Campbell Barton [Tue, 8 May 2018 17:26:36 +0000 (19:26 +0200)]
Cleanup: mesh_runtime naming

- BKE_mesh_get_looptri_num        -> BKE_mesh_runtime_looptri_len
- BKE_mesh_runtime_recalc_looptri -> BKE_mesh_runtime_looptri_recalc
- BKE_mesh_get_looptri_array      -> BKE_mesh_runtime_looptri_ensure

17 months agoMissed last commit
Campbell Barton [Tue, 8 May 2018 17:16:33 +0000 (19:16 +0200)]
Missed last commit

17 months agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 8 May 2018 17:09:35 +0000 (19:09 +0200)]
Merge branch 'master' into blender2.8

17 months agoModifier stack: partial port of ShrinkWrap to new Mesh-based system.
Bastien Montagne [Tue, 8 May 2018 17:04:12 +0000 (19:04 +0200)]
Modifier stack: partial port of ShrinkWrap to new Mesh-based system.

Partial only, complete depends on BVHTree helper updates, and subsurf
updates.

17 months agoModifier stack: Port Warp to new Mesh-based system.
Bastien Montagne [Tue, 8 May 2018 16:41:43 +0000 (18:41 +0200)]
Modifier stack: Port Warp to new Mesh-based system.

17 months agoModifier stack: port Mask to new Mesh-based system.
Bastien Montagne [Tue, 8 May 2018 16:19:28 +0000 (18:19 +0200)]
Modifier stack: port Mask to new Mesh-based system.

17 months agoCleanup: includes
Campbell Barton [Tue, 8 May 2018 16:01:47 +0000 (18:01 +0200)]
Cleanup: includes

17 months agoCleanup: move mesh conversion into own function
Campbell Barton [Tue, 8 May 2018 15:44:54 +0000 (17:44 +0200)]
Cleanup: move mesh conversion into own function

17 months agoModifier stack: Port Caqst to new Mesh-based system.
Bastien Montagne [Tue, 8 May 2018 15:52:24 +0000 (17:52 +0200)]
Modifier stack: Port Caqst to new Mesh-based system.

17 months agoCollections: remove per collection and view layer engine overrides.
Brecht Van Lommel [Tue, 8 May 2018 13:57:20 +0000 (15:57 +0200)]
Collections: remove per collection and view layer engine overrides.

This will be handled by the new view layer override system which will
store data elsewhere, removing the code already for easier refactoring.

17 months agoCleanup: consistent BKE_mesh naming
Campbell Barton [Tue, 8 May 2018 15:28:43 +0000 (17:28 +0200)]
Cleanup: consistent BKE_mesh naming

17 months agoCleanup: use bool for BKE_mesh_new_from_object
Campbell Barton [Tue, 8 May 2018 15:17:40 +0000 (17:17 +0200)]
Cleanup: use bool for BKE_mesh_new_from_object

17 months agoCleanup: rename variables
Campbell Barton [Tue, 8 May 2018 15:15:23 +0000 (17:15 +0200)]
Cleanup: rename variables

DerivedMesh had some odd conventions, remove from BKE_mesh.

17 months agoCleanup: use 'nomain' when not in library data
Campbell Barton [Tue, 8 May 2018 15:06:30 +0000 (17:06 +0200)]
Cleanup: use 'nomain' when not in library data

Rename only.

17 months agoCleanup: whitespace, duplicate includes
Campbell Barton [Tue, 8 May 2018 14:57:07 +0000 (16:57 +0200)]
Cleanup: whitespace, duplicate includes

17 months agoModifier stack: Port Smooth to new Mesh-based system.
Bastien Montagne [Tue, 8 May 2018 14:42:01 +0000 (16:42 +0200)]
Modifier stack: Port Smooth to new Mesh-based system.

17 months agoMerge branch 'master' into blender2.8
Bastien Montagne [Tue, 8 May 2018 14:06:32 +0000 (16:06 +0200)]
Merge branch 'master' into blender2.8

Conflicts:
source/blender/modifiers/intern/MOD_dynamicpaint.c
source/blender/modifiers/intern/MOD_uvproject.c

17 months agoFix building with latest versions of ffmpeg.
Bastien Montagne [Tue, 8 May 2018 14:00:52 +0000 (16:00 +0200)]
Fix building with latest versions of ffmpeg.

Some years-old deprecated stuff has now been removed.

Correct solution is probably to use valid defines etc. in own code, but
this is more FFMEPG maintainer task (since it also may change how old
FFMPEG we do support...).

17 months agoOrientation for 3D cursor
Campbell Barton [Tue, 8 May 2018 12:18:09 +0000 (14:18 +0200)]
Orientation for 3D cursor

Currently set when setting the cursor location,
optionally used as an orientation type.

Intended for use by tools too.

See: D3208

17 months agoFix (unreported) bloody modifiers messing with ID user count in copy.
Bastien Montagne [Tue, 8 May 2018 13:27:10 +0000 (15:27 +0200)]
Fix (unreported) bloody modifiers messing with ID user count in copy.

User count of IDs is handled by higher-level, generic function,
low-level copydata functions *MUST NOT* touch them anymore, ever!

17 months agoMerge branch 'master' into blender2.8
Bastien Montagne [Tue, 8 May 2018 13:20:18 +0000 (15:20 +0200)]
Merge branch 'master' into blender2.8

17 months agoCleanup: Nuke empty dummy wrappers around modifier_copyData_generic().
Bastien Montagne [Tue, 8 May 2018 13:04:10 +0000 (15:04 +0200)]
Cleanup: Nuke empty dummy wrappers around modifier_copyData_generic().

This also changes signature of modifier copy callback, first (source)
parameter is now a const, which is saner anyway!

17 months agoEevee: Fix bug with transparent object + volume rendering.
Clément Foucault [Tue, 8 May 2018 12:31:08 +0000 (14:31 +0200)]
Eevee: Fix bug with transparent object + volume rendering.

This was because the main_fb was not bound back to be updated.
Following draw calls were drawn without depth buffer.

17 months agoMerge branch 'master' into blender2.8
Bastien Montagne [Tue, 8 May 2018 12:22:46 +0000 (14:22 +0200)]
Merge branch 'master' into blender2.8

17 months agoModifiers: sanitize/cleanup modifiers' copying & freeing code.
Bastien Montagne [Tue, 8 May 2018 12:21:02 +0000 (14:21 +0200)]
Modifiers: sanitize/cleanup modifiers' copying & freeing code.

Should also fix T55000: Crash with hooks and curves in Cycles render.

17 months agoFix T54999: error when entering edit mode in texture shading
Jeroen Bakker [Tue, 8 May 2018 12:00:27 +0000 (14:00 +0200)]
Fix T54999: error when entering edit mode in texture shading

When entering edit mode the texture coordinates is not calculated by
drawcachemesh. For now fallback to solid mode. This gives wrong
artifacts when disabling overlays when in edit mode. We should make it
possible to calculate the UVLOOP from bmesh. This will be done in a next
patch

17 months agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 8 May 2018 11:33:48 +0000 (13:33 +0200)]
Merge branch 'master' into blender2.8

17 months agoCleanup: quiet -Warray-bounds warning
Campbell Barton [Tue, 8 May 2018 11:32:52 +0000 (13:32 +0200)]
Cleanup: quiet -Warray-bounds warning

17 months agoWeightVG modifiers: Cleanup, add asserts to validate expected data status...
Bastien Montagne [Tue, 8 May 2018 10:58:01 +0000 (12:58 +0200)]
WeightVG modifiers: Cleanup, add asserts to validate expected data status...

17 months agoClenup: typos.
Bastien Montagne [Tue, 8 May 2018 10:25:51 +0000 (12:25 +0200)]
Clenup: typos.

17 months agoModifiers: pass the ob->data to the modifier if the mesh param is NULL
Sybren A. Stüvel [Tue, 8 May 2018 10:34:01 +0000 (12:34 +0200)]
Modifiers: pass the ob->data to the modifier if the mesh param is NULL

This enables the modifiers to access things like vertex groups. Care should
be taken to not modifier the mesh itself in this case.

17 months agoArmature: Add back Stick bone draw type.
Clément Foucault [Tue, 8 May 2018 10:05:06 +0000 (12:05 +0200)]
Armature: Add back Stick bone draw type.

The actual code is a bit convoluted but allows good and "pseudo efficient"
drawing. (pseudo efficient because rendering instances with that amount of
vertices is really inneficient. We should go full procedural but need to
have bufferTexture implemented first) But drawing speed is not a bottleneck
here and it's already a million time less crappy than the old (2.79) immediate
mode method.

Instead of drawing actual wires with different width we render a triangle
fan batch (containing 3 fans: bone, head, tail) which is then oriented in
screen space to the bone direction. We then interpolate a float value
accross vertices giving us a nice blend factor to blend the colors and
gives us really smooth interpolation inside the bone.

The outside edge still being geometry will be antialiased by MSAA if enabled.

17 months agoModifier stack: port Displace to new Mesh-based system.
Bastien Montagne [Tue, 8 May 2018 10:00:38 +0000 (12:00 +0200)]
Modifier stack: port Displace to new Mesh-based system.

17 months agoFix recent Curve porting: mesh pointer may also be NULL in non-EditMode case.
Bastien Montagne [Tue, 8 May 2018 09:59:48 +0000 (11:59 +0200)]
Fix recent Curve porting: mesh pointer may also be NULL in non-EditMode case.

17 months agoMod_util: Add back vcos parameter to get_texture_coords_mesh().
Bastien Montagne [Tue, 8 May 2018 09:57:34 +0000 (11:57 +0200)]
Mod_util: Add back vcos parameter to get_texture_coords_mesh().

Now we use vcos when provided, and fall back to mesh vertices' co
otherwise.

Deform modifiers usually do not have up-to-date coordinates in Mesh
itself, only in given vcos array!

17 months agoMesh normals: clear runtime dirty normal flag also when computing clnors.
Bastien Montagne [Tue, 8 May 2018 09:56:31 +0000 (11:56 +0200)]
Mesh normals: clear runtime dirty normal flag also when computing clnors.

17 months agoMerge branch 'master' into blender2.8
Sergey Sharybin [Tue, 8 May 2018 09:59:22 +0000 (11:59 +0200)]
Merge branch 'master' into blender2.8

17 months agoTracking: Use bmain from context
Sergey Sharybin [Tue, 8 May 2018 09:58:42 +0000 (11:58 +0200)]
Tracking: Use bmain from context

17 months agoClay: Simplify matcap manipulation
Sergey Sharybin [Mon, 7 May 2018 13:28:25 +0000 (15:28 +0200)]
Clay: Simplify matcap manipulation

No need to hard-coded handling of every individual matcap.

They are in the continuous index range anyway.

17 months agoClay: Don't use hardcoded constant in the string
Sergey Sharybin [Mon, 7 May 2018 13:25:21 +0000 (15:25 +0200)]
Clay: Don't use hardcoded constant in the string

Stringify the actual constant instead.

17 months agoMulti-Object-Editing: select random by Jefferson Rausseo with changes
Dalai Felinto [Tue, 8 May 2018 09:36:09 +0000 (11:36 +0200)]
Multi-Object-Editing: select random by Jefferson Rausseo with changes

Aside from identation, seed should change for each object. Otherwise to objects
with a copied mesh would get the exactly same "random" selection.

And we do so in a consistent way so it doesn't vary depending on
object order.

Seed bump using hash suggested by Campbell Barton and Sergey Sharybin.

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3231

17 months agoPorted Mesh Deform modifier
Sybren A. Stüvel [Tue, 8 May 2018 09:33:31 +0000 (11:33 +0200)]
Ported Mesh Deform modifier

This modifier still has issues that are not related to this port:

- While editing the deformation mesh, the deformed mesh doesn't update.
  This update only happens after exiting edit mode, making editing
  cumbersome.
- Binding doesn't work yet. It works fine when binding in master and
  loading pre-bound in 2.8. This was also an issue before this port, and
  will be investigated separately.

17 months agolooptri + bvhtree support for Mesh
Sybren A. Stüvel [Tue, 8 May 2018 08:07:21 +0000 (10:07 +0200)]
looptri + bvhtree support for Mesh

17 months agoMulti-Object-Editing: vertices smooth by Jefferson Rausseo
Dalai Felinto [Tue, 8 May 2018 09:28:36 +0000 (11:28 +0200)]
Multi-Object-Editing: vertices smooth by Jefferson Rausseo

Changes by me:
* Identation (tabs not space)
* Moving RNA_.*_get outside for loop)

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3230

17 months agoMulti-Object-Editing : Extrude Repeat by Falk David
Dalai Felinto [Tue, 8 May 2018 09:23:59 +0000 (11:23 +0200)]
Multi-Object-Editing : Extrude Repeat by Falk David

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3224

17 months agoPrevent segfault when opening file browser while a 2.79 file was loaded.
Sybren A. Stüvel [Tue, 8 May 2018 09:18:21 +0000 (11:18 +0200)]
Prevent segfault when opening file browser while a 2.79 file was loaded.

Loading a file that was written with the master branch into the 2.8 branch,
and then trying to load or save, caused a segfault.

17 months agoEdit Mesh: multi-object rotate_uvs support by Pablo Dobarro
Dalai Felinto [Tue, 8 May 2018 09:12:23 +0000 (11:12 +0200)]
Edit Mesh: multi-object rotate_uvs support by Pablo Dobarro

Changes by me: Moving RNA_.*get outside for loop and indentation fix.

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3221

17 months agoEdit Mesh: multi-object reverse_uvs support by Pablo Dobarro
Dalai Felinto [Tue, 8 May 2018 08:48:20 +0000 (10:48 +0200)]
Edit Mesh: multi-object reverse_uvs support by Pablo Dobarro

Maniphest Tasks: T54643
Differential Revision: https://developer.blender.org/D3220

17 months agoModifiers stack: port Curve to new Mesh-based system.
Bastien Montagne [Tue, 8 May 2018 09:05:49 +0000 (11:05 +0200)]
Modifiers stack: port Curve to new Mesh-based system.

17 months agoRename BKE_bmesh_to_mesh to BKE_bmesh_to_mesh_nomain.
Bastien Montagne [Tue, 8 May 2018 09:03:16 +0000 (11:03 +0200)]
Rename BKE_bmesh_to_mesh to BKE_bmesh_to_mesh_nomain.

Let's be clear about functions generating datablocks outside of Main
database.

17 months agoBKE_mesh_new → BKE_mesh_new_nomain
Sybren A. Stüvel [Tue, 8 May 2018 08:59:41 +0000 (10:59 +0200)]
BKE_mesh_new → BKE_mesh_new_nomain

Including 'nomain' in the name explicitifies that the returned mesh is
NOT stored in any library.

17 months agoCleanup: quiet warning, whitespace
Campbell Barton [Tue, 8 May 2018 08:57:43 +0000 (10:57 +0200)]
Cleanup: quiet warning, whitespace

17 months agoFix crash cancelling search, caused by D3207
Campbell Barton [Tue, 8 May 2018 08:45:50 +0000 (10:45 +0200)]
Fix crash cancelling search, caused by D3207

17 months agoAdded BKE_mesh_ensure_normals()
Sybren A. Stüvel [Tue, 8 May 2018 08:06:37 +0000 (10:06 +0200)]
Added BKE_mesh_ensure_normals()

This calls BKE_mesh_calc_normals() only if the mesh vertex normals are
marked as dirty.

17 months agoAdded BKE_mesh_new()
Sybren A. Stüvel [Fri, 4 May 2018 09:42:55 +0000 (11:42 +0200)]
Added BKE_mesh_new()

This function creates a Mesh struct with a number of vertices/edges/etc.
It allocates the minimal number of CD layers needed.

Currently not yet used, but will be soon in the upcoming
BKE_new_mesh_from_curve_displist().

17 months agoMulti-Object-Editing : Support for MESH_OT_solidify by Lucas Boutrot
Dalai Felinto [Tue, 8 May 2018 08:39:06 +0000 (10:39 +0200)]
Multi-Object-Editing : Support for MESH_OT_solidify by Lucas Boutrot

Maniphest Tasks: T54641, T54643
Differential Revision: https://developer.blender.org/D3218

17 months agoMulti-Object-Editing Support for MESH_OT_wireframe by Lucas Boutrot
Dalai Felinto [Tue, 8 May 2018 08:22:33 +0000 (10:22 +0200)]
Multi-Object-Editing Support for MESH_OT_wireframe by Lucas Boutrot

Maniphest Tasks: T54641, T54643
Differential Revision: https://developer.blender.org/D3217