Occlusion in Unity and Unreal are achieved in the same way: Define a specific parameter for your events that will be used to control events’ occlusion behavior, build occlusion behavior into all the events you want to be occlude-able by using that parameter to automate effect properties or trigger instruments, use ray casting within your game engine to calculate the values to which that parameter should be set, and the the parameter’s value accordingly.
Unreal differs from Unity only in that it provides a field for specifying the name of the parameter to be used for occlusion, as a convenience feature.
For information on how to perform ray casting within your engine of choice, see that engine’s documentation.