After reading through the docs for both, they seem like the same thing. An event is triggered when an actor overlaps the trigger. The doc for Box Trigger says they can activate events inside the level blueprint but I could do the same thing with a Trigger Volume as well.
Curious about the answer. The best I have seen is that the volumes are more for none interactive triggers, like walking into fire causes you to take damage, trigger actors (trigger box) would be something you can have the player interact with like a light switch.
I know wonder if the available functions are different as well, one is derived from an actor not sure what a volume is derived from.
Also at the most simple level maybe the two are too close but their are a lot of volumes that you could use and easier than building a trigger to handle the same thing.
Other than their inheritence
AActor -> ATriggerBase -> ATriggerBox
AActor -> ABrush -> AVolume -> ATriggerVolume
I’m not entirely sure to be honest. This is what the docs say about them
https://docs.unrealengine.com/en-US/Engine/Actors/Volumes/index.html
https://docs.unrealengine.com/en-US/Engine/Actors/Triggers/index.
The difference should be that you can modify the geometry of the Trigger Volume with the “Geometry Editing” mode, the Box Trigger can be “just a box”
Oh interesting. Thanks for that tidbit.
I just found this post will looking, into exactly what the difference is in these two triggers, it turns out the answer is actually in the difference between ATriggerBase and ABrush.
ATrigerBase, provides a UShapeComponent (https://docs.unrealengine.com/en-US/API/Runtime/Engine/Components/UShapeComponent/index.html) to represent a collision volume, thus you can have the 3 basic collision primitives of Sphere, Capsule and Box used by Unreal, hence these are going to be the most efficient possible (better than using a hidden StaticMesh as a Collision Volume).
ABrush, on the other hand, uses UBrushComponent (https://docs.unrealengine.com/en-US/API/Runtime/Engine/Components/UBrushComponent/index.html) and UBrushBuilder (https://docs.unrealengine.com/en-US/API/Runtime/Engine/Engine/UBrushBuilder/index.html), This provides the basics of the Geometry Brush System (i.e. BSPs). Based on what the documentation says for these it appears that for ATriggerVolume, a set of Convex Meshes will be procedurally generated to represent the Collision Volume. So I expected the cost ends up the same as using BSPs. In theory, depending on exactly how the Brushes are being implemented, Using a Box brush may end up equivalent to indirect use of a Box Shape, but there is nothing in the documentation, that I can find to suggest that this is actually the case.
Base on this I believe it’s generally better to use the Trigger regions, derived from ATriggerBase, where possible.