Lidar Interaction Scheme for Rain and Snow

I would like to design a simulation solution for the interaction between rain/snow and a LiDAR sensor. To achieve this, I need point cloud data in which the LiDAR signal is obstructed by rain or snow. Are there any technical solutions available for me to study or reference?

Typically, rain and snow detection employs Niagara particles, whereas LiDAR uses raycasting; can these two methods not detect each other?

Yes, they can interact, but not automatically: a raycast-based LiDAR only sees physics/collision geometry, and Niagara particles (especially GPU ones) have no collision shapes the line trace can hit. So you have to bridge the two yourself. Some options:

  1. Statistical approach (most common for sensor simulation): keep the line trace, but for each ray sample the precipitation density along its length and randomly drop the return or shorten it (a “false near return”) with a probability based on rain rate/snowfall and distance, using an attenuation model like Beer-Lambert. This is cheap and scales to many rays.
  2. Explicit particles: if you need individual flakes/drops to block rays, make them real data on the CPU side. For example spawn a limited number of pooled actors/instanced meshes with simple sphere collision around the sensor (only within its range), and trace with a channel that those collide with. GPU Niagara particles can’t be hit by traces, so use CPU particles with collision or drive instances from your own array.
  3. Render-based: if you use a depth-based LiDAR (SceneCapture depth), the particles that write depth/translucency will not show up unless they are opaque, so you’d render the rain as opaque depth-writing sprites in the capture only.

For a first prototype I’d start with option 1 and compare the point cloud against your target sensor’s noise characteristics, then move to option 2 only if you need exact per-particle occlusion. Hope that helps!