MomentFactory / Omniverse-MVR-GDTF-converter

Support of GDTF (General Device Type Format) and MVR (My Virtual Rig) files in USD for Omniverse
Other
17 stars 1 forks source link

Failed to convert assets ... since importer failed with [WinError 3] The system cannot find the path specified: ... #2

Closed oliver-ellmers-dimension closed 1 month ago

oliver-ellmers-dimension commented 4 months ago

Hello, I am receiving the following ERROR and then WARNING, when trying to import MVR files exported from Vectorworks containing light fixtures.

[Error] [mf.ov.mvr.mvrImporter] Failed to parse mvr file at ... Make sure it is not corrupt. 'NoneType' object has no attribute 'findall'

[Warning] [omni.kit.tool.asset_importer.importers_manager] Failed to convert assets ['D:/Projects/DNEG360/TSLIVE/Production/Vectorworks/_MVRExports/TSLIVE_Outernet_LightingMVR.mvr'] since importer failed with [WinError 3] The system cannot find the path specified: 'C:\\Users\\OLIVER~1.ELL\\AppData\\Local\\Temp/MF.OV.GDTF/'.

I have success importing the sample GDTF file Robe_Lighting@Robin_MMX_Blade@2023-07-25__Beam_revision.gdtf I have success importing the sample MVR file 7-fixtures-sample.mvr and fixture-line-gltf.mvr

The export process I am using out of Vectorworks is based on the gif I can see here and the documentation in this repo.

agrosjea commented 4 months ago

Hello Olivier, thanks for reporting this issue.

Which version of Omniverse do you use ? Do you actually import/convert the file or do you make a payload towards the MVR file ? Is there any chance you could send me your MVR file to test on my side ? If it is sensitive material you can send in private.

We haven't tested in multiple environment but the issue could be linked with the method we use to obtain the temp folder from your system. When opening an MVR file we unpack the GDTF files so that Omniverse can access hard GDTF files on your hard drive.

Does C:\\Users\\OLIVER~1.ELL\\AppData\\Local\\Temp/MF.OV.GDTF/ exist ? The use of backslash and slash in the same path, may also be a problem from our code...

Could you also try with your MVR file hosted on Nucleus instead of your local Hard drive ?

agrosjea commented 4 months ago

Also could you try if this file loads properly ?

https://drive.google.com/file/d/1R9uCNyBlVh5lwxejqzueq2uSxX70WJvz/view?usp=sharing

oliver-ellmers-dimension commented 4 months ago

Hello Arnaud, thanks for getting back to me so quickly.

I am currently using the latest version of Omniverse 1.9.11

In this screen record I verify the MVR file you supplied to test works. You will also see trying to drag my MVR directly in from the content browser crashes Composer. Trying to import it use the the Import+ button gives me the error and warning reportred. 2024-07-19 11-59-47.zip

C:\\Users\\OLIVER~1.ELL\\AppData\\Local\\Temp/MF.OV.GDTF/ does not exist

Trying to import my MVR hosted on a Nucleus server gives me the same error and warning

Will message you privately with the MVR - what is the best means of contact for you?

Thanks!

agrosjea commented 4 months ago

Hello ! Nice to see you also use our NDI extension :-) Ok good news the file I provided works. You can use my linkedin to contact me https://www.linkedin.com/in/arnaud-grosjean/ Best regards.

oliver-ellmers-dimension commented 4 months ago

Great, thank you - I have just connected with you on LinkedIn - I think once that is approved we can message privately on there. Thanks! Oliver

agrosjea commented 4 months ago

You file doesn't work on my end either. But strangely, reimporting in Vectorworks and Reeporting again to MVR worked fine with "Convert to USD) I am using Vectorworks Spotlight 2023 SP7 (Build 719048) (64bits) image

Payload doesnt crash but shows wrong scale. I'll send you my exported file in PM

oliver-ellmers-dimension commented 4 months ago

Hi Arnaud,

Strangely your re-exported file from VWX 2023 does import into Omniverse, but there is nothing visible in the viewer.

I am going to try installing VWX 2023 and test exporting MVR for myself from there - I am currently in 24.

What version of Omniverse and USD Composer are you working with? I am wondering if there are some strange compatibility issues we are facing not related to your extension?

agrosjea commented 4 months ago

I use USD COMPOSER 2023.2.5 on Windows. Looks like it is the same as yours... 🤔

oliver-ellmers-dimension commented 4 months ago

I am using the same USD Composer as you are, and now in VWX 2023 SP8.

Using the Convert to USD function, I am able to convert it - but it appears all geometry is lost/missing.

I have sent you a screen recoridng on PM to make sure I am following the correct process with your extension.

Thanks :)

oliver-ellmers-dimension commented 3 months ago

Hi Arnaud, I was wondering if you have had any further thoughts on what might be going wrong here? thanks, O.

agrosjea commented 2 months ago

Hello Oliver, I just came back from holiday, let see if I can push this issue to our devs through September. Best regards.

agrosjea commented 1 month ago

Hello Oliver Looking at your log with my colleague @fredericl-mf we noticed that you may use the wrong version of python for our 3ds to gltf converter to work. Could you try installing python 3.10 ? This could potentially load correctly your 3D models.

This only works with the -reexported file.

Your original MVR file doenst not load for other reason we are investigating for that.

Please note we are currently focusing on solving the Right click > convert to USD thing rather that the USD Fileformat plugin.

Also we observed that the Diablos fixtures had a important scale issue while the other fixtures seemed fine.

2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] Failed to convert 3ds file to gltf: C:\Users\OLIVER~1.ELL\AppData\Local\Temp\MF.OV.GDTF\models\3ds\base.3ds
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] error (Requires python 3.10): Installed Pythons found by py Launcher for Windows *
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] 
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] Requested Python version (3.10) not installed, use -0 for available pythons
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] 
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] error message: Python 3.10 not found!
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] 
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter]  -3.9-64
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] Failed to convert 3ds file to gltf: C:\Users\OLIVER~1.ELL\AppData\Local\Temp\MF.OV.GDTF\models\3ds\yoke.3ds
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] error (Requires python 3.10): Installed Pythons found by py Launcher for Windows *
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] 
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] Requested Python version (3.10) not installed, use -0 for available pythons
2024-07-23 16:10:15  [Error] [mf.ov.gdtf.gltfImporter] 

With the diablos on image

With the diablos off image

oliver-ellmers-dimension commented 1 month ago

Hi Arnaud,

I have installed Python 3.10, and have tried importing the MVR into VWX and re-exporting to try the right-click convert to USD workflow in Composer - and still getting the same errors as follows:

2024-10-14 15:39:40  [Error] [mf.ov.mvr.mvrImporter] Failed to parse mvr file at C:/Users/oliver.ellmers/Desktop/MVR/UEExport.mvr. Make sure it is not corrupt. 'NoneType' object has no attribute 'findall'
2024-10-14 15:39:40  [Warning] [omni.kit.tool.asset_importer.importers_manager] Failed to convert assets ['C:/Users/oliver.ellmers/Desktop/MVR/UEExport.mvr'] since importer failed with [WinError 3] The system cannot find the path specified: 'C:\\Users\\OLIVER~1.ELL\\AppData\\Local\\Temp/MF.OV.GDTF/'.

Could there be anything else I am missing?

agrosjea commented 1 month ago

Python 3.10 will help for converting legacy 3ds GDTF assets. The parse error is currently worked on by @fredericl-mf

oliver-ellmers-dimension commented 1 month ago

Hi @agrosjea, @fredericl-mf

I was doing some further testing yesterday on a separate machine to rule out there being any issues with my environment, and have been seeing the exact same problem with the MVR to USD conversion workflow.

Strangely however, I had on hand a different VWX file to test from a different venue, ran the same workflow, and everything seemed to work as expected...

I am wondering if there is something fundamentally wrong with the VWX project and/or the data it contains than is being exported in the MVR.

If it is useful - would you like to take a look at the VWX file? Perhaps we can take this conversation to a private email thread for now, and bring it back here if we can find a solution? My email address is oliver.ellmers@dimensionstudio.co

fredericl-mf commented 1 month ago

We've found the problem and are working on making sure both the extension and file format plugin are fixed. The problem is caused by a missing <ChildList> tag that we expect when parsing <Layer> tags in MVR files, but are missing at some places in your file. It's probably caused by the way Vectorworks export to MVR that we didn't catch, but it's actually compliant with the spec.

oliver-ellmers-dimension commented 1 month ago

Great news! Thank you for the update @fredericl-mf . I look forward to testing it out. Cheers

agrosjea commented 1 month ago

Hello Oliver, we made a new release that should solve some of your issues : https://github.com/MomentFactory/Omniverse-MVR-GDTF-converter/releases/tag/v1.0.1

For some reason it doesn't appear yet in the community extensions (Omniverse crawler takes some time to update), but if you want to try, just download the release zip and add the folder containing the 2 extensions in your extensions search path.

image

oliver-ellmers-dimension commented 1 month ago

Hi Arnaud, thank you for this - it is now working as expected.