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

Setup guide might want to mention a dependency of MWMBuilder on VC++ redistributable #17

Open
keyspace opened this issue May 12, 2020 · 0 comments

Comments

@keyspace
Copy link

keyspace commented May 12, 2020

I've followed the setup guide and it's been an almost flawless process, except for:

  • me not knowing the .blend file should be at a project's top-level (probably best handled in another guide), and the export-to-directory input behaving wonky due to that;
  • this error in log when trying to export in Blender:
: ERROR: 
    C:\Users\keysp\AppData\Roaming\SpaceEngineers\Mods\se-testcube\Models\TestCube.fbx:
    Assimp.AssimpException: Error loading unmanaged library from path: Assimp32.dll, see inner exception for details.
The specified module could not be found. (Exception from HRESULT: 0x8007007E) ---> System.IO.FileNotFoundException: The specified module could not be found. (Exception from HRESULT: 0x8007007E)
       --- End of inner exception stack trace ---
       at Assimp.Unmanaged.AssimpLibraryWindowsImplementation.NativeLoadLibrary(String path)
       at Assimp.Unmanaged.AssimpLibraryImplementation.LoadAssimpLibrary(String path)
       at Assimp.Unmanaged.AssimpLibrary.LoadLibrary()
       at Assimp.Unmanaged.AssimpLibrary.LoadIfNotLoaded()
       at Assimp.Unmanaged.AssimpLibrary.CreatePropertyStore()
       at Assimp.AssimpContext.CreateConfigs()
       at Assimp.AssimpContext.PrepareImport()
       at Assimp.AssimpContext.ImportFile(String file, PostProcessSteps postProcessFlags)
       at MwmBuilder.MyModelBuilder.Build(String filename, String intermediateDir, String outputDir, MyModelConfiguration configuration, Byte[] havokCollisionShapes, Boolean checkOpenBoundaries, Single[] lodDistances, Boolean overrideLods, Func`2 getMaterialByRef, IMyBuildLogger logger) in C:\3D_Projects\MWMBSourceStollie\MyModelBuilder.cs:line 87
       at MwmBuilder.ProgramContext.ProcessItem(ItemInfo item, String outputDir, Byte[] havokCollisionShapes, Boolean checkOpenBoundaries, Single[] lodDistances, Boolean overrideLods) in C:\3D_Projects\MWMBSourceStollie\ProgramContext.cs:line 416
       at MwmBuilder.ProgramContext.ProcessFile(String file, String outputDir, Dictionary`2 defaultVars, Boolean exportXml, Boolean forceBuild, Boolean checkOpenBoundaries, String lodDistances, Boolean overrideLods) in C:\3D_Projects\MWMBSourceStollie\ProgramContext.cs:line 366
       at MwmBuilder.ProgramContext.ProcessFileSafe(String file) in C:\3D_Projects\MWMBSourceStollie\ProgramContext.cs:line 156

Note that there is no indication in Blender that the MWM build failed; in fact, there's an "exported successfully" message - likely an issue for the SEUT repo and not this one.

As mentioned in this Medieval Engineers guide, the dependency is the VC++ redistributable; the version recommended there is VCredist for Visual Studio 2012 Update 4, in particular the 32-bit variant (vcredist_x86.exe, not vcredist_x64.exe) - since it's Assimp 32, after all. Installing the 64-bit variant will not help - verified that, JIC. Haven't checked newer versions.

Suggesting the redistributable be installed is probably more user-friendly than suggesting they add the MWMB folder to PATH (which, BTW, I haven't tried).


Most people are likely not to have this issue, from having installed the dependency earlier, for other games/projects.

@keyspace keyspace changed the title Setup guide might want to mention a dependency of MWMBuilder Setup guide might want to mention a dependency of MWMBuilder on VC++ redistributable May 12, 2020
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

1 participant