Hi!
I use the render target. I want to achieve a smooth tail fade.
I use the current RT and the previous one. I write the tracked object to the current one. I’m overwriting the previous one (Pre_RT) using the Pre_RT+RT material.
But in version 5.5 I don’t get the expected result. I just get a copy of RT. Although the same logic works in 5.3.
What changed in 5.5? How do I fix this?
I realized that the problem wasn’t with the engine version. The problem was due to the directx version. For some reason, the render target works differently on 11 than on 12. Does anyone know why?
Hi @Pocta_v_tanke,
While I’m no expert, this appears to be due to DX12’s more strict ruling when it comes to the handling of graphical resources, since it reintroduces a more low-level approach that requires you to handle all of your rendering resources manually, as opposed to DX11 which mostly handled all of that work.
All of this new work is handled by the engine, but I imagine it makes it more prone to engine-specific bugs. One of these being the one you encountered. Likely, it can not factor for a single texture being read from and wrote to in the same draw- since it seems like Unreal does not have the code to force the unloading and reloading of the same texture. Because this process is failing, the texture is simply reverting to its previous state.
Adding in another temporary render target to explicitly hold this new fade information should solve this issue, since any new information will be written here and then transferred over to the final texture.