Unreal Engine 5, Niagara Read/Write to RT same frame?

I’m trying to make this shader sim inside Unreal Engine using Niagara.

I managed to get it working by implementing the shader code in a custom HLSL node and saving the results from 1 RT to a second RT and running the same logic in a second stage but flipping RT 1 and 2 around.

However, I think the solution itself is designed to work with one buffer or rather one RT since it uses channels R and G in replacement of two buffers.

But trying to do it with one RT in Niagara doesn’t work. I just see a green dot, no fluid sim.

Anyone know what may be going wrong?

Pretty sure Niagara compute has protections in place to stop users from reading and writing to the same buffer, since that could cause some wacky stuff.

I wasn’t getting the ensure until after an editor restart.
Now I’m aware of the issue but I learned that it shouldn’t be an issue as long as you are doing it on the same pixel so I may be able to get away with it?

Otherwise I guess I’m forced to use a Grid2D.