I have the pathfinding working great now. I implemented this: http://www.red3d.com/cwr/steer/PathFollow.html pretty much verbatim.
I want to combine it with some kind of obstacle avoidance. This:
http://www.red3d.com/cwr/steer/Obstacle.html or preferably this:
http://www.red3d.com/cwr/steer/Containment.html would be great.
However, I don't have access to the same data. I can raycast into the scene or selections of it, and read the normal, position, object etc. from the hit, but that's pretty much it.
The "Obstacle" algorithm in the links use the center of the objects, which I guess would work fine for circles, but I use mostly boxes. The "Containment" algorithm use a general interface where it query the wall for the nearest-point-on-surface. I don't have that available in my engine (Unity), and I don't think it's feasible to implement it as a script. It also seems to work best with rounded corners.
Any other ideas?