GetAllActorsOfClass выполняет итерации по хеш-таблице вещей этого класса. Даже с 100 игроками это вряд ли будет очень дорого. Я полагаю, что «получить актеров в frustum» просто сделать это под капотом.
Если вы согласны с его использованием, оттуда вы бы использовали ConvertWorldLocationToScreenLocation и сравнили это с координатами границ экрана с помощью GetViewportSize.
Единственный метод, который не будет использовать GetAllActorsOfClass, который я могу придумать не по себе, - это вычислить размер прямоугольника в «конце» усеченного конуса, используя гигантскую трассировку из нескольких ящиков и фильтрацию на основе точечного произведения. Следы дешевы, точечный продукт дешев. Будет ли он дешевле, чем GetAllActorsOfClass, будет зависеть от вашей игры.
Если производительность действительно является проблемой, лучшим решением будет использование кода. В зависимости от вашей реализации вы можете использовать нативизацию Blueprint, чтобы получить дополнительный импульс, не углубляясь в код.