I like how you did this. Excellent use of the recurseTreeWithOperation() for a more complex task. Yippee!

My only feedback would be related to the output parameters. I think you could also make node, t, and found in this parameter RayArgs class use references to make it more clear.