You are doing a trace every tick, is it important that every single tick hits the landscape? I mean what if you just try to ignore those blank results or if you get a blank result try to do a second trace with a slightly offset X,Y position as target?