Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update KinectMocap4Blender to work in version 2.93 of blender #26

Open
Fredy-1422 opened this issue Jul 21, 2021 · 19 comments
Open

Update KinectMocap4Blender to work in version 2.93 of blender #26

Fredy-1422 opened this issue Jul 21, 2021 · 19 comments

Comments

@Fredy-1422
Copy link

after updating blender the .py file no longer functions as it errors out with unable to find .dll files to load

-error

@thelabcat
Copy link

Same issue. I'm willing to commission this, since it is part of my work.

@blakedgross
Copy link

I'm also hitting this

@ReadieFur
Copy link

Same issue. I'm willing to commission this, since it is part of my work.

Did you manage to do anything with this error, I get the same issue even if I go back to an older version of blender (2.83 to be exact)

@j2l
Copy link

j2l commented Jun 16, 2022

Same issue.
Anyone made it work?

@moraell, au secours :)

@thelabcat
Copy link

I think it is safe to say this project has died. We must now find an alternative for motion capture.

@gingershaped
Copy link

gingershaped commented Jun 19, 2022 via email

@j2l
Copy link

j2l commented Jun 19, 2022

Yes, please, go for it :) @GingerIndustries

@drahmel
Copy link

drahmel commented Jun 27, 2022

This fix worked for me -- you just need to copy the .pyd to the right place.

  1. Do the install as normal.

  2. Click the Activate checkbox and the error will tell you what directory is being searched for the .pyd. For me, it was:
    C:\Users\USERNAME\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons

  3. Open this directory in Windows Explorer and you should see the main plugin (kinect_mocap.py). Copy the .pyd to that directory (kinectMocap4Blender.pyd)

  4. Click the Activate checkbox and it will check this time

I tried this on both 2.82 and 2.91 and it works. Note that the KinectMocap4Blender addon panel only shows when you're in Pose mode in Blender.

@thelabcat
Copy link

I tried this on both 2.82 and 2.91 and it works. Note that the KinectMocap4Blender addon panel only shows when you're in Pose mode in Blender.

The issue started in 2.93 as stated in the title, so this is not relevant/not the same issue.

@drahmel
Copy link

drahmel commented Jun 28, 2022

Interesting. You are correct -- this is a 2.93 version problem. Turns out the folks at Blender upgraded the version of Python from 3.7 to 3.9 in that version. I did a dump of the .pyd dependencies and it looks like this:

File Type: DLL

Image has the following dependencies:

**python37.dll**
Kinect20.dll
MSVCP140.dll
VCRUNTIME140.dll
api-ms-win-crt-heap-l1-1-0.dll
api-ms-win-crt-runtime-l1-1-0.dll
KERNEL32.dll
api-ms-win-crt-math-l1-1-0.dll

Note the "python3.7" dependency in the DLL. I'm haven't been a Visual Studio guy for a number of years, but I'll look into compiling with a 3.9 dependency. Meanwhile, you can do a workaround of running Blender 2.91 portable version, do your motion capture there, save the .blend file, and then use it with the new version of Blender.

This is such a great addon, it seems worth the extra trouble until we get a new compile.

@gingershaped
Copy link

gingershaped commented Jun 28, 2022 via email

@drahmel
Copy link

drahmel commented Jun 28, 2022

Great! Is there a more generic Python DLL that can be used in case they upgrade Python again?

Also, although I think the Python version is the problem, it might be a change to Python itself. When I was looking for the solution last night, I thought it might be the issue specified in this SO (https://stackoverflow.com/questions/20201868/importerror-dll-load-failed-the-specified-module-could-not-be-found):

"Since Python 3.8, it is possible that Dependencies or dumpbin /dependents reports no dependency issue, but one still gets the error "The specified module could not be found". This is because the PATH variable is no longer used for resolving DLLs of binary modules!"

I tried using the "os.add_dll_directory(r"C:\path\to\your\dll\directory")" and it didn't seem to fix the problem, so I figured it was the Python version change.

@PierceLBrooks
Copy link

@drahmel have you tried affecting "sys.path" in some way like here? https://github.com/PierceLBrooks/Buildster/blob/pip/buildster/__main__.py#L13

@drahmel
Copy link

drahmel commented Jul 9, 2022

@PierceLBrooks No. I think the problem is that I don't know WHICH dll it isn't finding -- that's not in the error. I installed the Visual Studio Community edition and I'm going to try to compile it with that. I'm hoping that will show me the locations. Once I know, I will retry the add_dll_ method and I'll also try the one your suggested. Thanks!

@gingershaped
Copy link

gingershaped commented Oct 11, 2022 via email

@gingershaped
Copy link

Did this ever get solved? I just remembered about it :p

@Bebecu
Copy link

Bebecu commented Nov 28, 2022

I'm trying to make it work right now but I'm having this issue in all the 2.8X versions I have tried.

After reviewing the files, it looks like the file kinectMocap4Blender.pyd is not in the .zip uploaded here. Could that be the issue?

@gingershaped
Copy link

I've asked some friends for help

@Bebecu
Copy link

Bebecu commented Dec 12, 2022

I've asked some friends for help

I'm subscribed so I'll be notified when you comment anything! Hope they can help :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants