Author Topic: Fatal Crashing: Cannot Connect Input Mesh Maps  (Read 561 times)

Hi all!
I was wondering if anyone might be able to help with an issue im having.
Ive been working on some Substance tools within maya and Ive run into an issue where I cant connect input mesh maps to a substance node.

I created a sbsar file in designer using the "painter" preset so that it came with the usual mesh map inputs.

Ive tried several different permutations of image formats and bit depths for the input maps and I keep running into fatal crashes. Im at the point where im not sure where the issue is or how to proceed.

Any help would be most appreciated, ive attached the Maya Crash log.

Code: [Select]
//=====================================================
Maya Crash Report
//=====================================================

Exception code: C0000005: ACCESS_VIOLATION - illegal read at address 0x80110000
Fault address:  F61112DE in C:\WINDOWS\SYSTEM32\VCRUNTIME140.dll
0001:000002DE Logical offset (see .map file for location)

Call stack:
Module:  C:\Program Files\Allegorithmic\Substance in Maya\2020\plug-ins\substancemaya.mll (-exported-)
Location: substancemaya.mlluninitializePlugin + 4003 bytes
Decl: class Autodesk::Maya::OpenMaya20200000::MStatus __cdecl uninitializePlugin(class Autodesk::Maya::OpenMaya20200000::MObject)
Module:  C:\Program Files\Allegorithmic\Substance in Maya\2020\plug-ins\substancemaya.mll (-exported-)
Location: substancemaya.mlluninitializePlugin + 46E5 bytes
Decl: class Autodesk::Maya::OpenMaya20200000::MStatus __cdecl uninitializePlugin(class Autodesk::Maya::OpenMaya20200000::MObject)
Module:  C:\Program Files\Allegorithmic\Substance in Maya\2020\plug-ins\substancemaya.mll (-exported-)
Location: substancemaya.mlluninitializePlugin + 24E7D bytes
Decl: class Autodesk::Maya::OpenMaya20200000::MStatus __cdecl uninitializePlugin(class Autodesk::Maya::OpenMaya20200000::MObject)
Module:  C:\Program Files\Allegorithmic\Substance in Maya\2020\plug-ins\substancemaya.mll (-exported-)
Location: substancemaya.mlluninitializePlugin + 1F726 bytes
Decl: class Autodesk::Maya::OpenMaya20200000::MStatus __cdecl uninitializePlugin(class Autodesk::Maya::OpenMaya20200000::MObject)
Module:  C:\Program Files\Autodesk\Maya2020\bin\OpenMaya.dll (-exported-)
Location: OpenMaya.dllTHclient::internalCameraLayerPreCallbackCB + 8D5C bytes
Decl: public: static void __cdecl THclient::internalCameraLayerPreCallbackCB(class Tclient * __ptr64,class TclientServer * __ptr64,class TserverMsg const & __ptr64)
Module:  C:\Program Files\Autodesk\Maya2020\bin\OpenMaya.dll (-exported-)
Location: OpenMaya.dllTHclient::userAttributeChangedCallback + C1 bytes
Decl: public: virtual void __cdecl THclient::userAttributeChangedCallback(class TclientServer * __ptr64,class TserverMsg const & __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\OpenMaya.dll (-exported-)
Location: OpenMaya.dllTHclient::userAttributeChangedCallbackCB + 42 bytes
Decl: public: static void __cdecl THclient::userAttributeChangedCallbackCB(class Tclient * __ptr64,class TclientServer * __ptr64,class TserverMsg const & __ptr64)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Foundation.dll (-exported-)
Location: Foundation.dllTclientServer::notifyClients + 16B bytes
Decl: protected: virtual void __cdecl TclientServer::notifyClients(class TserverMsg const & __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Foundation.dll (-exported-)
Location: Foundation.dllTdelayedClientServer::notifyClients + 7E bytes
Decl: protected: virtual void __cdecl TdelayedClientServer::notifyClients(class TserverMsg const & __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\DependEngine.dll (-exported-)
Location: DependEngine.dllTdependNode::sendConnectionChangedMsg + 76 bytes
Decl: protected: void __cdecl TdependNode::sendConnectionChangedMsg(class Tplug const & __ptr64,class Tplug const & __ptr64,int,bool) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\DependEngine.dll (-exported-)
Location: DependEngine.dllTplug::connectTo + D00 bytes
Decl: private: bool __cdecl Tplug::connectTo(class Tplug & __ptr64,class Tplug * __ptr64 * __ptr64,class Tplug * __ptr64 * __ptr64,bool,bool) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\DependEngine.dll (-exported-)
Location: DependEngine.dllTDGcommand::sAddExtensionAttributesRecursive + 1E0E bytes
Decl: private: static bool __cdecl TDGcommand::sAddExtensionAttributesRecursive(class TdependNodeClass & __ptr64,class Tattribute & __ptr64,bool)
Module:  C:\Program Files\Autodesk\Maya2020\bin\DependEngine.dll (-exported-)
Location: DependEngine.dllTDGcommand::doDgToMark + 5C7 bytes
Decl: public: virtual bool __cdecl TDGcommand::doDgToMark(unsigned int) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\DependEngine.dll (-exported-)
Location: DependEngine.dllTDGcommand::doSomeDG + 76 bytes
Decl: public: virtual bool __cdecl TDGcommand::doSomeDG(unsigned int) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\DependEngine.dll (-exported-)
Location: DependEngine.dllTDGcommand::doDG + 2A bytes
Decl: public: virtual bool __cdecl TDGcommand::doDG(void) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Shared.dll (-exported-)
Location: Shared.dllTconnectAttributeCmd::redoIt + F4 bytes
Decl: public: virtual int __cdecl TconnectAttributeCmd::redoIt(void) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Shared.dll (-exported-)
Location: Shared.dllTconnectAttributeCmd::doIt + 540 bytes
Decl: public: virtual int __cdecl TconnectAttributeCmd::doIt(class TargList & __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\CommandEngine.dll (-exported-)
Location: CommandEngine.dllTmetaCommand::doCommand + 68 bytes
Decl: public: virtual bool __cdecl TmetaCommand::doCommand(class TargList & __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\CommandEngine.dll (-exported-)
Location: CommandEngine.dllTpythonInterpreter::dispatchMayaCommand + 60D bytes
Decl: public: static struct _object * __ptr64 __cdecl TpythonInterpreter::dispatchMayaCommand(class TmetaCommand & __ptr64,struct _object * __ptr64,struct _object * __ptr64)
Module:  C:\Program Files\Autodesk\Maya2020\bin\python27.dll (-exported-)
Location: python27.dllPyCFunction_Call + 76 bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\python27.dll (-exported-)
Location: python27.dllPyEval_GetFuncDesc + 364 bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\python27.dll (-exported-)
Location: python27.dllPyEval_EvalFrameEx + 2DBC bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\python27.dll (-exported-)
Location: python27.dllPyEval_EvalCodeEx + 94F bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\python27.dll (-exported-)
Location: python27.dllPyFunction_SetClosure + BA8 bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\python27.dll (-exported-)
Location: python27.dllPyObject_Call + 86 bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\python27.dll (-exported-)
Location: python27.dllPyEval_CallObjectWithKeywords + CC bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\CommandEngine.dll (-exported-)
Location: CommandEngine.dllTpythonInterpreter::callPythonFunction + 75 bytes
Decl: public: struct _object * __ptr64 __cdecl TpythonInterpreter::callPythonFunction(struct _object * __ptr64,struct _object * __ptr64,struct _object * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\ExtensionLayer.dll (-exported-)
Location: ExtensionLayer.dllTscriptActionMixin::execute + 334 bytes
Decl: protected: bool __cdecl TscriptActionMixin::execute(class Tevent const & __ptr64,class std::unique_ptr<class TinterpreterResult,struct std::default_delete<class TinterpreterResult> > * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\ExtensionLayer.dll (-exported-)
Location: ExtensionLayer.dllTaction::performAction + 137 bytes
Decl: private: void __cdecl Taction::performAction(class Tevent const & __ptr64,char const * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\ExtensionLayer.dll (-exported-)
Location: ExtensionLayer.dllTaction::doIt + 32 bytes
Decl: public: void __cdecl Taction::doIt(void) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Core.dll (-exported-)
Location: Qt5Core.dllQMetaObject::activate + 5D8 bytes
Decl: public: static void __cdecl QMetaObject::activate(class QObject * __ptr64,int,int,void * __ptr64 * __ptr64)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQAbstractButton::clicked + A8 bytes
Decl: public: void __cdecl QAbstractButton::clicked(bool) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQAbstractButton::click + 191 bytes
Decl: public: void __cdecl QAbstractButton::click(void) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQAbstractButton::mouseReleaseEvent + 8F bytes
Decl: protected: virtual void __cdecl QAbstractButton::mouseReleaseEvent(class QMouseEvent * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQWidget::event + E4 bytes
Decl: protected: virtual bool __cdecl QWidget::event(class QEvent * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQApplicationPrivate::notify_helper + 13D bytes
Decl: public: bool __cdecl QApplicationPrivate::notify_helper(class QObject * __ptr64,class QEvent * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQApplication::notify + 8A9 bytes
Decl: public: virtual bool __cdecl QApplication::notify(class QObject * __ptr64,class QEvent * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\ExtensionLayer.dll (-exported-)
Location: ExtensionLayer.dllQmayaApplication::currentMousePos + 6FA bytes
Decl: public: static class QPoint __cdecl QmayaApplication::currentMousePos(void)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Core.dll (-exported-)
Location: Qt5Core.dllQCoreApplication::notifyInternal2 + B9 bytes
Decl: private: static bool __cdecl QCoreApplication::notifyInternal2(class QObject * __ptr64,class QEvent * __ptr64)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQApplicationPrivate::sendMouseEvent + 3E3 bytes
Decl: public: static bool __cdecl QApplicationPrivate::sendMouseEvent(class QWidget * __ptr64,class QMouseEvent * __ptr64,class QWidget * __ptr64,class QWidget * __ptr64,class QWidget * __ptr64 * __ptr64,class QPointer<class QWidget> & __ptr64,bool,bool)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQSizePolicy::QSizePolicy + 2C1D bytes
Decl: public: __cdecl QSizePolicy::QSizePolicy(void) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQSizePolicy::QSizePolicy + A65 bytes
Decl: public: __cdecl QSizePolicy::QSizePolicy(void) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQApplicationPrivate::notify_helper + 13D bytes
Decl: public: bool __cdecl QApplicationPrivate::notify_helper(class QObject * __ptr64,class QEvent * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Widgets.dll (-exported-)
Location: Qt5Widgets.dllQApplication::notify + 1BA7 bytes
Decl: public: virtual bool __cdecl QApplication::notify(class QObject * __ptr64,class QEvent * __ptr64) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\ExtensionLayer.dll (-exported-)
Location: ExtensionLayer.dllQmayaApplication::currentMousePos + 6FA bytes
Decl: public: static class QPoint __cdecl QmayaApplication::currentMousePos(void)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Core.dll (-exported-)
Location: Qt5Core.dllQCoreApplication::notifyInternal2 + B9 bytes
Decl: private: static bool __cdecl QCoreApplication::notifyInternal2(class QObject * __ptr64,class QEvent * __ptr64)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Gui.dll (-exported-)
Location: Qt5Gui.dllQGuiApplicationPrivate::processMouseEvent + 911 bytes
Decl: public: static void __cdecl QGuiApplicationPrivate::processMouseEvent(class QWindowSystemInterfacePrivate::MouseEvent * __ptr64)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Gui.dll (-exported-)
Location: Qt5Gui.dllQWindowSystemInterface::sendWindowSystemEvents + 9B bytes
Decl: public: static bool __cdecl QWindowSystemInterface::sendWindowSystemEvents(class QFlags<enum QEventLoop::ProcessEventsFlag>)
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Core.dll (-exported-)
Location: Qt5Core.dllQEventDispatcherWin32::processEvents + DE5 bytes
Decl: public: virtual bool __cdecl QEventDispatcherWin32::processEvents(class QFlags<enum QEventLoop::ProcessEventsFlag>) __ptr64
Module:  C:\WINDOWS\System32\USER32.dll (-exported-)
Location: USER32.dllCallWindowProcW + 3BD bytes
Module:  C:\WINDOWS\System32\USER32.dll (-exported-)
Location: USER32.dllDispatchMessageW + 1F2 bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Core.dll (-exported-)
Location: Qt5Core.dllQEventDispatcherWin32::processEvents + 5DB bytes
Decl: public: virtual bool __cdecl QEventDispatcherWin32::processEvents(class QFlags<enum QEventLoop::ProcessEventsFlag>) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\plugins\platforms\qwindows.dll (-exported-)
Location: qwindows.dllqt_plugin_query_metadata + 1E99 bytes
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Core.dll (-exported-)
Location: Qt5Core.dllQEventLoop::exec + 1FB bytes
Decl: public: int __cdecl QEventLoop::exec(class QFlags<enum QEventLoop::ProcessEventsFlag>) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\Qt5Core.dll (-exported-)
Location: Qt5Core.dllQCoreApplication::exec + 15E bytes
Decl: public: static int __cdecl QCoreApplication::exec(void)
Module:  C:\Program Files\Autodesk\Maya2020\bin\ExtensionLayer.dll (-exported-)
Location: ExtensionLayer.dllTapplication::start + D8 bytes
Decl: public: void __cdecl Tapplication::start(void) __ptr64
Module:  C:\Program Files\Autodesk\Maya2020\bin\maya.exe (-exported-)
Location: maya.exeTiteratorWrapperFwd<TscenePartitions::ConstIteratorDescriptor,TiteratorWrapper<TscenePartitions::ConstIteratorDescriptor> >::operator++ + 103D bytes
Decl: public: class TiteratorWrapper<struct TscenePartitions::ConstIteratorDescriptor> & __ptr64 __cdecl TiteratorWrapperFwd<struct TscenePartitions::ConstIteratorDescriptor,class TiteratorWrapper<struct TscenePartitions::ConstIteratorDescriptor> >::operator++
Module:  C:\Program Files\Autodesk\Maya2020\bin\maya.exe (-exported-)
Location: maya.exeTiteratorWrapperFwd<TscenePartitions::ConstIteratorDescriptor,TiteratorWrapper<TscenePartitions::ConstIteratorDescriptor> >::operator++ + 137E7 bytes
Decl: public: class TiteratorWrapper<struct TscenePartitions::ConstIteratorDescriptor> & __ptr64 __cdecl TiteratorWrapperFwd<struct TscenePartitions::ConstIteratorDescriptor,class TiteratorWrapper<struct TscenePartitions::ConstIteratorDescriptor> >::operator++
Module:  C:\Program Files\Autodesk\Maya2020\bin\maya.exe (-exported-)
Location: maya.exeTiteratorWrapperFwd<TscenePartitions::ConstIteratorDescriptor,TiteratorWrapper<TscenePartitions::ConstIteratorDescriptor> >::operator++ + 1282A bytes
Decl: public: class TiteratorWrapper<struct TscenePartitions::ConstIteratorDescriptor> & __ptr64 __cdecl TiteratorWrapperFwd<struct TscenePartitions::ConstIteratorDescriptor,class TiteratorWrapper<struct TscenePartitions::ConstIteratorDescriptor> >::operator++
Module:  C:\WINDOWS\System32\KERNEL32.DLL (-exported-)
Location: KERNEL32.DLLBaseThreadInitThunk + 14 bytes
Module:  C:\WINDOWS\SYSTEM32\ntdll.dll (-exported-)
Location: ntdll.dllRtlUserThreadStart + 21 bytes
End of stack
Cg Artist @ ILM London

We didn't add anything to work with mesh inputs, so I don't think that will work.

We can add that for a future release though.
Software Engineer, Integrations
Maya, 3ds Max and Core Libraries

So its just not possible to read in texture files as inputs at all?

I thought it was something I had gotten wrong somewhere as the first time I tried to hook everything up and make a vray shader it seemed to work just fine (image attached) and its reading in the curvature and ao successfully. And I can unhook and rehook the maps to this node with no issues or crashing.

Attaching new maps however will cause a crash, which I think is happening whenever it has to recalculate the material or cache new maps.

Itd be really brilliant to be able to add mesh maps/textures as inputs maya as for some simple things itd save exporting everything to painter entirely. (Which is the tool im trying to build at the moment.)
Cg Artist @ ILM London

Texture inputs should work, I thought you might be trying to do something more esoteric like piping mesh data into an sbsar, need more coffee before reading. I'll see if I can repro your issue.

Can you send me the specific sbsar that is crashing? Also, can you use the about dialog and paste the output from copy to clipboard, so that we know what version of the plugin, etc.?
Last Edit: June 17, 2020, 03:42:11 pm
Software Engineer, Integrations
Maya, 3ds Max and Core Libraries

Texture inputs should work, I thought you might be trying to do something more esoteric like piping mesh data into an sbsar, need more coffee before reading. I'll see if I can repro your issue.

Can you send me the specific sbsar that is crashing? Also, can you use the about dialog and paste the output from copy to clipboard, so that we know what version of the plugin, etc.?

Thank you so much for helping to look into this!
Its most appreciated, ive been banging my head against it for the better part of a day now.

Ive attached the SBS, and for the mesh maps im just using the default sbsbaker settings from substance toolkit to bake them.

Output from the "about" is as follows.
Code: [Select]
2.0.3+main.2020.8250
Cg Artist @ ILM London

As a quick note ive just updated to the latest plugin version and Im still experiencing crashes when attaching input textures.
Cg Artist @ ILM London

Quick update , ive done some more tests and anything involving input textures seems to result in a crash at somepoint.
-------------------------------------------------------------------------------------------------------------------------------------

So Ive tested it by making a very simple sbsar that only has a few nodes using the Painter w/maps preset.

Im plugging an input AO map into the basecolor and a curvature + curve modifier into the metallic channel.

Setting up the shader in maya I made the node, loaded the sbsar and created a vray network.

I then attached both maps and it seemed to work ok. However I then tried to change the file that the AO file node was pointing to and this led to the same fatal crash. Will continue to investigate.
Tried to set it up again this time loading the same file that caused the crash from a different drive in case it had to do with permissions on C:. Instant fatal crash. Im wondering if it could be related to the texture files themselves at this point.

Ive also tested without using the painter preset in designer this time, and just using a default material with a colour input hooked into basecolor labeled as ambient_occlusion. Making a vray shader then trying to connect the map results in an instant crash.

If I dont create a vray network first and hook up the map, it seems to work. But if I break and reconnect the map I get an instant crash.
Cg Artist @ ILM London

I decided to test it on my work machine (Linux as opposed to my Windows 64 machine I have at home).

Using the same combination of sbsar's and maps in Maya 2020 (but an older version of the plugin).
I get no fatal crashes but it seems the nodes are not reading textures in properly at all when hooked into the substance node, theres a lot of visual artifacting and corruption apparent in them.

Ive attached images of what the file should look like, and what it looks like when read into the node.
This corruption only seems to happen on images I connect to the node, removing them reverts it.
Cg Artist @ ILM London

When there's weird issues with texture sampling, sometimes it will crash on one system, like Windows and then just behave weird on Linux or MacOS, or vice versa.
Software Engineer, Integrations
Maya, 3ds Max and Core Libraries

When there's weird issues with texture sampling, sometimes it will crash on one system, like Windows and then just behave weird on Linux or MacOS, or vice versa.

I figured that might be the case, but im still unsure specifically whats causing the problem as ive tried everything I can think of, including moving the cache location to different drives, using different map formats and bit depths aswell as different renderers. Because as it stands I cannot use texture inputs of any sort.
Cg Artist @ ILM London

My guess is that we're sampling some format incorrectly. I'll see about it today after doing some work for 3ds Max.

I'll see if we can do another patch release (2.1.4) fixing some of the issues this week. Adobe is off entirely next week, so it will either be a hotfix this week or after the 4th of July when we return.
Software Engineer, Integrations
Maya, 3ds Max and Core Libraries

My guess is that we're sampling some format incorrectly. I'll see about it today after doing some work for 3ds Max.

I'll see if we can do another patch release (2.1.4) fixing some of the issues this week. Adobe is off entirely next week, so it will either be a hotfix this week or after the 4th of July when we return.

Thank you!
Just as a note in that case I've been mostly using tiff and png files baked using the default settings in sbsbaker.
And I've also been altering the bit depth just to check if that was the issue. Hope that's of some help!
Cg Artist @ ILM London