Description
Steps to Reproduce
  1. Create a basic FPS project with the following options:
    C++, Scalable 3D or 2D, Raytracing Disabled, Desktop/Console, With Starter Content
  2. Build and run the resulting project from Xcode.
  3. Go to File > New Level...
  4. Select VR-Basic

Metal API validation triggers an assertion:

validateAttachmentOnDevice:522: failed assertion `Slice is 5, but the texture has only 1 slices'
Callstack
    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

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-90721 in the post.

0
Login to Vote

Cannot Reproduce
ComponentUE - Platform - Apple
Affects Versions4.24
Target Fix4.25
CreatedMar 16, 2020
ResolvedMar 31, 2020
UpdatedApr 15, 2020
View Jira Issue