Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
132 stars 2 forks source link

Model files importation hangs on some files #2428

Open jae1911 opened 2 months ago

jae1911 commented 2 months ago

Describe the bug?

When importing large model files (300Mb+), the importation process hangs after a while.

This has been reproduced with:

Both with and without embedded textures.

At most, I let it run around 2h without any results.

To Reproduce

  1. Drag-and-drop your model into Resonite's window
  2. Select 3D Model -> Regular / Avatar -> Auto Scale -> (Optional) Advanced Settings and uncheck:
    • Import bones
    • Import animations
    • Setup IK
  3. Hit run import
  4. Observe that after a while, the import is stuck

Expected behavior

The model should import, even if slowly.

Screenshots

Importer typically hangs at this stage with the specified model: Resonite_QBXwbbE2ne

Giving this in the background jobs: Resonite_czOWEjkP5N

Resonite Version Number

Beta 2024.6.25.1149

What Platforms does this occur on?

Windows

What headset if any do you use?

Quest Pro, Index, Desktop

Log Files

This log is not the 2h one as it had mods. This one was let run for around 20 minutes, and still shows the same behaviour.

TETHYS - 2024.6.25.1149 - 2024-06-30 17_10_48.log

Additional Context

3D file is available upon request.

Reporters

U-j4 | j4.lc (Discord)

Frooxius commented 2 months ago

Can you send me any sample models to test this with please?

jae1911 commented 2 months ago

Updated the title of the issue since it seems some smaller files can also reproduce the behaviour.

For instance, I exported an OBJ from Mineways, then loaded it into Blender perfectly. I then exported it to glTF and tried loading it into Resonite which brought the same issue

blender_0DEg9i0rML Resonite_UUcChHydxc Resonite_roIQLgu96I

Model: https://i.j4.lc/3d/Mineways/tower.glb

Logs: TETHYS - 2024.6.25.1149 - 2024-06-30 21_07_09.log

As a comparison, the glTF of one of my worlds loads up pretty much instantly: Resonite_ILwnrGqS1J


Edit, other file that reproduces it as well: https://i.j4.lc/3d/Mineways/farms.obj

lxw404 commented 1 month ago

I've just run into this with relatively small file as well.

randn_1x784x300.zip

This imports into blender/other modeling software instantly (>0.4s), however it hangs in Resonite infinitely with the same background jobs as shown above.

Resonite_3HCGUY43I8

Log: Infinite Model Import Hang - 2024.7.17.1173 - 2024-07-17 20_22_12.log

The weird part about this is that the log reports that it has imported, but the importer is still seemingly doing something, however there are no additional log entries stating what is going on:

8:23:55 PM.735 ( 48 FPS)    Imported scene. Meshes: 1, Materials: 1, Animations: 0, Textures: 0
lxw404 commented 1 month ago

I went to test this again and after ~17 minutes, the model finally actually imports, but there is no other indication on what is happening from the time it "Imported scene" to "Finished import".

2:17:48 PM.486 ( 10 FPS)    Importing files with Asset Class Model:
D:\Backup\Documents\3D\Blender\randn_1x784x300.fbx
...
2:18:40 PM.946 ( 60 FPS)    Imported scene. Meshes: 1, Materials: 1, Animations: 0, Textures: 0
...
2:34:24 PM.296 ( 59 FPS)    Finished import

Very Long Import randn1x748x300.fbx - 2024.7.17.1173 - 2024-07-18 14_16_27.log

The above model has a total of $470,400$ triangles.

On a second test, I tried importing another model with 1 quarter of the total ($117,600$): randn_1x196x300.zip

This does take a little bit still but manages to import in about 1 minute instead which is somewhat closer to normal, though the difference on these two tests alone shows that there could be some sort of exponential factor happening.

On a third test, I've tested importing a normal 3D scan with $991,464$ triangles and it imports practically instantly.

The quads in the long importing ones are all separate from one another, but still part of the same mesh. I'm not sure if this is the case in the models provided in other tests, but I would normally expect this should not negatively impact import times.