Adding a Material Parameter collection to a material, setting its value, then saving the material will cause a crash. This was only able to be reproduced on Mac and did not affect the Windows version that I could see. At least not with the same repro steps.
1. Open UE4 on a Mac
2. Create a new Material
3. Create a new Material Parameter Collection
4. Open the Mat Param Collection and set a vector parameter then save
5. Open the Material that was created
6. Add the Mat Param Collection to this material
7. Select the Mat Param and select the Vector parameter from the drop down.
8. Save the material
Freq: 3/3
Results: The editor will crash after a few moments
Expected: The material parameter should not crash the editor when having its value selected.
FMetalRHICommandContext::RHISetShaderUniformBuffer(FRHIPixelShader*, unsigned int, FRHIUniformBuffer*) Address = 0x13f027e3c [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalCommands.cpp, line 384] [in UE4Editor-MetalRHI.dylib]
void FMaterialShader::SetParameters<FRHIPixelShader*>(FRHICommandList&, FRHIPixelShader*, FMaterialRenderProxy const*, FMaterial const&, FSceneView const&, bool, ESceneRenderTargetsMode::Type, bool) Address = 0x1195b60d4 [Runtime/RHI/Public/RHICommandList.h, line 1440] [in UE4Editor-Renderer.dylib]
TBasePassPixelShaderPolicyParamType<FUniformLightMapPolicyShaderParametersType>::SetParameters(FRHICommandList&, FMaterialRenderProxy const*, FMaterial const&, FViewInfo const*, EBlendMode, bool, ESceneRenderTargetsMode::Type, float) Address = 0x118f9e322 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Renderer/Private/BasePassRendering.h, line 540] [in UE4Editor-Renderer.dylib]
TBasePassDrawingPolicy<FUniformLightMapPolicy>::SetSharedState(FRHICommandList&, FViewInfo const*, FMeshDrawingPolicy::ContextDataType, float) const Address = 0x118f9d567 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Renderer/Private/BasePassRendering.h, line 843] [in UE4Editor-Renderer.dylib]
void FDrawBasePassDynamicMeshAction::Process<FUniformLightMapPolicy>(FRHICommandList&, FProcessBasePassMeshParameters const&, FUniformLightMapPolicy const&, FUniformLightMapPolicy::ElementDataType const&) const Address = 0x118f9963b [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Renderer/Private/BasePassRendering.cpp, line 433] [in UE4Editor-Renderer.dylib]
void ProcessBasePassMesh<FDrawBasePassDynamicMeshAction>(FRHICommandList&, FProcessBasePassMeshParameters const&, FDrawBasePassDynamicMeshAction const&) Address = 0x118f3bfdf [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Renderer/Private/BasePassRendering.h, line 1256] [in UE4Editor-Renderer.dylib]
FBasePassOpaqueDrawingPolicyFactory::DrawDynamicMesh(FRHICommandList&, FViewInfo const&, FBasePassOpaqueDrawingPolicyFactory::ContextType, FMeshBatch const&, bool, bool, FPrimitiveSceneProxy const*, FHitProxyId, bool) Address = 0x118ee90bf [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Renderer/Private/BasePassRendering.cpp, line 490] [in UE4Editor-Renderer.dylib]
FRendererModule::DrawTileMesh(FRHICommandListImmediate&, FSceneView const&, FMeshBatch const&, bool, FHitProxyId const&) Address = 0x1194612a4 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Renderer/Private/Renderer.cpp, line 83] [in UE4Editor-Renderer.dylib]
FTileRenderer::DrawTile(FRHICommandListImmediate&, FSceneView const&, FMaterialRenderProxy const*, bool, float, float, float, float, float, float, float, float, bool, FHitProxyId, FColor) Address = 0x10d643ff0 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Engine/Private/TileRendering.cpp, line 177] [in UE4Editor-Engine.dylib]
FCanvasTileRendererItem::Render_RenderThread(FRHICommandListImmediate&, FCanvas const*) Address = 0x10d644ce9 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Engine/Private/TileRendering.cpp, line 244] [in UE4Editor-Engine.dylib]
FCanvas::Flush_RenderThread(FRHICommandListImmediate&, bool) Address = 0x10d75fbc2 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Engine/Private/UserInterface/Canvas.cpp, line 681] [in UE4Editor-Engine.dylib]
FPreviewElement::DrawRenderThread(FRHICommandListImmediate&, void const*) Address = 0x11db6f4fa (filename not found) [in UE4Editor-GraphEditor.dylib]
FSlateRHIRenderingPolicy::DrawElements(FRHICommandListImmediate&, FSlateBackBuffer&, FMatrix const&, TArray<FSlateRenderBatch, FDefaultAllocator> const&, bool) Address = 0x12cd939e7 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/SlateRHIRenderer/Private/SlateRHIRenderingPolicy.cpp, line 649] [in UE4Editor-SlateRHIRenderer.dylib]
FSlateRHIRenderer::DrawWindow_RenderThread(FRHICommandListImmediate&, FSlateRHIRenderer::FViewportInfo const&, FSlateWindowElementList&, bool, bool) Address = 0x12cd798e6 [Runtime/Engine/Public/UnrealClient.h, line 32] [in UE4Editor-SlateRHIRenderer.dylib]
TGraphTask<FSlateRHIRenderer::DrawWindows_Private(FSlateDrawBuffer&)::EURCMacro_SlateDrawWindowsCommand>::ExecuteTask(TArray<FBaseGraphTask*, FDefaultAllocator>&, ENamedThreads::Type) Address = 0x12cdab837 [Runtime/Core/Public/Stats/Stats2.h, line 1537] [in UE4Editor-SlateRHIRenderer.dylib]
FNamedTaskThread::ProcessTasksNamedThread(int, bool) Address = 0x10a61ead0 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Core/Private/Async/TaskGraph.cpp, line 259] [in UE4Editor-Core.dylib]
FNamedTaskThread::ProcessTasksUntilQuit(int) Address = 0x10a61a4d5 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Core/Private/GenericPlatform/GenericPlatformProcess.cpp, line 498] [in UE4Editor-Core.dylib]
FTaskGraphImplementation::ProcessThreadUntilRequestReturn(ENamedThreads::Type) Address = 0x10a616a91 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Core/Private/Async/TaskGraph.cpp, line 1725] [in UE4Editor-Core.dylib]
RenderingThreadMain(FEvent*) Address = 0x11109eea4 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/RenderCore/Private/RenderingThread.cpp, line 319] [in UE4Editor-RenderCore.dylib]
FRenderingThread::Run() Address = 0x1110b57e7 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/RenderCore/Private/RenderingThread.cpp, line 459] [in UE4Editor-RenderCore.dylib]
FRunnableThreadPThread::Run() Address = 0x10a66e548 [/Users/build/Build/++UE4+Release-4.12+Compile/Sync/Engine/Source/Runtime/Core/Private/HAL/PThreadRunnableThread.cpp, line 26] [in UE4Editor-Core.dylib]
FRunnableThreadPThread::_ThreadProc(void*) Address = 0x10a630621 [Runtime/Core/Private/GenericPlatform/../HAL/PThreadRunnableThread.h, line 172] [in UE4Editor-Core.dylib]
_pthread_body Address = 0x7fff831c199d (filename not found) [in libsystem_pthread.dylib]
_pthread_body Address = 0x7fff831c191a (filename not found) [in libsystem_pthread.dylib]
thread_start Address = 0x7fff831bf351 (filename not found) [in libsystem_pthread.dylib]
Head over to the existing Questions & Answers thread and let us know what's up.
1 |
Component | UE - Graphics Features |
---|---|
Affects Versions | 4.11.0, 4.12 |
Target Fix | 4.12 |
Created | May 2, 2016 |
---|---|
Resolved | May 16, 2016 |
Updated | May 2, 2018 |