Description

The project was built in Unreal 4.27.2 binary from the Epic Games Launcher. At this stage we have only observed the crash on devices with a hardware combination of Apple A9 1.8 GHz and 2GB of Memory. Devices in this class that have recorded repro include the iPhone 6s and iPad 5th Gen.

Steps to Reproduce

The issue will occur on lower end iOS devices (e.g. iPhone 6s) when backgrounding and foregrounding the app during the play of several of our cinematic sequences.

Callstack

2023-02-16 15:43:49.784461+1000 MLP[77399:3627342] Execution of the command buffer was aborted due to an error during execution. Too much geometry to support memoryless render pass attachments. (0000000d:kIOGPUCommandBufferCallbackErrorOutOfMemoryForParameterBuffer)
2023-02-16 15:43:49.784705+1000 MLP[77399:3627342] Execution of the command buffer was aborted due to an error during execution. Too much geometry to support memoryless render pass attachments. (0000000d:kIOGPUCommandBufferCallbackErrorOutOfMemoryForParameterBuffer)
In addition to the following stack trace, containing a command buffer error completion code for MTLCommandBufferErrorMemoryless:
#0 0x0000000104a623bc in FIOSPlatformMisc::GPUAssert() at /Users/localadmin/Unreal/engine/source/Engine/Source/Runtime/Core/Private/IOS/IOSPlatformMisc.cpp:1666
#1 0x0000000104696c98 in ReportMetalCommandBufferFailure(mtlpp::CommandBuffer const&, char16_t const*, bool) at /Users/localadmin/Unreal/engine/source/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalCommandList.cpp:174
#2 0x0000000104696000 in HandleMetalCommandBufferError(mtlpp::CommandBuffer const&) at /Users/localadmin/Unreal/engine/source/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalCommandList.cpp:247
#3 0x0000000104695e4c in FMetalCommandList::HandleMetalCommandBufferFailure(mtlpp::CommandBuffer const&) at /Users/localadmin/Unreal/engine/source/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalCommandList.cpp:285
#4 0x000000010469704c in FMetalCommandList::Commit(mtlpp::CommandBuffer&, TArray<ns::Object<void (mtlpp::CommandBuffer const&) block_pointer, (ns::CallingConvention)1>, TSizedDefaultAllocator<32> >, bool, bool)::$_19::operator()(mtlpp::CommandBuffer const&) const at /Users/localadmin/Unreal/engine/source/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalCommandList.cpp:323
#5 0x0000000104697008 in invocation function for block in FMetalCommandList::Commit(mtlpp::CommandBuffer&, TArray<ns::Object<void (mtlpp::CommandBuffer const&) block_pointer, (ns::CallingConvention)1>, TSizedDefaultAllocator<32> >, bool, bool) at /Users/localadmin/Unreal/engine/source/Engine/Source/Runtime/Apple/MetalRHI/Private/MetalCommandList.cpp:319

Have Comments or More Details?

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

1
Login to Vote

Fixed
ComponentUE - Platform - Mobile
Affects Versions4.27.2
Target Fix5.3
Fix Commit25714869
Main Commit25714869
CreatedMay 11, 2023
ResolvedJul 27, 2023
UpdatedAug 17, 2023