This was discovered externally and reported on UDN here:
https://udn.unrealengine.com/questions/563268/mac-editor-crash-when-disable-ambient-occlusion.html
Metal API validation triggers an assertion:
validateAttachmentOnDevice:522: failed assertion `Slice is 5, but the texture has only 1 slices'
frame #0: 0x00007fff73b5e7fa libsystem_kernel.dylib`__pthread_kill + 10 frame #1: 0x0000000116f5b719 libsystem_pthread.dylib`pthread_kill + 432 frame #2: 0x00007fff73ae5a1c libsystem_c.dylib`abort + 120 frame #3: 0x00007fff73ae4cd6 libsystem_c.dylib`__assert_rtn + 314 frame #4: 0x00007fff41949c19 Metal`MTLReportFailure.cold.2 + 43 frame #5: 0x00007fff4193cc35 Metal`MTLReportFailure + 526 frame #6: 0x00007fff624c54a8 MetalTools`validateAttachmentOnDevice(id<MTLDevice>, MTLRenderPassAttachmentDescriptorPrivate const*, _MTLRenderPassAttachmentIndex, unsigned long*, unsigned long, bool&, unsigned long*, bool) + 2047 frame #7: 0x00007fff624c21b3 MetalTools`validateRenderPassDescriptor(MTLRenderPassDescriptorInternal*, id<MTLDevice>, std::__1::unordered_multiset<AttachmentDescriptorSimple, std::__1::unordered_multiset::hash_t, std::__1::unordered_multiset::equal_t, id<MTLDevice>::allocator<std::__1::unordered_multiset> >&, id<MTLDevice>::array<std::__1::unordered_multiset, 8ul>&, id<MTLDevice>::array<std::__1::unordered_multiset, 8ul>) + 661 frame #8: 0x00007fff624c1d44 MetalTools`-[MTLDebugCommandBuffer renderCommandEncoderWithDescriptor:] + 206 * frame #9: 0x000000017e17d369 UE4Editor-MetalRHI-Mac-Debug.dylib`mtlpp::CommandBuffer::RenderCommandEncoder(mtlpp::RenderPassDescriptor const&) [inlined] SelectorCache<id<MTLCommandBuffer>, id<MTLRenderCommandEncoder>, MTLRenderPassDescriptor*>::operator(this=<unavailable>, Object=<unavailable>, Parameters=<unavailable>)(objc_object<MTLCommandBuffer>, id<MTLRenderCommandEncoder>) const at imp_SelectorCache.hpp:48:10 [opt] frame #10: 0x000000017e17d35c UE4Editor-MetalRHI-Mac-Debug.dylib`mtlpp::CommandBuffer::RenderCommandEncoder(this=0x00000001cde88a18, renderPassDescriptor=<unavailable>) at command_buffer.mm:357 [opt] frame #11: 0x000000017e1a8e96 UE4Editor-MetalRHI-Mac-Debug.dylib`FMetalCommandEncoder::BeginRenderCommandEncoding(this=0x00000001cde84288) at MetalCommandEncoder.cpp:602:26 frame #12: 0x000000017e29e47b UE4Editor-MetalRHI-Mac-Debug.dylib`FMetalRenderPass::BeginRenderPass(this=0x00000001cde841f0, RenderPass=RenderPassDescriptor @ 0x0000700029494538) at MetalRenderPass.cpp:251:18 frame #13: 0x000000017e1bacdf UE4Editor-MetalRHI-Mac-Debug.dylib`FMetalContext::SetRenderPassInfo(this=0x00000001cde750c0, RenderTargetsInfo=0x00007000294949c0, bRestart=false) at MetalContext.cpp:1481:15 frame #14: 0x000000017e2c704d UE4Editor-MetalRHI-Mac-Debug.dylib`FMetalRHICommandContext::RHIBeginRenderPass(this=0x00000001cb555058, InInfo=0x00007000294949c0, InName=u"ClearVolumeTextures") at MetalRHIContext.cpp:177:12 frame #15: 0x00000001041340c7 UE4Editor-Engine-Mac-Debug.dylib`FRHICommandList::BeginRenderPass(this=0x000000010e55b4e0, InInfo=0x00007000294949c0, Name=u"ClearVolumeTextures") at RHICommandList.h:3047:17 frame #16: 0x00000001226cbeef UE4Editor-Renderer-Mac-Debug.dylib`void FSceneRenderTargets::ClearVolumeTextures<6>(RHICmdList=0x000000010e55b4e0, FeatureLevel=SM5, RenderTargets=0x0000700029494cd0, ClearColors=0x0000000122c674a0) at SceneRenderTargets.cpp:2595:13 frame #17: 0x00000001226cbda2 UE4Editor-Renderer-Mac-Debug.dylib`FSceneRenderTargets::ClearTranslucentVolumeLighting(this=0x0000000122c67070, RHICmdList=0x000000010e55b4e0, ViewIndex=0) at SceneRenderTargets.cpp:2577:4 frame #18: 0x0000000122995144 UE4Editor-Renderer-Mac-Debug.dylib`FDeferredShadingSceneRenderer::ClearTranslucentVolumeLighting(this=0x000000021c157c00, RHICmdList=0x000000010e55b4e0, ViewIndex=0) at TranslucentLighting.cpp:924:16 frame #19: 0x00000001222e46d7 UE4Editor-Renderer-Mac-Debug.dylib`FDeferredShadingSceneRenderer::Render(this=0x000000021c157c00, RHICmdList=0x000000010e55b4e0) at DeferredShadingRenderer.cpp:1996:5 frame #20: 0x000000012273f896 UE4Editor-Renderer-Mac-Debug.dylib`CaptureSceneToScratchCubemap(RHICmdList=0x000000010e55b4e0, SceneRenderer=0x000000021c157c00, CubeFace=CubeFace_PosX, CubemapSize=128, bCapturingForSkyLight=true, bLowerHemisphereIsBlack=true, LowerHemisphereColor=0x00000001ef6b0bac) at ReflectionEnvironmentCapture.cpp:771:18 frame #21: 0x0000000122763ac0 UE4Editor-Renderer-Mac-Debug.dylib`CaptureSceneIntoScratchCubemap(this=0x00000001ef6b0b98, RHICmdList=0x000000010e55b4e0)::$_19::operator()(FRHICommandListImmediate&) const at ReflectionEnvironmentCapture.cpp:1420:5 frame #22: 0x0000000122763d27 UE4Editor-Renderer-Mac-Debug.dylib`TEnqueueUniqueRenderCommandType<CaptureSceneIntoScratchCubemap(FScene*, FVector, int, bool, bool, float, bool, bool, FLinearColor const&)::CaptureCommandName, CaptureSceneIntoScratchCubemap(FScene*, FVector, int, bool, bool, float, bool, bool, FLinearColor const&)::$_19>::DoTask(this=0x00000001ef6b0b98, CurrentThread=ActualRenderingThread, MyCompletionGraphEvent=0x00000001ef6b0bc8) at RenderingThread.h:198:3 frame #23: 0x0000000122763fad UE4Editor-Renderer-Mac-Debug.dylib`TGraphTask<TEnqueueUniqueRenderCommandType<CaptureSceneIntoScratchCubemap(FScene*, FVector, int, bool, bool, float, bool, bool, FLinearColor const&)::CaptureCommandName, CaptureSceneIntoScratchCubemap(FScene*, FVector, int, bool, bool, float, bool, bool, FLinearColor const&)::$_19> >::ExecuteTask(this=0x00000001ef6b0b80, NewTasks=size=0, CurrentThread=ActualRenderingThread) at TaskGraphInterfaces.h:847:9 frame #24: 0x00000001007e4282 UE4Editor-Core-Mac-Debug.dylib`FBaseGraphTask::Execute(this=0x00000001ef6b0b80, NewTasks=size=0, CurrentThread=ActualRenderingThread) at TaskGraphInterfaces.h:514:3 frame #25: 0x00000001007e68e0 UE4Editor-Core-Mac-Debug.dylib`FNamedTaskThread::ProcessTasksNamedThread(this=0x00000001632a9d00, QueueIndex=0, bAllowStall=true) at TaskGraph.cpp:686:11 frame #26: 0x00000001007e5e3a UE4Editor-Core-Mac-Debug.dylib`FNamedTaskThread::ProcessTasksUntilQuit(this=0x00000001632a9d00, QueueIndex=0) at TaskGraph.cpp:582:4 frame #27: 0x00000001007e2292 UE4Editor-Core-Mac-Debug.dylib`FTaskGraphImplementation::ProcessThreadUntilRequestReturn(this=0x00000001632c7040, CurrentThread=ActualRenderingThread) at TaskGraph.cpp:1414:25 frame #28: 0x000000010dd92d52 UE4Editor-RenderCore-Mac-Debug.dylib`RenderingThreadMain(TaskGraphBoundSyncEvent=0x00000001d6a5fda0) at RenderingThread.cpp:339:29 frame #29: 0x000000010de18c1b UE4Editor-RenderCore-Mac-Debug.dylib`FRenderingThread::Run(this=0x00000001d6a5fec0) at RenderingThread.cpp:488:4 frame #30: 0x00000001008d5cc8 UE4Editor-Core-Mac-Debug.dylib`FRunnableThreadPThread::Run(this=0x00000001f6aea2c0) at PThreadRunnableThread.cpp:25:24 frame #31: 0x000000010087fe5e UE4Editor-Core-Mac-Debug.dylib`FRunnableThreadPThread::_ThreadProc(pThis=0x00000001f6aea2c0) at PThreadRunnableThread.h:177:15 frame #32: 0x0000000116f5b9bd libsystem_pthread.dylib`_pthread_start + 148 frame #33: 0x0000000116f5716b libsystem_pthread.dylib`thread_start + 15
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-90721 in the post.
0 |
Component | UE - Platform - Apple |
---|---|
Affects Versions | 4.24 |
Target Fix | 4.25 |
Created | Mar 16, 2020 |
---|---|
Resolved | Mar 31, 2020 |
Updated | Apr 15, 2020 |