Page MenuHome

Bind in Mesh Deform Modifier fails
Closed, ResolvedPublic

Description

System Information
Operating system: Windows-10-10.0.17134 64 Bits
Graphics card: GeForce GTX 970/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 382.05

Blender Version
Broken: version: 2.80 (sub 53), branch: blender2.7, commit date: 2019-04-02 19:53, hash: rBa813e259d630
Worked: (optional)

Short description of error
Bind in Mesh Deform Modifier fails in recent build.

Exact steps for others to reproduce the error
Open attached .blend file. A Cylinder and Cube is there. The cylinder has Mesh Deform Modifier connected to the cube.
Push bind button, but nothing happens.
I found that an error message is shown in system console, like attached image file, that says,
Cannot get mesh from cage object.


I tried this .blend file with another build with date 2019-03-30 19:37, and I succeeded the binding.
(So that I guess recent change makes this bug.)

Event Timeline

Sebastian Parborg (zeddb) lowered the priority of this task from Needs Triage by Developer to Confirmed, Medium.

@Sergey Sharybin (sergey) when reverting the changes with rB64c8d72ef1ad01dae0ef0a7a78a47d7c83a240d4 you missed the #if 0 statements in MOD_surfacedeform.c and MOD_meshdeform.c .

Now it seems like it is not longer possible to bind meshes.
I did some quick tests and just adding back in the commented out code seems to work fine (with additional free checks).
However, I'm unsure if this is the way you want this solved or not.

Sergey Sharybin (sergey) raised the priority of this task from Confirmed, Medium to Confirmed, High.Apr 4 2019, 10:28 AM

@Sebastian Parborg (zeddb), those ifdef-ed blocks are to be removed. The Bind operator is to pass evaluated object to the modifier stack, and copy bound data to original.

Push bind button, but nothing happens.

Not sure if avoidable – it works now, but "freezes" for several minutes the Blender UI

^C
Thread 1 "b8" received signal SIGINT, Interrupt.
0x000055555bfbaadf in Eigen::internal::assign_impl<Eigen::Block<Eigen::Matrix<double, -1, 1, 0, -1, 1>, -1, 1, false>, Eigen::Matrix<double, -1, 1, 0, -1, 1>, 3, 0, 0>::run(Eigen::Block<Eigen::Matrix<double, -1, 1, 0, -1, 1>, -1, 1, false>&, Eigen::Matrix<double, -1, 1, 0, -1, 1> const&)
    ()
(gdb) info threads 
  Id   Target Id         Frame 
* 1    Thread 0x7ffff7f61540 (LWP 25739) "b8" 0x000055555bfbaadf in Eigen::internal::assign_impl<Eigen::Block<Eigen::Matrix<double, -1, 1, 0, -1, 1>, -1, 1, false>, Eigen::Matrix<double, -1, 1, 0, -1, 1>, 3, 0, 0>::run(Eigen::Block<Eigen::Matrix<double, -1, 1, 0, -1, 1>, -1, 1, false>&, Eigen::Matrix<double, -1, 1, 0, -1, 1> const&) ()
  2    Thread 0x7fffce3ff700 (LWP 25746) "b8" 0x00007ffff5e686d6 in futex_abstimed_wait_cancelable (private=0, abstime=0x0, expected=0, 
    futex_word=0x7fffcf09c788) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  3    Thread 0x7fffcdbfe700 (LWP 25747) "b8" 0x00007ffff5e686d6 in futex_abstimed_wait_cancelable (private=0, abstime=0x0, expected=0, 
    futex_word=0x7fffcf09c788) at ../sysdeps/unix/sysv/linux/futex-internal.h:205
  6    Thread 0x7fffcc3ff700 (LWP 25751) "threaded-ml" 0x00007fffefafbbf9 in __GI___poll (fds=0x7fffcc40f640, nfds=3, timeout=712)
    at ../sysdeps/unix/sysv/linux/poll.c:29
  7    Thread 0x7fffcfb0f700 (LWP 25752) "b8" 0x00007ffff5e659f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x7fffcc8237b8) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  8    Thread 0x7fffb9cbf700 (LWP 25753) "gmain" 0x00007fffefafbbf9 in __GI___poll (fds=0x7fffcf021160, nfds=1, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
  9    Thread 0x7fffb8fff700 (LWP 25754) "gdbus" 0x00007fffefafbbf9 in __GI___poll (fds=0x7fffb8042060, nfds=2, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
  10   Thread 0x7fffb14ec700 (LWP 25756) "b8:cs0" 0x00007ffff5e659f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x7fffcc87350c) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  11   Thread 0x7fffb06c3700 (LWP 25757) "b8:disk$0" 0x00007ffff5e659f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x7fffccf9a408) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  12   Thread 0x7fffafec2700 (LWP 25758) "b8:sh0" 0x00007ffff5e659f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x7fffcc82868c) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  13   Thread 0x7fffaf6c1700 (LWP 25759) "b8:shlo0" 0x00007ffff5e659f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x7fffcc828c08) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  14   Thread 0x7fffaeec0700 (LWP 25760) "b8:gdrv0" 0x00007ffff5e659f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x7fffccf27490) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  15   Thread 0x7fffad3ff700 (LWP 25762) "b8" 0x00007ffff5e659f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
---Type <return> to continue, or q <return> to quit---
    futex_word=0x7fffccfcac84) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
  16   Thread 0x7fffacbfe700 (LWP 25763) "b8:gdrv0" 0x00007ffff5e659f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x7fffad533490) at ../sysdeps/unix/sysv/linux/futex-internal.h:88

Binding can take some time to process the math, but several minutes for the file from this report is quite extreme.
Please compare the result on same mesh and cage in 2.7, and if the latest 2.8 is measurably slower make a new report.

Please compare the result on same mesh and cage in 2.7, and if the latest 2.8 is measurably slower make a new report.

rBf12040e088b66748340b0d7472d1155596e0f9e2

The file from OP runs about 4 minutes on one core (3.3 GHz) 100%,
With v2.79 it takes about 10 seconds.

The main problem is that the Window UI isn't updated during the processing time. I was about to kill the process because I thought Blender no longer responds.

While copying the model, I also see this visual glitch. If you select both, the selected cylinder in 2.80 has no outline.