Perform Checklist for OnScreen Objects 0
^ This is your new Best Friend of a Function ^
It's not amazingly "Fast" per se, but it'll be quicker than performing the same in DBP itself (and if you want to know by how much, I have an on-going thread in the AppGameKit Studio Forum showcasing the performance gulf between AGK-S, DBP and C++)
This will dramatically reduce the overall Object List... the Results of which are output to the Checklist Functions.
You can actually dramatically increase this by Decreasing the Size of the Camera View (Set Camera View Left, Top, Right, Bottom) to being as small as you feel comfortable with.
So if for example you set it to say:
ScreenWidth = Int( Screen Width( ) * 0.5 )
ScreenHeight = Int( Screen Height( ) * 0.5 )
Set Camera View OffscreenCamID, ScreenWidth - 4, ScreenHeight - 4, ScreenWidth + 4, ScreenHeight + 4
Set Current Camera OffscreenCamID
Then perform the Checklist ... you'll have far fewer Objects to Compare.
Now you will typically have more than 1 Object that will be "Dead Centre" ... so you'll still need compare their World Positions against where the Camera is looking at in the World., but doing this on say half a dozen Objects as opposed to thousands or tens of thousands; is going to be much quicker.
Remember performance optimisation typically will stem from Culling needless Calculations from occurring.