The reason for the crash is that the underlying resource uses DXGI_FORMAT_B8G8R8A8_TYPELESS, and UAV support for that format is optional. UCanvasRenderTarget2D sets bCanCreateUAV to true always, without checking RHIIsTypedUAVLoadSupported() for the format. It does this because it might need to generate mips for the texture, and sometimes this uses a compute shader.
What should happen instead is that we don't request UAV creation if the card can't do UAVs for the format, and mip generation should be forced to use the raster path if there's no UAV. UCanvasRenderTarget2D shouldn't deal with any of this, it should be moved to the base class (UTextureRenderTarget2D) if possible.
Original bug report came from this UDN: [Link Removed]
[Image Removed]
The error report came from a machine running Win10 1607 (old!) on an Nvidia GTX 1060. No information about driver version.
How does TextureRenderTarget2D get TArray<uint8> type data?
Why does the REMOVE method of map container remove elements have memory leaks?
What is the cause of the packaging error falling back to 'GameUserSettings' in ue5?
How do I set a material as a post-processing material?
How to delete some elements correctly when deleting an array loop?
What is the difference between Camera and CineCamera?
What controls of umg have mouse wheel events in UE4.27?
How to assign a value to a member of UMG's UMaterialInterface pointer type in C++?
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-114254 in the post.
2 |
Component | UE - Graphics Features |
---|---|
Affects Versions | 4.26 |
Target Fix | 5.0 |
Created | Apr 26, 2021 |
---|---|
Resolved | Dec 16, 2021 |
Updated | Jan 26, 2023 |