neverhood311 / Stop-motion-OBJ

A Blender add-on for importing a sequence of OBJ meshes as frames
GNU General Public License v3.0
674 stars 52 forks source link

Blender always pkill's itself. #52

Closed NicTanghe closed 4 years ago

NicTanghe commented 4 years ago

System Information Operating system:

linux x64 arch instantos. 3950x amd 750ti Nvidea

Addon version Broken: ( 2.0.2) Worked: (no idea)

Steps To Reproduce Steps to reproduce the behavior: import large set of more 100+ frames.

Expected behavior it doesn't pkill itself

explanation

Blender pkills itself either during the process of importing at a random 100+ frame or when it has done the last step.

Console


 (  0.0000 sec |   0.0000 sec) Importing OBJ '/home/tanghe/Houdini/mandelbulb/OBJ/1/mandelbulb99.obj'...
  (  0.0050 sec |   0.0048 sec) Parsing OBJ file...
    ( 12.6338 sec |  12.6284 sec) Done, loading materials and images...
    ( 12.6360 sec |  12.6306 sec) Done, building geometries (verts:2015632 faces:2014342 materials: 1 smoothgroups:0) ...
    ( 18.7850 sec |  18.7796 p

Info: Deleted 1 object(s)
[1]    47465 killed     blender
neverhood311 commented 4 years ago

I've never before encountered this error (in Windows) while importing.

Roughly how large is each of your meshes? Would you be able to share a few of them with so I can test on my end?

NicTanghe commented 4 years ago

between 100 mb and 210 mb. so i have no idea where i could make these available to u

neverhood311 commented 4 years ago

So you're importing 100+ files that are 100+ MB each? I'm willing to bet you're just running out of memory. Versions 2.0.2 and earlier attempt to load the entire sequence into memory. As a very conservative estimate, you're loading at least 10,000 MB into Blender.

I'm currently working on the next major version of the addon and I've included a feature to address this specific issue. Instead of loading the entire sequence at the beginning, it loads meshes on-demand, then deletes them once they're no longer needed. I'm currently looking for alpha/beta testers for the next version. Would you be willing to try it out?

NicTanghe commented 4 years ago

ive have spend around 2 days on trying to get this to work so yes i'm verry willing to try it out. Where can i dl it ?

neverhood311 commented 4 years ago

Ok, try installing this version of the addon: 3.0.0-alpha.9. You'll have to uninstall or disable your existing version first. And you might have to manually copy the new version into your addons folder.

Also, the way you import a sequence has changed. Instead of doing Add > Mesh > Mesh Sequence, you have to do File > Import > Mesh Sequence. That will bring up the file import window. Just navigate to the folder where your sequence is located, fill in the file name prefix, and change Cache Mode from Cached (which imports every mesh at the beginning) to Streaming (which loads meshes on demand). Don't select any files, just leave the big text box blank. Once the first mesh loads, go look at the Mesh Sequence settings. Change your Cache Size to 2 or 3 or so (this is how many meshes Blender will keep in memory at any given time. '0' means "keep everything"). Whenever you go to the next frame, the addon will load the next mesh if it's not already in memory. If you don't want it to automatically load meshes, just uncheck the Stream Meshes During Playback box.

Keep in mind that this is an alpha version. It's probably got bugs and it's probably going to change significantly over the next few months. But if it helps solve your problem, I'm happy to let you test it out.

NicTanghe commented 4 years ago

anny where that addon folder is on linux ?

neverhood311 commented 4 years ago

I don't know off the top of my head, but see this post. Hopefully this answer applies to your OS also.

NicTanghe commented 4 years ago

Do i just git clone it or ?

neverhood311 commented 4 years ago

You can clone it or just download the source as a ZIP.

NicTanghe commented 4 years ago

this fixes the issue thx dude.

neverhood311 commented 4 years ago

Good to hear. I'm hoping to start Beta testing within a few weeks, then release a final version sometime during Summer 2020.