William Faucher’s EasySnow on M1 Mac crashes

Did someone manage to run the above mentioned plugin on Mac M-Series chips? My 5.4 and 5.3 keep crashing. It has something to do with the Niagara Blueprint. Can someone please hint me at the problem?

LoginId:15c65ad2ab48da0ccfacd09ebf6b7865
EpicAccountId:8014b7d66f094c939148aa4fb9c15373

Caught signal

clang::spirv::InitListHandler::createInitForStructType(clang::QualType, clang::SourceLocation, clang::SourceRange) Address = 0x346e1cd08 (filename not found) [in libdxcompiler.dylib]
clang::spirv::InitListHandler::createInitForType(clang::QualType, clang::SourceLocation, clang::SourceRange) Address = 0x346e1ba94 (filename not found) [in libdxcompiler.dylib]
clang::spirv::SpirvEmitter::doInitListExpr(clang::InitListExpr const*, clang::SourceRange) Address = 0x346e46298 (filename not found) [in libdxcompiler.dylib]
clang::spirv::SpirvEmitter::loadIfGLValue(clang::Expr const*, clang::SourceRange) Address = 0x346e48a94 (filename not found) [in libdxcompiler.dylib]
clang::spirv::SpirvEmitter::doVarDecl(clang::VarDecl const*) Address = 0x346e402a4 (filename not found) [in libdxcompiler.dylib]
clang::spirv::SpirvEmitter::doStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) Address = 0x346e42208 (filename not found) [in libdxcompiler.dylib]
clang::spirv::SpirvEmitter::doStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) Address = 0x346e41d08 (filename not found) [in libdxcompiler.dylib]
clang::spirv::SpirvEmitter::doFunctionDecl(clang::FunctionDecl const*) Address = 0x346e410c8 (filename not found) [in libdxcompiler.dylib]
clang::spirv::SpirvEmitter::HandleTranslationUnit(clang::ASTContext&) Address = 0x346e3db70 (filename not found) [in libdxcompiler.dylib]
clang::ParseAST(clang::Sema&, bool, bool) Address = 0x346e83fc4 (filename not found) [in libdxcompiler.dylib]
clang::FrontendAction::Execute() Address = 0x346820634 (filename not found) [in libdxcompiler.dylib]
DxcCompiler::Compile(DxcBuffer const*, wchar_t const**, unsigned int, IDxcIncludeHandler*, _GUID const&, void**) Address = 0x34618b0a0 (filename not found) [in libdxcompiler.dylib]
hlsl::DxcCompilerAdapter::WrapCompile(bool, IDxcBlob*, wchar_t const*, wchar_t const*, wchar_t const*, wchar_t const**, unsigned int, DxcDefine const*, unsigned int, IDxcIncludeHandler*, IDxcOperationResult**, wchar_t**, IDxcBlob**) Address = 0x3461870e8 (filename not found) [in libdxcompiler.dylib]
hlsl::DxcCompilerAdapter::CompileWithDebug(IDxcBlob*, wchar_t const*, wchar_t const*, wchar_t const*, wchar_t const**, unsigned int, DxcDefine const*, unsigned int, IDxcIncludeHandler*, IDxcOperationResult**, wchar_t**, IDxcBlob**) Address = 0x346187f44 (filename not found) [in libdxcompiler.dylib]
hlsl::DxcCompilerAdapter::Compile(IDxcBlob*, wchar_t const*, wchar_t const*, wchar_t const*, wchar_t const**, unsigned int, DxcDefine const*, unsigned int, IDxcIncludeHandler*, IDxcOperationResult**) Address = 0x346188374 (filename not found) [in libdxcompiler.dylib]
(anonymous namespace)::CompileToBinary(ShaderConductor::Compiler::SourceDesc const&, ShaderConductor::Compiler::Options const&, ShaderConductor::ShadingLanguage, bool) Address = 0x342691e10 (filename not found) [in libShaderConductor.dylib]
ShaderConductor::Compiler::Compile(ShaderConductor::Compiler::SourceDesc const&, ShaderConductor::Compiler::Options const&, ShaderConductor::Compiler::TargetDesc const*, unsigned int, ShaderConductor::Compiler::ResultDesc*) Address = 0x34268ff0c (filename not found) [in libShaderConductor.dylib]
ShaderConductor::Compiler::Compile(ShaderConductor::Compiler::SourceDesc const&, ShaderConductor::Compiler::Options const&, ShaderConductor::Compiler::TargetDesc const&) Address = 0x34268fc3c (filename not found) [in libShaderConductor.dylib]
CrossCompiler::FShaderConductorContext::CompileHlslToSpirv(CrossCompiler::FShaderConductorOptions const&, TArray<unsigned int, TSizedDefaultAllocator<32>>&) Address = 0x3416a6da0 (filename not found) [in UnrealEditor-ShaderCompilerCommon.dylib]
DoCompileMetalShader(FShaderCompilerInput const&, FShaderCompilerOutput&, FString const&, FString const&, FSHAHash, unsigned int, unsigned int, EMetalGPUSemantics, unsigned int, EShaderFrequency, bool, FString const&, FString const&) Address = 0x3415b180c (filename not found) [in UnrealEditor-MetalShaderFormat.dylib]
CompileShader_Metal(FShaderCompilerInput const&, FShaderCompilerOutput&, FString const&) Address = 0x3415c3d18 (filename not found) [in UnrealEditor-MetalShaderFormat.dylib]
FInternalShaderCompilerFunctions::CompileShaderInternal(IShaderFormat const*, FShaderCompileJob&, FString const&, FString&, FString&, int*) Address = 0x106787edc (filename not found) [in UnrealEditor-RenderCore.dylib]
CompileShader(TArray<IShaderFormat const*, TSizedDefaultAllocator<32>> const&, FShaderCompileJob&, FString const&, int*) Address = 0x106786f48 (filename not found) [in UnrealEditor-RenderCore.dylib]
FShaderCompileUtilities::ExecuteShaderCompileJob(FShaderCommonCompileJob&) Address = 0x11b804a6c (filename not found) [in UnrealEditor-Engine.dylib]
FShaderCompileThreadRunnable::CompileDirectlyThroughDll() Address = 0x11b804694 (filename not found) [in UnrealEditor-Engine.dylib]
FShaderCompileThreadRunnable::CompilingLoop() Address = 0x11b804d20 (filename not found) [in UnrealEditor-Engine.dylib]
FShaderCompileThreadRunnableBase::Run() Address = 0x11b800e40 (filename not found) [in UnrealEditor-Engine.dylib]
FRunnableThreadPThread::Run() Address = 0x108b8ce4c (filename not found) [in UnrealEditor-Core.dylib]
FRunnableThreadPThread::_ThreadProc(void*) Address = 0x108aede50 (filename not found) [in UnrealEditor-Core.dylib]
Unknown() Address = 0x18a8daf94 (filename not found) [in libsystem_pthread.dylib]
Unknown() Address = 0x18a8d5d34 (filename not found) [in libsystem_pthread.dylib]

Since this is relatively new, you probably should contact him. My guess is its a bug in 5.4 but definitely let him know.

Thank you. He knows but can’t really help unfortunately. I also tried 5.3. same issue. Even if I try to just edit the Blueprint it crashes.

It turns out to be the problem of substrate features: Overview of Substrate Materials in Unreal Engine | Unreal Engine 5.4 Documentation | Epic Developer Community

If you cannot even open the project like me, here is a possible solution: With the project opened on Windows, go to project setting → engine → rendering → disable “substrate materials”. And then copy the project back to Mac.

Thank you Seagull. So are you saying EasySnow is working for you on Mac? Which UE Version? My substrate materials are off and were never on. So it must be something else in my case.